Ajouter une quantité sur un produit dans une table

web35 Messages postés 15 Date d'inscription lundi 31 mars 2003 Statut Membre Dernière intervention 24 janvier 2009 - 29 mars 2008 à 18:18
LIBRE_MAX Messages postés 1402 Date d'inscription mardi 1 mai 2007 Statut Membre Dernière intervention 7 octobre 2012 - 1 avril 2008 à 22:03
Bonjour, j'ai vraiment besoin d'une aide ou d'un conseil !

Voila j'ai crée une petit BD avec access 2000 et c'est ma premiere en plus , elle sert à gérer une liste de produit par client ( plusieurs listes (RéfBL)de produits (RéfInstrument) peuvent être assimilé à un client) . Via un formulaire je créé un BL pour un client avec une nouvelle liste de produitpour celui ci Mais quand un client veut une quantité supplémentaire pour un produit je suis obligé de venir sur mon formulaire (car il faut que cette quantité aille dans un BL bien précis) et je change la quantité manuellement ! J'aimerai savoir si c'est possible sans entrer dans du VBA en restant avec des macros ou sans et via un formulaire rajouter une quantité sur une ligne de produit automatiquement !
J'appele le client , ensuite je sélectionne le BL puis j'appel la réference du produit et je met 1 en Qté et hop il s'additionne dans ma table ! C possible ?????
J'ai beau chercher sur le net et les forum mais on parle chaque fois du VBA pour faire cette manip .
Par ailleur si je peux additionner je dois aussi pouvoir soustraire si le client me rend un produit !

PS j'aurai bien voulu mettre une photo de mes tables pour vous montrer mais je n'y arrive pas

Bon merci d'avance si vs avez une solution a mon problème!

@micalement  MC

8 réponses

LIBRE_MAX Messages postés 1402 Date d'inscription mardi 1 mai 2007 Statut Membre Dernière intervention 7 octobre 2012 6
29 mars 2008 à 18:52
Salut,
tu peux le faire avec une expression mise à jour.
Schamatiquement ça donnerait ceci:

"update table.Qte set Table.qte=Table.Qte+1 where client= " & varclt & " and BL =" & varBl & " and Produit=" & varProduit;"

<hr />
... Y'en a même qui disent qu'ils l'ont vu voler.
/PRE>
0
web35 Messages postés 15 Date d'inscription lundi 31 mars 2003 Statut Membre Dernière intervention 24 janvier 2009
31 mars 2008 à 18:41
Merci LIBRE_MAX d'avoir répondu si vite !

Je n'ai pas eu le temps de tester ta formule  car ce qui me gêne un peu c'est :

Ben je peux ajouter 1 ou 2 ou 5 qtés pour un produit  ou vice versa , alors cette fonction doit être libre  ( Qte+1 ) mais la c'est pour 1
Pis ce qui suit where client = " ....... VarProduit."      dsl je connais pas ce langage , là tu me perds encore plus .

Je me doutais bien que je pouvais faire un ajout avec une macro mais je ne voyais pas trop comment . Si tu pouvais me détailler un peu plus se serai trés sympa !

Pour info je vous donne un lien pour visualiser la relation de mes tables , et je laisserai ce lien jusqu'a que mon soucis soit résolu .   et l'image c'est tablegestion.jpg

Donc je dois faire un formulaire pour d'abord trouver " le client " puis trouver " RéfBL" et ensuite sélectionner la ligne "RéfInstrument" et ajouter la qté et valider avec un bouton " soit pour ajouter " ou " pour supprimer, déduire "

Si je me trompe dites moi .

En vous remerciant d'avance pour l'aide que vs pourrez m'apporter !

@micalement MC
0
LIBRE_MAX Messages postés 1402 Date d'inscription mardi 1 mai 2007 Statut Membre Dernière intervention 7 octobre 2012 6
31 mars 2008 à 20:18
Bonsoir,
Si tu ne veux pas utiliser de requete mise à jour,
recherches ton bl dans TDetailBLet affiches le détail de ce bl dans un formulaire semblable à celui utilisé pour l' ajout.
Tu modifies alors la quantité et tu valides.
Si ton formulaire est lié directement à ta table TDetailBL et que tu te pointes sur RefBL la validation se fera automatiquement.
ça sera plus simple , non ?.

<hr />
... Y'en a même qui disent qu'ils l'ont vu voler.
/PRE>
0
web35 Messages postés 15 Date d'inscription lundi 31 mars 2003 Statut Membre Dernière intervention 24 janvier 2009
31 mars 2008 à 22:31
Merci LIBRE_MAX   de regarder et de d'essayer à résoudre mon problème.

Aujourd'hui pour faire la MàJ des instruments (produits) pour chaques listes que mes clients possèdent, je le fais manuellement via un formulaire MAIS demain je ne serai pas le seul à faire cette MàJ sur les listes ( nous sommes 3 au magasin et mes 2 collègues vont avoir du mal a faire des modif simple sans erreur sur Access) et c'est pour cela que je travaille sur un formulaire comme je l'ai cité plus haut qui  dans un premier temps :

1 ) on sélectionne un client via un menu déroulant
2 ) la liste des RéfBL s'affiche dans un autre menu déroulant ( de 1 à 10 RéfBL par clients avec de 10 à 50 instruments par RéfBL )
3 ) on sélectionne une RéfBL et le détail du BL s'affiche dans un sous-formulaire
4 ) on sélectionne la ligne RéfInstrument  et hop une fenetre s'ouvre qui demande :
 - la qté à écrire avec 2 boutons ( ajout ou supp ) 
5 ) aprés cette validation un état apparait et on l'imprime

