Bonjour à tous, voila je débute en 4D et j'aimerais 3 informations, se trouvant dans 3 tables différentes dont 2 des 3 sont reliés à la troisième
agence ===> Commandes <=== details commandes
1 n n 1
codes agences n°commandes
Pour cela j'utilise le code suivant :
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 CHERCHER([Commandes];[Commandes]Date enlèvement>=$date1;*)**`on recherche les commandes dont la date d'enlèvement est supérieur au premier du mois calculé CHERCHER([Commandes];*&*;[Commandes]Date enlèvement<=$date2)**`et inférieur au 31 du mois calculé SELECTION RETOUR([Détails Commande]N° de commande)**`on sélectionne les numéro de commande de détails commande en fonction de la sélection faites précédemment sur la table commande SELECTION VERS TABLEAU([Détails Commande]Prestation;$prest;[Commandes]Agence enlèvement;$agenceenlev) CHERCHER([Commandes];[Commandes]Date enlèvement>=$date1;*)**`on recherche les commandes dont la date d'enlèvement est supérieur au premier du mois calculé CHERCHER([Commandes];*&*;[Commandes]Date enlèvement<=$date2)**`et inférieur au 31 du mois calculé **``JOINTURE([Commandes];[Agences])**`on fait une jointure avec la table agence pour savoir la region de l'agence ENSEMBLE VIDE([Agences];"regionenlev") Tant que (Non(Fin de selection([Commandes]))) CHARGER SUR LIEN([Commandes]Agence enlèvement) ADJOINDRE ELEMENT([Agences];"regionenlev") ENREGISTREMENT SUIVANT([Commandes]) Fin tant que UTILISER ENSEMBLE("regionenlev") SELECTION VERS TABLEAU([Agences]CodeDirectionRégion;$regionenlev) EFFACER ENSEMBLE("regionenlev")
Mon problème est que mes 3 tableaux n'obtiennent pas le meme nombre de ligne, en effet pour $prest et $agenceenlev j'obtiens 6130 élements mais pour $regionenlev j'obtiens que 25 élements.
alors que je devrais en obtenir 6130 puisque tout est renseigné dans les tables, et comme vous pouvez le constater, j'obtiens le meme resultat avec le tant que qu'avec la jointure.
Alors il y aurait t'il quelque chose que j'ai oublié ou mal fait ??? ou sinon pourquoi est ce que j'obtiens çà ??
d'avance merci
@++
dubidon
Partager