Enregistrement maitre detail [Résolu]

moh_barid 4 Messages postés samedi 21 juin 2014Date d'inscription 29 décembre 2014 Dernière intervention - 23 déc. 2014 à 12:26 - Dernière réponse : moh_barid 4 Messages postés samedi 21 juin 2014Date d'inscription 29 décembre 2014 Dernière intervention
- 29 déc. 2014 à 09:59
Bonjour;
Je programme en Delphi avec SGBD Firebird

J'ai 2 tables
BANK (BNK_ID_BNK, BNK_NOM);
AGENCE (AGE_ID_AGE, AGE_ID_BNK, AGE_ADR);
avec la contrainte: une banque doit toujours avoir au moins une agence
Sur une seule fiche en haut les champs de la banque et en bas un dbgrid pour les agences bancaires de la banque

comment obliger un utilisateur à saisir une agence pour une banque nouvellement créée de telle sorte la banque insérée ne soit pas sans aucune agence
J'ai essayé de travailler avec les transactions mais je n'y ai pas pervenu.
Afficher la suite 

2 réponses

Répondre au sujet
pierrotk10d 101 Messages postés mardi 13 novembre 2007Date d'inscription 16 mars 2018 Dernière intervention - 25 déc. 2014 à 21:29
0
Utile
1
Bonjour,
Les deux tables sont en relation par BANK_ID_BNK et AGE_ID_BNK je pense.
Une fois la création de la banque faite tu peux utiliser l'évènement AfterPost de la table BANK pour ajouter dans le champ AGE_ID_BNK de la table AGENCE la valeur contenu dans le champ BANK_ID_BNK de la table BANK

With Table.AGENCE do begin
Append;
FieldByName('AGE_ID_BNK'). AsInteger := Table.BANK.FieldByName('BANK_ID_BNK').AsInteger;
Post;
End;

Ensuite à toi de completer les autres champs de la table AGENCE
moh_barid 4 Messages postés samedi 21 juin 2014Date d'inscription 29 décembre 2014 Dernière intervention - 29 déc. 2014 à 09:59
Merci de votre aide mon ami
Commenter la réponse de pierrotk10d

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.