Bonsoir tout le monde,
Je vous soumets un problème que je rencontre sur Acc2003/2007.
J'ai crée un Formulaire principal (Form1) contenant 2 sous-formulaires SForm2 et SForm3 respectivment rattachées aux tables suivantes :
Dans mon SForm2, j'ai par ligne d'enregistrements un montant de facture.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 tbl1(tbl1_id, etc.) tbl2(tbl2_id, tbl1_id#, montant, etc.) tbl3(tbl3_id, tbl2_id#, règlement, etc.)
Dans mon SForm3, je peux avoir une ou plusieurs lignes d'enregistrements de règlement du montant de chacune des factures.
En clair, une ligne correspond au règlement global du montant d'une facture, plusieurs lignes aux règlements fractionnés du montant d'une facture.
Je souhaite pouvoir ajouter dans mon SForm2 un champ "règlement" qui afficherait la somme des règlements effectués par ligne de facture.
J'y ai donc ajouté une zone de texte indépendante.
Première de mes tentatives : créer une requête req2
et dans le Form_current() de mon SForm2 d'utiliser une fonction de domaine
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT tbl2_id#, Sum(Règlement) AS total_règlement FROM Tbl3 GROUP BY tbl2_id#;
ce n'est pas concluant car cela m'affiche un montant de règlement pour chacune de mes lignes de factures, alors que certaines factures n'ont pas un début de règlement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 r = DLookup("[total_règlement]", "Req2", "tbl2_id# =" & Me.tbl2_id) Me.règlement.Value = r Me.règlement.Requery
deuxième de mes tentatives :
Insérer dans le pied de mon SForm3, une zone de texte indépendante qui a pour source contrôle
Insérer dans la zone de texte indépendante "règlement" de mon SForm2 la source contrôle :
Code : Sélectionner tout - Visualiser dans une fenêtre à part =Somme([règlement])
ce n'est pas concluant non plus car j'ai un #Nom? qui s'affiche dans le champ "règlement".
Code : Sélectionner tout - Visualiser dans une fenêtre à part =[Formulaires]![SForm3]![total_des_règlements]
Auriez-vous une solution à me proposer ?
Merci d'avance.
Partager