Bonjour,
Je ne comprend pas trop ta question.. Je vais essayer de te donner une réponse sur ce que j'ai comprit
1. Tu veux soustraire la donnée de "Quantité (par lot)" à "Matière Première"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 POUR TOUTE LIGNE DE ta_table ma_table.col_matierepremiere =ma_table.col_matierepremiere - ma_table.col_quantié_pourlot FIN
2. Tu veux supprimer la donnée "Quantité (pour le lot)"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 POUR TOUTE LIGNE DE ta_table ma_table.col_quantité_pourlot = "" FIN
Si ce n'est pas ça, éssaie d'être plus clair !
@+
Bonjour,
dans ta table il faut que tu stockes l'identifiant de la ligne dans la table de la base de données. Dans ce cas, tu parcours la table lorsque tu valides et tu fais une affectation du résultat dans ta colonne de stock comme te le propose gabcouture mais il faut aussi que tu enregistres la modification :
à bientôt,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 POUR TOUTE LIGNE DE ta_table ma_table.col_matierepremiere =ma_table.col_matierepremiere - ta_table.col_quantié_pourlot hmodifie(ma_table) FIN
Nicolas
Bonjour
je vous remercie de m aider
desolé de pas avoir été très clair je vais essayer de faire mieux.
voici une capture un peu mieux détaillée.
je vais essayer maintenant de vous expliquer le scenario.
Un lot est une fabrication d'une quantité de produit.(ici 50kg d une crème solaire).
un produit est composé dune certaine quantité de plusieurs matières premières .
une matière première a un stock réel.
J'aimerais en appuyant sur le bouton affecter au stock, soustraire dans le FICHIER MATIERE PREMIERE, pour chaque matière première,la quantité utilisée dans ce lot.
Voici le code sur le bouton affecter
mais cela de modifie pas le stock réel dans mon fichier Matierepremiere
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 POUR TOUTE LIGNE DE Table_1 Matiere_Premiere.StockReel=Table_1.reel_apres EcranVersFichier() HModifie(Matiere_Premiere) FIN
J'espère avoir été plus clair.
merci d avance
j'ai oublié une partie ce matin : tu dois chercher l'enregistrement qui correspond à la ligne de la table que tu enregistres avec la fonction hlitrecherchepremier sur l'identifiant que tu as dans la table, si tu trouves alors tu modifies la valeur du stock et tu enregistres avec hmodifie. Pas besoin de ecranversfichier.
Dans les paramètres de ta table, tu peux mettre valeur de retour : idmatierepremiere (id automatique de ton analyse)
donc pour chaque ligne
essaie ceci !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 POUR TOUTE LIGNE DE Table_1 hlit(Matiere_Premiere,Table_1..valeur) Matiere_Premiere.StockReel=Table_1.reel_apres HModifie(Matiere_Premiere,table_1..valeur) FIN
je viens de tester , je dois mal m y prendre, voici mon code du bouton affecter au stock :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 HLitRecherchePremier(Matiere_Premiere,IDMatiere_Premiere,Matiere_Premiere.StockReel) SI HTrouve(Matiere_Premiere)=Faux ALORS Erreur("matière première non trouvé") RETOUR SINON POUR TOUTE LIGNE DE Table_1 Matiere_Premiere.StockReel=Table_1.reel_apres HModifie(Matiere_Premiere) FIN FIN
cela me renvoi la fenetre erreur avec le message que j ai taper , matiere premiere non trouvé. et biensur le stock ne bouge pas.
je pense que sa viens de mon hlitrecherchepremier.
merci d avance si vous pourvez m aiguiller , je suis tres novice
Met ceci dans ton code de ton bouton
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 POUR TOUTE LIGNE DE Table_1 HLitRecherchePremier(Matiere_Premiere,Matiere_Premiere.nom,table_1.col_désignation) SI htrouve(Matiere_Premiere) ALORS hlit(Matiere_Premiere,HnumEnr()) Matiere_Premiere.StockReel=Table_1.reel_apres HModifie(Matiere_Premiere) FIN FIN
merci beaucoup , grace a votre aide tout fonctionne comme je le souhaite .
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager