Bonjour
Voici le code de mon bouton valider
En effet lorsque j’enregistre une commande, les informations sont bien enregistrées dans la commande et de la table ligne commande. Et si la commande est payé alors
Les informations sont aussi enregistrés dans la table facture.
Mais par contre les informations de ma table ligne facture ne sont enregistrées et la mise à jour du stock n’est pas faite. Cette partie du code ne s’exécute pas.
Je suis perdu si une personne peut m’aider.
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93 SI TABLE_LigneCde..Occurrence = 0 ALORS Erreur("Vous devez renseigner au moins une ligne de commande") RETOUR FIN SI COMBO_IDModeLivraison <= 0 ALORS Erreur("Vous devez indiquer un mode de livraison") RepriseSaisie(COMBO_IDModeLivraison) FIN SI COMBO_IDModeReglement <= 0 ALORS Erreur("Vous devez indiquer un mode de règlement") RepriseSaisie(COMBO_IDModeReglement) FIN SI COMBO_EtatCommande <= 0 ALORS Erreur("Vous devez indiquer l'état de la commande") RepriseSaisie(COMBO_EtatCommande) FIN // Lecture des informations saisies EcranVersFichier() // Lecture du client // Mémorise les informations annexes : // - Adresse de livraison du client HLitRecherchePremier(Adr_Livraison, NumClient, Client.NumClient) SI HTrouve(Adr_Livraison) ALORS Commande.IDAdresseLivraison = Adr_Livraison.IDAdresseLivraison FIN // - Adresse de facturation du client HLitRecherchePremier(Adr_Facturation, NumClient, Client.NumClient) SI HTrouve(Adr_Facturation) ALORS Commande.IDAdresseFacturation = Adr_Facturation.IDAdresseFacturation FIN // Ajoute / modifie l'enregistrement HEnregistre(Commande) nOrdre est un entier = 1 // Enregistrement des lignes de commandes POUR TOUTE LIGNE DE TABLE_LigneCde // On affecte l'identifiant de Commande dans les colonnes de la table des LigneCde TABLE_LigneCde.COL_NumCommande = Commande.NumCommande // On modifie l'ordre des lignes de commande pour mémoriser l'ordre souhaité par l'utilisateur TABLE_LigneCde.COL_OrdreAffichage = nOrdre // Enregistrement de la table TableEnregistre(TABLE_LigneCde) nOrdre++ FIN // Commande réglée ? SI INT_CommandeReglee ALORS // Recherche la facture correspondante HLitRecherchePremier(Facture, NumCommande, Commande.NumCommande) // Pas de facture correspondante SI HTrouve(Facture) = Faux ALORS // Création de la facture correspondante HRAZ(Facture) Facture.DateFacture = DateDuJour() Facture.IDAdresseFacturation = Commande.IDAdresseFacturation Facture.IDModeReglement = Commande.IDModeReglement Facture.NumClient = Commande.NumClient Facture.NumCommande = Commande.NumCommande Facture.Observations = Commande.Observations Facture.TotalHT = Commande.TotalHT Facture.TotalTVA = Commande.TotalTVA Facture.TotalTTC = Commande.TotalTTC HAjoute(Facture) // Ligne de facture correspondante POUR TOUTE LigneCde AVEC NumCommande = Commande.NumCommande HRAZ(LigneFac) LigneFac.IDLigneCde = LigneCde.IDLigneCde LigneFac.LibProd = LigneCde.LibProd LigneFac.NumFacture = Facture.NumFacture LigneFac.PrixVente = LigneCde.PrixVente LigneFac.Quantite = LigneCde.Quantite LigneFac.Reference = LigneCde.Reference LigneFac.Remise = LigneCde.Remise LigneFac.TauxTVA = LigneCde.TauxTVA LigneFac.OrdreAffichage = LigneCde.OrdreAffichage HAjoute(LigneFac) FIN // Ajout du règlement HRAZ(Règlement) Règlement.DateReglement = DateDuJour() Règlement.IDModeReglement = Facture.IDModeReglement Règlement.NumFacture = Facture.NumFacture HAjoute(Règlement) FIN FIN // Valeur de retour de la fenêtre MaFenêtre..ValeurRenvoyée = Vrai
Partager