pour les bons a access et excel !!!!! URGENT - Windows & Software
Marsh Posté le 15-05-2001 à 15:32:18
il faut que lorsque tu valide ta vente 
 
tu code une ouverture de table avec un changement dans le champ concerné: 
ex: 
 
Dim bd As Database, rd As Recordset ' definition variable 
 
Set bd = CurrentDb ' ouverture de base 
Set rd = bd.OpenRecordset("stock", dbOpenDynaset) 'ouverture de table 
 
rd.FindFirst ("numero = '" & (Me.numero) & "'" ) 
' numéro etant l'index du produit ou le nom du produit (numero le nom du champ dans la base et me.numero le nom du champ dans le formulaire) 
 
rd.Edit ' tu ouvres la fiche en ecriture 
 
rd!nombre = rd!nombre - rd.nombre 'changement du stock 
 
rd.update ' ecriture du changement 
 
rd.close 
bd.close
Marsh Posté le 15-05-2001 à 15:32:19
il faut que lorsque tu valide ta vente 
 
tu code une ouverture de table avec un changement dans le champ concerné: 
ex: 
 
Dim bd As Database, rd As Recordset ' definition variable 
 
Set bd = CurrentDb ' ouverture de base 
Set rd = bd.OpenRecordset("stock", dbOpenDynaset) 'ouverture de table 
 
rd.FindFirst ("numero = '" & (Me.numero) & "'" ) 
' numéro etant l'index du produit ou le nom du produit (numero le nom du champ dans la base et me.numero le nom du champ dans le formulaire) 
 
rd.Edit ' tu ouvres la fiche en ecriture 
 
rd!nombre = rd!nombre - rd.nombre 'changement du stock 
 
rd.update ' ecriture du changement 
 
rd.close 
bd.close
Marsh Posté le 15-05-2001 à 15:44:16
ouah  , il faut passer du code VB? j'y connais rien ,je pensais qu'une requete suffirait, t'aas pas un exemple tout fait ?? merci
 , il faut passer du code VB? j'y connais rien ,je pensais qu'une requete suffirait, t'aas pas un exemple tout fait ?? merci
Marsh Posté le 15-05-2001 à 15:45:31
envoie ta base sur mon mail, je vais te le faire de suite ca prend deux minutes 
a+
Marsh Posté le 15-05-2001 à 15:51:28
En SQL non ? 
 
un truc du genre REPLACE INTO Table1 (id_du_produit, quantite) VALUE(id_du_produit, nouvelle_valeur); 
De meme pour 2nd table.
Marsh Posté le 15-05-2001 à 15:57:43
on peux effectivement faire une requete de ce style 
 
mais les requetes directes et les macro sont les points faible d'access 
 
tb1: table vente 
tb2: table stock 
ch1: champ du formulaire avec le nom du produit 
ch2: champ du formualire avec la quantité prise 
 
tch1: champ de la base tb2 avec le nom du produit 
tch2: champ de la base tb2 avec les quantités 
 
opération: nom du formulaire traitant la vente 
nb: quantité vendu 
 
 
UPDATE tb2 INNER JOIN tb1 ON tb1.[tch1] = tb2.[tb1] SET tb2.tch2 = [tb2].[tch2]-[forms]![operation]![nb] 
WHERE (((logistique.numero)=[forms]![opération]![champ]));
Marsh Posté le 15-05-2001 à 15:59:24
dead hunter --> je veux bien te l'envoyer mais je n'ai pas ton mail  
 
pourrais tu me la donner ?  
mon fichier fais 1Mo  
 
merci encore pour ton aide
Marsh Posté le 15-05-2001 à 16:15:25
ouaip ca a l'air simple mais je n'ai pas de formulaire pour traiter la vente, j'ai les données contenues dans une table, qui s'alimente par importation et requetes succesive... Le bordel quoi 
Marsh Posté le 15-05-2001 à 17:13:46
Constante d'intégrité référentielle avec mise à jour en cascade.
Marsh Posté le 15-05-2001 à 18:12:04
C'est koi la structure de tes tables ??
Marsh Posté le 15-05-2001 à 18:20:26
alors, j'ai donc un lien externe qui continet: 
ma commande , n° de com, ref1 à 5 avec leur quatité  
et les infos sur les clients 
Donc a partir de ca, je fais une table  
commande avec n° nom prenom, et les refs et qté 
et ensuite j'ai ma table stock avec un champ ref , un pour le stock a l'origine (inventaire) et un avec le stock actuel (mis a jour automatiquement donc  
 
voila.. je galere comme pas possible !!
Marsh Posté le 15-05-2001 à 18:58:00
Tu connais Merise?
Marsh Posté le 15-05-2001 à 19:52:28
ouaip, je connais de nom , c'est une methode qui a l'air vachement compliqué mais bon comme j'apprend tout tout seul dans mon coin (jsuis en stage) et que j'ai jamais fais de bases de données sauf des trucs simple en PHP/mysql, je me galere!!! 
A l'aaaaaaaaaaaaide !!  
   
  
Marsh Posté le 15-05-2001 à 20:06:00
Tu devrais trouver un tutorial dessus, c pas assez simple et ça aide enormement surtout pour cette USINE A GAZ d'access et crois moi, je c de quoi je parle.
Marsh Posté le 16-05-2001 à 08:19:57
ouaip, mais ya pas beaucoup de site parlant de ca (access, BDD) et question bouquins, j'ai un budget ultra limite (ZERO!) donc je galere encore et toujours.....
Marsh Posté le 16-05-2001 à 08:34:18
dis donc ta base est en access 2000 ?? 
 
j'ai voulu l'ouvrir sur mon poste au bureau ce matin et niet je suis en 97 moi 
 
pour 2000, cela sera chez moi, il doit etre installé amoins que tu es fini ?? 
a+
Marsh Posté le 16-05-2001 à 08:54:34
argh, ouaip je suis en 2000  
  
sinon, petite question, j'ai une table excel qui gere le stock, avec chaque le total des ventes pour chaques produit. Ma base de donnée qui gere les commandes est sous excel a l'orgine (a cause de pas mal de probleme) et donc je peut, peut etre faire ma gestion des sotcks directements sous excel en liant les fichiers? 
si tu sais comment on fait ...  en fait il faut regarder dans quel mois est chaque commande, quel produit est concerné (ref et qté) et le deduire qq part... ohlala !!
 en fait il faut regarder dans quel mois est chaque commande, quel produit est concerné (ref et qté) et le deduire qq part... ohlala !!
Marsh Posté le 16-05-2001 à 10:01:37
bon premier conseil simple mais qui vient de mon expérience 
 
EVITE LES INTERACTIONS ENTRE LES APPLI EXCEL ET ACCESS 
 
quand tu auras une monté de versions tu devras refaire tes liens OLE 
 
il faut importer les données excel dans access puis tout gérer depuis access, cette application sera déployée sur combien de postes ?? 
combien d'utilisateurs simultannés ?? 
 
a+
Marsh Posté le 16-05-2001 à 10:08:38
ola, c'est une appli toute "simple" pas de multi poste, pas de multiutilisateur, juste une personne a la fois  donc je pense pour finir que je vais rester sous excel mais est ce que je peut faire tt ca sous excel (gestion du stock assez tordu) si oui comment??
 donc je pense pour finir que je vais rester sous excel mais est ce que je peut faire tt ca sous excel (gestion du stock assez tordu) si oui comment??  
Marsh Posté le 16-05-2001 à 10:15:56
toujours faisable 
 
mais il faut voir la stabilité du truc et les personnes qui vont s'en servir
Marsh Posté le 16-05-2001 à 10:19:42
qu'est ce que tu veux dire par stabilité ?  ya pas de probleme la dessus , je pensais, avec des liens entre les fichiers... les personnes qui s'en servent... une secretaire qui ne connait pas bien l'informatique, mais elle est souple pour apprendre si besoin est. Les fichiers ne changent jamais de place sur le dur donc pas de probleme . Mais comment faire pour pouvoir supprimer les produit par mois(année aussi  et par reference dans mon stock?? je sais pas non plus trop comment m'y prendre pour pouvoir rajouter une année a chaque fois (genre 1 feuille par an qui s'ajoute automatiquement tt les ans? )
 et par reference dans mon stock?? je sais pas non plus trop comment m'y prendre pour pouvoir rajouter une année a chaque fois (genre 1 feuille par an qui s'ajoute automatiquement tt les ans? ) 
merci encore pour ton aide !
Marsh Posté le 16-05-2001 à 11:20:30
sous excel, j'ai mauvaise nouvelle pour toi tu vas devoir passer par des MACROS ou du code VBA 
 
Or je crois que tu n'aimes pas trop...
Marsh Posté le 16-05-2001 à 11:36:03
bah , sous excel c'est plus facil les macros (on peut les enregistrer !!) et pis j'ai un autre pb, je voudrai une formule excel pour decouper un champ nom prenom .. 
 
Je sais je suis nul!!
Marsh Posté le 16-05-2001 à 12:54:18
jsuis aussi une brêle mais je me sers du publipostage pour faire le lien entre des données brutes sur excell et une mise en forme sous word...access et les macros j bite keud
Marsh Posté le 16-05-2001 à 13:15:44
quand tu parles de decouper c'est d'extaire les données tirer d'une celulle 
bon par exemple 
 
Durand Pierre 
 
Nom: Durand 
Prénom: Pierre 
 
il existe un moyen plus ou moins fiable de le faire, le problème vient des double prénom ou des personnes à particules 
 
la methode et de partir de la gauche de rechercher le premier espace et ensuite d'extraire depuis la gauche jusqu'a l'espace de meme pour le prenom mais avec un depart juste apres l'espace 
 
a+
Marsh Posté le 16-05-2001 à 13:20:19
ok pour la première solution proposée. Je vois pas trop comment faire simplement autrement. Ce que tu veux, ce n'est autre qu'une règle de gestion spécifique que tu veux coder... et passer par du SQL, je ne vois vraiment pas l'intéret... le code VBA est plus simple et beaucoup plus maintenable !!!! 
 
voilà !
Marsh Posté le 16-05-2001 à 13:23:03
ok merci, pour la separaration tu utilise la fonction cherche et ensuite tu prend stxt ?? 
merci
Marsh Posté le 16-05-2001 à 14:12:22
ok merci beaucoup  
 
je suppose que c'est pareil pour le nom (=droite(celule ; emplacement de l'espace) ok merci beaucoup les gars!!! 
special greeting for dead hunter 
Marsh Posté le 16-05-2001 à 14:22:03
n'oublies de spécifier dans ta doc et à l'écran qu'il ne faut pas laisser d'espace avant ni apres 
ou si tu veux etre tranquille tu fait cela sur la cellule 
=SUPPRESPACE('celulle') 
cela ne laisse qu'un espace si la personne en tape deux d'affilé et cela supprime les espaces de debut et de fin de cellule 
 
 
pour la fonction de recherche de l'espace c'est simple: TROUVE qui te retourne l'emplacement 
 
tu bosses ou sur lille
Marsh Posté le 16-05-2001 à 14:28:42
jsuis en stage, a roubaix, tinkco, encres compatibles http://www.tinkco.com 
 
sinon, j'ai cherché pas mal de trucs, j'ai mon nom au format M. Truc Machin donc je cherche le premier espace, le deuxieme, et je fais mes decoupe avec stxt et droite  
voili 
tu sais pas comment je peux faire pour mon probleme de stock? je dois donc tout gerer par ref et par mois ... galere!!
Marsh Posté le 16-05-2001 à 14:45:32
la malheureusement sans avoir la structure du truc sous les yeux 
j'ai un peu plus de mal 
 
mais selon moi sois tu code (je prefere toujours personnellement) 
 
sois tu changes d'outils et on reveint a access 
a+
Marsh Posté le 15-05-2001 à 15:02:05
salut, j'ai un truc que je sais pas faire, ca doit paraitre simple a la plupart donc merci de m'aider.
Mon problème : j'ai 2 tables, une pour les ventes, un pour le stock, je voudrai que lorsqu'un produit part (une quantité de produit) le stock se mette a jour en utilisant la reference du produit que contiendrai mes 2 tables...
merci de votre aide
[edit]--Message édité par bart70--[/edit]