|
FORUMS PROFESSIONNELS WINDEV, WEBDEV et WINDEV Mobile |
| | | | | |
Débuté par Ndiaga Toure, 21 aoû. 2019 18:30 - 6 réponses |
| |
| | | |
|
| |
Membre enregistré 311 messages Popularité : +3 (5 votes) |
|
Posté le 21 août 2019 - 18:30 |
Bonjour, J'ai un Etat basé sur une requete.les champs affichées sont [Quantite, description, prix ] -je doit répéter la même description et prix si la rubrique quantité est supérieur à 1 J'ai essayé ce code au niveau de l'ouverture de l'Etat mais ça affiche qu'une seule ligne
nb est entier=Lib_quantité SI nb>1 ALORS POUR i=1 A nb lib_description="toto" FIN fin
Quelqu'un à une idée Cordialement |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 885 messages Popularité : +227 (347 votes) |
|
Posté le 21 août 2019 - 21:04 |
Bonjour, Il suffit de modifier ta requête en ajoutant une condition sur la quantité.
Ta requête doit ressembler à ça :
SELECT PRODUIT.Decription, PRODUIT.Prix, LIGNECDE.Qte FROM PRODUIT, LIGNECDE WHERE PRODUIT.PK_PRODUIT=LIGNECDE.FK_PRODUIT
Il suffit de la modifier en
SELECT PRODUIT.Decription, PRODUIT.Prix, LIGNECDE.Qte FROM PRODUIT, LIGNECDE WHERE PRODUIT.PK_PRODUIT=LIGNECDE.FK_PRODUIT AND LIGNECDE.QTE>1
-- Il y a peut être plus simple, mais, ça tourneMessage modifié, 21 août 2019 - 21:13 |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 311 messages Popularité : +3 (5 votes) |
|
Posté le 21 août 2019 - 23:03 |
Voroltinquo a écrit :
Bonjour, Il suffit de modifier ta requête en ajoutant une condition sur la quantité.
Ta requête doit ressembler à ça : SELECT PRODUIT.Decription, PRODUIT.Prix, LIGNECDE.Qte FROM PRODUIT, LIGNECDE WHERE PRODUIT.PK_PRODUIT=LIGNECDE.FK_PRODUIT
Il suffit de la modifier en SELECT PRODUIT.Decription, PRODUIT.Prix, LIGNECDE.Qte FROM PRODUIT, LIGNECDE WHERE PRODUIT.PK_PRODUIT=LIGNECDE.FK_PRODUIT AND LIGNECDE.QTE>1
-- Il y a peut être plus simple, mais, ça tourne Message modifié, 21 août 2019 - 21:13
Merci de votre réponse.Mais ici l'idée ce n'est pas d'afficher seulement les quantité supérieur à 1 mais de splitter les quantités supérieur en 1. Autrement dit de répéter les lignes dont la quantité est supérieur à 1
Dans ce cas répéter le champ description et prix deux fois puisque la quantité est de 2. Cordialement |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 3 885 messages Popularité : +227 (347 votes) |
|
Posté le 22 août 2019 - 07:40 |
On va appeler la requête REQ_DétailFacture_Complet Le tableau doit être rempli par programmation (Description/Données/Les données viennent...)
Initialisation de l'état :
HExécuteRequête(REQ_DétailFacture_Complet) gsQtéAffichée est chaîne gnItération est entier
gnItération=1 HLitPremier(REQ_DétailFacture_Complet)
Lecture des données :
TANTQUE PAS HEnDehors(REQ_DétailFacture_Complet) SI gnItération=1 ALORS gsQtéAffichée=REQ_DétailFacture_Complet.Qte SINON gsQtéAffichée="" FIN RENVOYER Vrai FIN
RENVOYER Faux
Avant impression de CORPS :
LIB_Qté=gsQtéAffichée LIB_Produit=REQ_DétailFacture_Complet.NDX_NomProduit LIB_Prix=REQ_DétailFacture_Complet.Prix
gnItération++ SI gnItération>REQ_DétailFacture_Complet.Qte ALORS HLitSuivant(REQ_DétailFacture_Complet) gnItération=1 FIN
-- Il y a peut être plus simple, mais, ça tourne |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 311 messages Popularité : +3 (5 votes) |
|
Posté le 22 août 2019 - 07:52 |
Voroltinquo a écrit :
On va appeler la requête REQ_DétailFacture_Complet Le tableau doit être rempli par programmation (Description/Données/Les données viennent...)
Initialisation de l'état : HExécuteRequête(REQ_DétailFacture_Complet) gsQtéAffichée est chaîne //Il faudra passer la colonne en texte, cela évite d'avoir un "zéro" gnItération est entier
gnItération=1 //A adapter si l'on considère que la première ligne du produit est le récapitulatif ou pas HLitPremier(REQ_DétailFacture_Complet)
Lecture des données : TANTQUE PAS HEnDehors(REQ_DétailFacture_Complet) SI gnItération=1 ALORS //C'est la première ligne on affiche la quantité gsQtéAffichée=REQ_DétailFacture_Complet.Qte SINON //On n'affiche pas la quantité gsQtéAffichée="" FIN RENVOYER Vrai FIN
RENVOYER Faux
Avant impression de CORPS : LIB_Qté=gsQtéAffichée LIB_Produit=REQ_DétailFacture_Complet.NDX_NomProduit LIB_Prix=REQ_DétailFacture_Complet.Prix
gnItération++ SI gnItération>REQ_DétailFacture_Complet.Qte ALORS HLitSuivant(REQ_DétailFacture_Complet) gnItération=1 FIN
-- Il y a peut être plus simple, mais, ça tourne Bonjour, Je vais tester ça et je vous reviens Encore merci cordialement |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 311 messages Popularité : +3 (5 votes) |
|
Posté le 22 août 2019 - 12:14 |
Bonjour, Désolé mais j'ai pas encore le résultat escompté. Je serais plus simple que possible . Je veux répéter par programmation une ligne de mon Etat n fois. Dans ce cas d'Etat
Je veux répéter Exonéré par exemple 3fois au niveau de l'affichage de l'Etat. Si j'arrive je pourrai résoudre le gros lot du probléme. Merci et bon dév |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 165 messages Popularité : +12 (12 votes) |
|
Posté le 22 août 2019 - 13:56 |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|