delphi comment faire une requette de mise a jours quantité d'un article en stock
delphi comment faire une requette de mise a jours quantité d'un article en stock
Bonjour et bienvenue,
Tout d'abord il ne s'agit pas forcément d'une spécificité FMX ni même Windows (forum et tag de la question de départ) mais plus une question "Base de Données" j'ai donc transféré le sujet dans le bon forum.
Ensuite, les éléments sont peu nombreux pour répondre clairement : composants utilisés pour la connexion, SGBD utilisé, description de la table sont autant d'indications permettant de mieux répondre
Soit une table STOCK(IDARTICLE INTEGER,QUANTITE INTEGER)
deux zones de "texte" edtIdArticle, edtQ
le SQL serait :
remarquez que j'ai indiqué deux paramètres (Q et ID) signalés par un : devant
Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part UPDATE STOCK SET QUANTITE=QUANTITE+:Q where IDARTICLE=:ID
Avec une connexion Firedac à la base de données avec le FDConnection on peut déjà faire la mise à jour
lire http://docwiki.embarcadero.com/RADSt...ndes_(FireDAC)
cette fonction renvoyant un entier (dans ce cas le nombre d'enregistrements mis à jour) un simple test sur le résultat permet donc de savoir si la commande s'est bien passée
Code : Sélectionner tout - Visualiser dans une fenêtre à part FDConnexion1.ExecSQL('UPDATE STOCK SET QUANTITE=QUANTITE+:Q where IDARTICLE=:ID',[StrToIntDef(edtidArticle.Text),0), StrToIntDef(edtQ,0)]);
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 var r : Integer; begin r:=FDConnexion1.ExecSQL('UPDATE STOCK SET QUANTITE=QUANTITE+:Q where IDARTICLE=:ID',[StrToIntDef(edtidArticle.Text),0), StrToIntDef(edtQ,0)]); if r=1 then showmessage('mise à jour faite') else showmessage('erreur mise à jour');
MVP Embarcadero
Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
SGBD : Firebird 2.5, 3, SQLite
générateurs États : FastReport, Rave, QuickReport
OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd
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