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

Bases de données Delphi Discussion :

[FireBird] Refrech apres un post.


Sujet :

Bases de données Delphi

  1. #1
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut [FireBird] Refrech apres un post.
    salut j'ai utilisé les composant UIB dans mon application

    bon après un post mon composant appel automatiquement un refrech. avec le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM MaTable WHERE NUM = :NUM
    comme mon code est un champs AutoInc (générateur+Trigger) alors j'ai pas encore sa valeur au moment du post alors le refrech ne marche pas il me faut fermé et réouvrir ma table pour obtenir toutes les mis ajour. comment remédier a ce problème.

    et merci d'avance

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 042
    Points : 40 952
    Points
    40 952
    Billets dans le blog
    62
    Par défaut
    comme tu le sais j'utilise plutôt FIB+ mais ...
    une piste y-a t'il un commit entre le post et le refresh
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  3. #3
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    oui l'appel un commit dans l'évènement after post.

  4. #4
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    je suis entrain de réfléchir pour passer a FIB Plus, ce qui ma attiré chez UIB c'est qu'il génère automatiquement le code SQL des l'évènement ce qui n'est pas le FIBplus 1.45. sinon je vais générer le code avec UBI et le coller dans FIB+

  5. #5
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 042
    Points : 40 952
    Points
    40 952
    Billets dans le blog
    62
    Par défaut
    Citation Envoyé par aityahia
    jc'est qu'il génère automatiquement le code SQL des l'évènement ce qui n'est pas le FIBplus 1.45
    je comprends pas ?? avec FIB un clic droit sur le composant te propose le SQLGenerator (version 6.45 plutot )
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  6. #6
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    j'ai pas installer les éditeur et les outils maintenant c'est bon.

  7. #7
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    c'est le même problème avec FIBPlus j'ai mis autoComit a True et toujour le mem problème, j'ai ensuite essayer avec ce code dans l'évènement AfterPost.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     Try
        pFIBTransaction1.CommitRetaining;
      except
        pFIBTransaction1.Rollback;
        raise;
      end;
    mon Trigger et dans l'enlèvement Before Insert.

    quand j'active la propriété autoincrement dans AutoUpdateOptions sa marche est ce normal.
    j'ai peur d'avoir des conflits avec mon trigger parce je présume que c'est option sont faite pour le cas ou je n'est pas de trigger mais uniquement le générateur..

  8. #8
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 042
    Points : 40 952
    Points
    40 952
    Billets dans le blog
    62
    Par défaut
    bonjour

    je suis encore "jeune" avec les FIB+ et pour l'instant je n'ai jamais utiliser de champs autoinc . à Vrai dire même avec IB je n'utilise pas de champs autoinc
    est-ce parce que je suis de la "vieille école" , un "mauvais analyste" ou que je n'ai pas confiance à l'utilisateur final je vous laisse juge .

    des pistes de travail pour ton problème :

    as-tu remis en cause le trigger de ta base ?
    fait un test en SQL via IBEasy ou autre ?
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  9. #9
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    je remercie énormément, mon trigger fonctionne correctement, car il suffit que je lance une autres requête sur ma tables et j'ai tous mes enregistrement mais par contre sur la table elle même qui a fait l'ajout il faut la fermer et la réouvrir pour avoir les enregistrement a jour.

  10. #10
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 042
    Points : 40 952
    Points
    40 952
    Billets dans le blog
    62
    Par défaut
    le REFRESH de ta table est bien renseigné ?
    un code un peu plus complet me serait utile pour comprendre
    (select, insert, refresh de la table dans le compo)
    +la partie incriminée du programme
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  11. #11
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    Refrech Code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    SELECT
        NUM,
        DESIGNATION,
        ADRESSE,
        FAX,
        TEL,
        VILLE,
        WILAYA,
        MODIFIER_LE,
        MODIFIER_PAR,
        CREER_LE,
        CREER_PAR
    FROM
        AGENCE_BANCAIRE 
     
     WHERE 
            AGENCE_BANCAIRE.NUM = :OLD_NUM
    Insert Code.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    INSERT INTO AGENCE_BANCAIRE(
        NUM,
        DESIGNATION,
        ADRESSE,
        FAX,
        TEL,
        VILLE,
        WILAYA,
        MODIFIER_LE,
        MODIFIER_PAR,
        CREER_LE,
        CREER_PAR
    )
    VALUES(
        :NUM,
        :DESIGNATION,
        :ADRESSE,
        :FAX,
        :TEL,
        :VILLE,
        :WILAYA,
        :MODIFIER_LE,
        :MODIFIER_PAR,
        :CREER_LE,
        :CREER_PAR
    )
    bon j'ai essayer de supprimer le NUM dans l'insertion (vue qu'il est affecté par un trigger) et toujours le mêmes.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    INSERT INTO AGENCE_BANCAIRE(
        DESIGNATION,
        ADRESSE,
        FAX,
        TEL,
        VILLE,
        WILAYA,
        MODIFIER_LE,
        MODIFIER_PAR,
        CREER_LE,
        CREER_PAR
    )
    VALUES(
        :DESIGNATION,
        :ADRESSE,
        :FAX,
        :TEL,
        :VILLE,
        :WILAYA,
        :MODIFIER_LE,
        :MODIFIER_PAR,
        :CREER_LE,
        :CREER_PAR
    )

  12. #12
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 042
    Points : 40 952
    Points
    40 952
    Billets dans le blog
    62
    Par défaut
    une autre piste :

    en relisant les docs de FIB+ je suis tombé sur ceci

    Citation Envoyé par devguide1.pdf
    How to get generator values
    Use the following method to get generator values:
    function Gen_Id(const GeneratorName: string; Step: Int64; aTransaction:
    TFIBTransaction = nil): Int64;
    Devrace fourni également un exemple FB20InsertReturning , le seul à traiter d'un générateur , je n'en ai pas encore compris l'objectif , mais c'est à étudier

    autre lien très utile
    http://www.devrace.com/en/fibplus/articles/1325.php
    je pense que là est ta solution
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  13. #13
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    je te remercie sergio dans le support de FIBPlus c'est ecrit

    Thus if any record fields have been changed in database triggers, we will not see these changes before complete reopening of the query. But...
    ce qui répond a ma question.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PDO] la perte de la connection LDAP après un POST
    Par adel.87 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 25/03/2008, 09h15
  2. Réponses: 4
    Dernier message: 17/04/2007, 15h24
  3. [HTTPClient] Paramètre non retrouvé aprés un POST
    Par MrEddy dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 16/02/2007, 10h32
  4. Déployer Firebird sur un seul poste
    Par bassim dans le forum Installation
    Réponses: 1
    Dernier message: 28/12/2006, 11h11
  5. Recuperer info apres un post
    Par Dargos dans le forum Langage
    Réponses: 7
    Dernier message: 21/06/2006, 12h10

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