Bonjour ;pour une gestion basic de stock sous [D7-Access2003] mon problème est le suivant :
j'ai une table stock et une table ligne,
l'opération suppression de la quantité ligne , cette dernière doit être restituée dans la table stock selon son ID.
exemple :
table lignes ( Qt = 200 ) quand je supprime cette ligne la table stock récupère cette quantité et l'ajoute a la quantité stock existante déjà a condition que les deux quantité ont le même ID
lors de la suppression d'un enregistrement de la table lignes j'ai le message suivant voir image attachée :
mon code
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 rocedure Tfsujtcontact.btsupClick(Sender: TObject); var result,m1 : integer; begin sup:='sup'; instruction de control ....... if (dm1.qtrtprev .RecordCount>0) then begin result:=0; if MessageDlg('Voulez-Vous vraiment supprimer cette quantité ' ,mtConfirmation,[mbYes,mbNo],1,)=mrYes then begin dm1.tstok.Open; // mise à jour de la table stock dm1.tstok.Locate('nstocprod',nstok.Text,[]);// localisation du produit result:= strtoint(eqt.Text) + dm1.tstokQT.Value;// calcul de la nouvel valeurs du produit dans la table stock dm1.tstok.edit; dm1.tstokQT.Value:=result; dm1.tstok.Post; dm1.tlignes.Open; // suppression de la ligne quantité DM1.tlignes.Locate('nlin',nlin.Text,[]); DM1.Tlignes.Delete; MessageDlg('Traitement supprimé',mtInformation,[mbOK],0); dm1.qafichprod.Active:=false; // actualisé l'affichage des produit (table stock) dm1.qafichprod.Parameters.ParamByName('prod').Value:=emedic.Text; dm1.qafichprod.active:=true; dm1.qtrtprev.Close; // actualisé la table détenteur de produit dm1.qtrtprev.Parameters.ParamByName('nsc').Value:=strtoint(ensc.Text); dm1.qtrtprev.Open; nlin.Text:=''; nstok.Text:=''; eqt.Text:=''; nmouv.Text:=''; exit; end; end else begin beep(); MessageDlg('Aucun enregistrement n''est disponible...',mtInformation,[mbOK],0); end; end;
Partager