Voila le formulaire que je suis en train de faire , si je fais cela c'est parce que ma base sera vérouillé et seul moi ferai certaines modif , pour les autres personnes qui vont l'utiliser à mon absence c juste pour faire des MàJ pour les maintenances . 

Au moment ou j'écris ce post, je n'ai fais que des essais soit pour ajouter ou supp et imprimer mais pour quelqu'un qui ne connais Access qu'au travers des tutos que j'ai trouvé sur des sites ...... je galère là !!!!!
Aujourd'hui je flanche , tables, requêtes, formulaires et qqles macros sa roule mais la je veux un peu automatiser ma BD pour que d'autres personnes l'utilisent.

Donc j'ai besoin qu'on m'aiguille comme tu m' as expliqué LIBRE_MAX plus haut vers des macros .... pour automatiser via des boutons . Mais si j'avais plus d'explications pour écrire les formules je pense que je capterai plus vite .

Bon wala si tu veux bien continuer à m'aider LIBRE_MAX ,  je t'en serai reconnaissant  et si tu vois ce que je veux faire !

@micalement  MC

PS : si tu veux voir ma BD LIBRE_MAX je peux te l envoyer mais impossible de la mettre en ligne because y a des infos confidentielles .

 
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
LIBRE_MAX Messages postés 1402 Date d'inscription mardi 1 mai 2007 Statut Membre Dernière intervention 7 octobre 2012 6
31 mars 2008 à 22:47
 beh voilà :


1 ) on sélectionne un client via un menu déroulant
varClt=client selectionné


2 ) la liste des RéfBL s'affiche dans un autre menu déroulant ( de 1 à 10 RéfBL par clients avec de 10 à 50 instruments par RéfBL )
varBL=RefBLselectionné


3 ) on sélectionne une RéfBL et le détail du BL s'affiche dans un sous-formulaire


4 ) on sélectionne la ligne RéfInstrument  et hop une fenetre
varRéfInstrument=RéfInstrument selectionné


s'ouvre qui demande :
 - la qté à écrire avec 2 boutons ( ajout ou supp )


varQte=Qte entrée




<<>tu exécutes ta requete:
CurrentDB.Execute "UPDATE TdetailBL SET Quantite=" & varQte & " WHERE client= " & varclt & " aAND BL =" & varBl & " AND RéfInstrument=" & varRéfInstrument & ";"




5 ) aprés cette validation un état apparait et on l'imprime


 







<hr />

... Y'en a même qui disent qu'ils l'ont vu voler.




/PRE>
0
LIBRE_MAX Messages postés 1402 Date d'inscription mardi 1 mai 2007 Statut Membre Dernière intervention 7 octobre 2012 6
31 mars 2008 à 22:50
pour la Quantité :

Soit tu entres la quantité qui doit figurée
...SET Quantite=" & varQte

Soit tu entre la quantité à ajouter ou à retirer et donc
...SET Quantite=Quantite+" & varQte...
ou
...SET Quantite=Quantité-" & varQte
<hr />
... Y'en a même qui disent qu'ils l'ont vu voler.
/PRE>
0
web35 Messages postés 15 Date d'inscription lundi 31 mars 2003 Statut Membre Dernière intervention 24 janvier 2009
31 mars 2008 à 23:30
Oulala LIBRE_MAX  ,  tu vas trop vite pour moi ....

2 questions car j'essaye d'analyser et de comprendre .

ou varQte  var ) ca correspond à ma zone de texte ou mon menu déroulant ??? moi je fais mon formulaire normal ou je
dois écrire qqles choses dans la fenetre  proprièté de la " zone " ?  le mot VAR c'est info pour la formule .

<<>tu exécutes ta requete:
CurrentDB.Execute "UPDATE TdetailBL SET Quantite=" & varQte & " WHERE client= " & varclt & " aAND BL =" & varBl & " AND RéfInstrument=" & varRéfInstrument & ";"

D'accord je pars sur une requete pas sur une macro mais
  dans ma requête cette formule je l'écris sur la ligne mise à jours ? mais sous quelle colonne ???

Je pense que pour toi c'est logique mais moi pffffffffff  si j'avais un exemple je comprendrai mieux  et plus vite !!!!! Si tu sais ou je peux regarder
des fonctions avec ( var ) , un tutos pour débutant quoi !! les seules requetes que j'utilise pour le moment c'est " critères" et " opération " je n'ai pas encore
abordé la ligne " MàJ " ou les autres fonctions des requetes ! ( je débute arffff )
Je ne veux pas abuser de ton temps car tu as surement apporté la solution a mon probleme mais tout cela est en vrac pour moi et nouveau .

Je m'en vais essayer  bricoler et faire des essais avec tes renseignements ;
Y a qu'en faisant qu' on apprends  

@micalement MC
0
LIBRE_MAX Messages postés 1402 Date d'inscription mardi 1 mai 2007 Statut Membre Dernière intervention 7 octobre 2012 6
1 avril 2008 à 22:03
Bonsoir,
Char ami :
le var dans varBL ou varQte   ne veut rien dire mis à part qu' il signifie que c' est une variable !


par exemple.
Dim varBL As String
varBL=TextBL.Text


ou
Dim varQte  As Integer
varQte=CInt(TextQuantité.Text)


ça aurait pu être xBL ou MonBL ou BL tout court ça reste une variable et ça n' aurait rien changé à l' affaire !-)
c' est juste pour stocker l' info.Et c' est très utili dans les expressions SQL.







<hr />

... Y'en a même qui disent qu'ils l'ont vu voler.




/PRE>
0
Rejoignez-nous