IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Oracle Discussion :

[FORMS]Could not reserve record (2tries) keep trying?Kesako


Sujet :

Oracle

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    422
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2004
    Messages : 422
    Points : 201
    Points
    201
    Par défaut [FORMS]Could not reserve record (2tries) keep trying?Kesako
    Bonjour,

    Lors d'un delete d'un enregistrement dans mon formulaires fait avec Forms6i et généré par designer 6i, en runtime j'obtiens le message suivant :

    Could nor reserve record( 2 tries ) Keep Trying ? Qu'est ce que cela signifie ?
    Il n'y a pas d'autre personne qui travaille sur l'enregistrement en question qui pose le problème.

    Que dois je faire pour résoudre le problème ?

    merci.

  2. #2
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    L'enregistrement est verrouillé dans une autre session. peut-être Toad ou Sql*Plus...

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    422
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2004
    Messages : 422
    Points : 201
    Points
    201
    Par défaut
    Ben non figure toi.

    C'est ce qui me trouble

  4. #4
    Expert éminent sénior
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Points : 11 862
    Points
    11 862
    Par défaut
    Peut-être un UPDATE manuel quelque part dans le module Forms ?

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 138
    Points : 166
    Points
    166
    Par défaut [FORMS]Could not reserve record (2tries) keep trying
    Ce message est très clair, c'est à dire qu'il dit que FORMS ne réussi pas à verrouiller l'enregistrement TEL QU'IL EST DANS LE BLOC.

    Une des causes possible est qu'effectivement, l'enregistrement en question est bel et bien verrouillé par une autre session, ce qui ne semble pas être votre cas.

    Une autre cause possible est que, par exemple, un des champs basé sur la table/vue de votre bloc change au moment d'une commande insert ou update.

    Je m'explique. Si vous avez une colonne date_modification dans votre table/vue et qu'un champ CACHÉ de votre bloc soit basé sur cette colonne. Lors de l'insertion, ce champ est alimenté par un trigger qui y inscrit la date du jour. FORMS n'est JAMAIS informé de cette modification. Si vous insérez un enregistrement via FORMS, il vous dira que la transaction s'est exécutée avec succès, mais si vous essayer de modifier l'enregistrement par la suite, vous aurez ce message. Une simple ré-exécution de la recherche dans FORMS et le problème est résolu.

    Ce comportement est causé du fait que FORMS essaie de verrouiller l'enregistrement lors d'un UPDATE/DELETE. Pour ce faire, il fait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    SELECT [tous les champs du blocs]
      FROM [table sur laquelle le bloc est basé]
     WHERE [PK du bloc = PK de la table]
       AND date_modification = database_value(:bloc.date_modification)
    Comme le champ est null dans FORMS et a été alimenté par le trigger dans la BD, FORMS n'est pas informé de cette modification et ne peut donc pas y pallier.

    Une des choses à faire pour régler ce problème est par exemple, mettre la propriété VALEUR DE RETOUR DML (DML RETURNING VALUE) à oui. Il y a également d'autre solutions mais moins rapides à implémenter...

    En espérant répondre à votre demande

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    422
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2004
    Messages : 422
    Points : 201
    Points
    201
    Par défaut
    effectivement j'ai une colonne date avec un default sysdate.

    je vais piocher sur ce cas et voir si c'est le problème.

    merci

    je vous donnerai un feedback.

Discussions similaires

  1. Réponses: 6
    Dernier message: 26/08/2011, 13h30
  2. could not reserve enough space
    Par khaoula_14_05 dans le forum Développement Web en Java
    Réponses: 5
    Dernier message: 08/05/2009, 14h01
  3. Could not reserve enough space for object heap
    Par zerocoolyoussef dans le forum Développement de jobs
    Réponses: 2
    Dernier message: 03/05/2009, 20h13
  4. Could not reserve enough space for object heap
    Par lestathor dans le forum Tomcat et TomEE
    Réponses: 5
    Dernier message: 30/10/2007, 17h35
  5. [Hibernate] "could not resolve property" sur un tri
    Par Gorou dans le forum Hibernate
    Réponses: 1
    Dernier message: 13/07/2007, 12h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo