cs_luz
Messages postés29Date d'inscriptionvendredi 27 décembre 2002StatutMembreDernière intervention12 février 2013
-
21 sept. 2006 à 20:21
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 2007
-
21 sept. 2006 à 22:34
Bonjours à tous,
Je debute un peu en vb6.
Je voulais savoir s' il etait envisageable d' excuter une requête: Ajout, supression , modification ou une autre ce situant dans une base access et depuis une feuille de vb 6 avec des boutons.
Si cela est possible pouvais vous me donner quel conseil afin de partir dans la bonne direction.
cs_luz
Messages postés29Date d'inscriptionvendredi 27 décembre 2002StatutMembreDernière intervention12 février 2013 21 sept. 2006 à 21:30
Bonsoir chaibat
J' ais crée une base de donnée sous access 97 qui est sous réseau mais tout le monde n' a pas access. j' ais donc crée un .exe sous visual basic qui permet de se connecter à la base, rentré des données et executer des requête simple en SQL. Mais je suis débutant et quand une requête est trés compliquer je bloque. J' ais crée ces requête sous access, elle fonctionne bien mais comment les executer dans une feuille vb comme si on était sous access.
exemple: je voudrais excuter la requête de mis à jours: "Retrait commande" dans la base "sia" qui met à jour la table "quincaillerie"
voici la commande SQL de access:
UPDATE quincaillerie INNER JOIN [saisie commandes] ON quincaillerie.RefArt = [saisie commandes].RefArt SET quincaillerie.QuantStock = [quincaillerie]![QuantStock]-[saisie commandes]![UnitéReservé];
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 20072 21 sept. 2006 à 21:51
Bien !
Je vais te donner un exemple que moi j' utilise mais avec
un Accès direct (DAO).Mais je pense qu' il sera facilement adapté à
un environnement réseau.
Voici donc l' exemple:
Function ADD_DELETE_UPDATE(MaRequete as String) As Boolean
ADD_DELETE_UPDATE= False
'(peuvent être déclarées Public dans un Module)
Dim pWS As Workspace ' espace de travail
Dim pDB As Database 'défini la base de donnée
'(peuvent être ouverts dans Sub Main à l' ouverture du programme)
Set pWS = DBEngine.Workspaces(0)
Set pDB = pWS.OpenDatabase("CheminCompletdetaBase")
On Error GoTo Order_Err 'pour gerer l' erreur
'début de la transaction
DBEngine.Workspaces(0).BeginTrans 'début de la transaction
pDB.Execute MaRequete,dbFailOnError
DBEngine.Workspaces(0).CommitTrans 'fin de la transaction
ADD_DELETE_UPDATE= True
'
Exit Function
Order_Err:
DBEngine.Workspaces(0).Rollback 'annule la transaction
MsgBox Err.Description
End Function
si ma requête est
sQuery="UPDATE quincaillerie INNER JOIN [saisie commandes] ON" _
& " quincaillerie.RefArt = [saisie commandes].RefArt SET " _
& " quincaillerie.QuantStock = [quincaillerie]![QuantStock]-" _
& " [saisie commandes]![UnitéReservé];"
j' appelle ma fonction :
If ADD_DELETE_UPDATE(sQuery)=True Then _
MsgBox "Transaction efféctuée avec succès..."
cs_luz
Messages postés29Date d'inscriptionvendredi 27 décembre 2002StatutMembreDernière intervention12 février 2013 21 sept. 2006 à 22:32
merci chaibat
pour ton aide, mais il que je me forme un peu plus car je n' ais pas tout compris, et je te dirais si cela fonctionne quand j' aurais bien mis tout la où il faut.
Vous n’avez pas trouvé la réponse que vous recherchez ?