Vb6:erreue d'execution '91'
Fermé
minoula2006
-
22 sept. 2009 à 10:58
gregouz62 Messages postés 125 Date d'inscription mercredi 26 août 2009 Statut Membre Dernière intervention 20 octobre 2009 - 23 sept. 2009 à 09:59
gregouz62 Messages postés 125 Date d'inscription mercredi 26 août 2009 Statut Membre Dernière intervention 20 octobre 2009 - 23 sept. 2009 à 09:59
A voir également:
- Vb6:erreue d'execution '91'
- Vb6 - Télécharger - Divers Utilitaires
- Vb6 msdn ✓ - Forum Logiciels
- Vb6 freefile - Forum VB / VBA
- Vb6 randomize - Forum VB / VBA
- Listbox vb6 ✓ - Forum VB / VBA
12 réponses
Private Sub Form_Load() Set Text1.DataSource = Rsmq 'pour l'incrementation dans la base Set Text2.DataSource = Rsmq indic = 0 If VarMAJ = "A" Then Fmarque.Caption = "ÅÖÇÝÉ ÇáÑãÜÜÒ" Command1.Visible = True Command8.Visible = False Command9.Visible = False Command10.Visible = False Command11.Visible = False OuvBase RsMqNum, "SELECT * From marque order by cod_marq" If RsMqNum.RecordCount <> 0 Then 'aller au derniere RsMqNum.MoveLast 'il va lire le dernier enregistrement : fields(lire) codmarq = RsMqNum.Fields("cod_marq") + 1 Else 'si c'est le 1er enregistrement codmarq = 1 End If Rsmq.AddNew Text2.Text = codmarq End If If VarMAJ = "M" Then Fmarque.Caption = "ÊÍííä ÈíÇä ÇáÜÜÑãÒ" Command1.Visible = False Command8.Visible = True Command9.Visible = True Command10.Visible = True Command11.Visible = True End If If VarMAJ = "S" Then Fmarque.Caption = "ÍÐÝ ÇáÑãÜÒ " Command1.Visible = True Command8.Visible = False Command9.Visible = False Command10.Visible = False Command11.Visible = False Text1.Locked = True End If End Sub
celle en gras : coloré en jaune
mezzo915
Messages postés
25
Date d'inscription
mardi 15 septembre 2009
Statut
Membre
Dernière intervention
30 octobre 2009
2
22 sept. 2009 à 11:04
22 sept. 2009 à 11:04
Tu as utilisé un variable dont VB ne connait pas la valeur, c'est surement une faute de frappe de ta part.
gregouz62
Messages postés
125
Date d'inscription
mercredi 26 août 2009
Statut
Membre
Dernière intervention
20 octobre 2009
11
22 sept. 2009 à 14:30
22 sept. 2009 à 14:30
Bonjour,
Serait il possible d'avoir la déclaration de tes variables notamment la déclaration de Rsmq stp.
Cdt
Serait il possible d'avoir la déclaration de tes variables notamment la déclaration de Rsmq stp.
Cdt
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Public CnEle As Connection
Public Commande As Integer
Dim indic As Integer
Public RMessage As Long
Public VarMAJ, FenActive As String
Public RsMqNum, RsTypNum, RsSerNum, RsUtlNum As Recordset
Public Rstyp As Recordset
Public Rsmq As Recordset
Public RsSer As Recordset
Public Rsutl As Recordset
Public Rsmat As Recordset
Public Commande As Integer
Dim indic As Integer
Public RMessage As Long
Public VarMAJ, FenActive As String
Public RsMqNum, RsTypNum, RsSerNum, RsUtlNum As Recordset
Public Rstyp As Recordset
Public Rsmq As Recordset
Public RsSer As Recordset
Public Rsutl As Recordset
Public Rsmat As Recordset
gregouz62
Messages postés
125
Date d'inscription
mercredi 26 août 2009
Statut
Membre
Dernière intervention
20 octobre 2009
11
22 sept. 2009 à 16:46
22 sept. 2009 à 16:46
Merci,
Je ne suis pas sur de mon coup mais essaie la syntaxe suivante :
Tu remplaces les lignes :
par:
Dis nous si ça marche.
Cdt
Je ne suis pas sur de mon coup mais essaie la syntaxe suivante :
Tu remplaces les lignes :
Rsmq.AddNew Text2.Text = codmarq
par:
With Rsmq .AddNew !codmarq = Text2.Text .Update End With
Dis nous si ça marche.
Cdt
william7007
Messages postés
335
Date d'inscription
dimanche 28 décembre 2008
Statut
Membre
Dernière intervention
23 mars 2010
46
22 sept. 2009 à 17:28
22 sept. 2009 à 17:28
Slt
vous avez bel et bien déclarer tes objets mais je ne voie pas leurs instenciation un truc du genre
pour dire vrai moi je n'ai jamais utilisé les recordset de la façon donc vous le faites voici ce que je fais d'habitute
j'inporte la référence Microsoft ActiveX Data Object 2.0 Library
et là je déclare mes objets comme suit.
vous avez bel et bien déclarer tes objets mais je ne voie pas leurs instenciation un truc du genre
Public rsmq As RecordSet rsmq = new RecordSet
pour dire vrai moi je n'ai jamais utilisé les recordset de la façon donc vous le faites voici ce que je fais d'habitute
j'inporte la référence Microsoft ActiveX Data Object 2.0 Library
et là je déclare mes objets comme suit.
Public adoCon As ADODB.Connection Pubic rsmq As ADODB.RecordSet puis avant de les utiliser je les instancie adoCon = new ADODB.Connection rsmq = New ADODB.RecordSet ... cdlt. ;-)
merci de votre aide mes amis j'ai bien vérifierm et sa va et sa va mnt :))
mé j'ai un autre pb :( qd je clik sur ok ^pour enregistrer l'ajout d'un donner un msg d'erreur d'exécution
[microsoft][pilote odbc microsoft access] definition de l'attribut impossible a ce stage
celui en gras coloré en jaune chez moi???
mé j'ai un autre pb :( qd je clik sur ok ^pour enregistrer l'ajout d'un donner un msg d'erreur d'exécution
[microsoft][pilote odbc microsoft access] definition de l'attribut impossible a ce stage
Public Sub Enregistrer(Rs) CnEle.BeginTrans If (VarMAJ = "A") Then Rs.UpdateBatch End If If VarMAJ = "M" Then Message.Caption = "ÍÐÇÑí" Message.Label1.ForeColor = 32768 Message.Label1.Caption = "åá ÊÑíÏ ÊÓÌíá åÐå ÇáãÚáæãÇÊ ¿" Message.Show 1 If RMessage = 1 Then Rs.UpdateBatch Rs.MoveNext Rs.MovePrevious Else Rs.CancelUpdate End If End If If (VarMAJ = "S") Then If Rs.RecordCount <> 0 Then Message.Caption = "ÍÐÇÑí" Message.Label1.ForeColor = 192 Message.Label1.Caption = "åá ÃäÊ ãÊÄßÏ ÍÐÝ åÐå ÇáãÚáæãÇÊ ¿" Message.Show 1 If RMessage = 1 Then Rs.Delete Rs.UpdateBatch End If End If End If CnEle.CommitTrans End Sub
celui en gras coloré en jaune chez moi???
mezzo915
Messages postés
25
Date d'inscription
mardi 15 septembre 2009
Statut
Membre
Dernière intervention
30 octobre 2009
2
22 sept. 2009 à 23:10
22 sept. 2009 à 23:10
Alors la... j'ai jamais eu ce problème auparavant :-/ un peu de recherche s'impose!
gregouz62
Messages postés
125
Date d'inscription
mercredi 26 août 2009
Statut
Membre
Dernière intervention
20 octobre 2009
11
23 sept. 2009 à 09:16
23 sept. 2009 à 09:16
Bonjour,
Les transactions se font sur un objet de type Workspace voilà sans doute pourquoi ça ne marche pas !
Cdt
Les transactions se font sur un objet de type Workspace voilà sans doute pourquoi ça ne marche pas !
Cdt
gregouz62
Messages postés
125
Date d'inscription
mercredi 26 août 2009
Statut
Membre
Dernière intervention
20 octobre 2009
11
23 sept. 2009 à 09:59
23 sept. 2009 à 09:59
Je te passe un extrait de la msdn library visual studio 6.0 ça pourra t'éclairé j'espère:
Et maintenant l'exemple donné par cette même msdn:
C'est l'exemple donné par la msdn library pour l'utilisation des transactions.
Donc il te faut instancier un objet workspace, n'hésite pas à te renseigner sur ce sujet car, je ne maitrise pas trop les workspace.
A priori tu peux utiliser l'objet workspace par défaut comme il est fait ici.
Les méthodes de transaction gèrent de la manière suivante le traitement des transactions au cours d'une session définie par un objet Workspace : BeginTrans commence une nouvelle transaction. CommitTrans met fin à la transaction en cours et enregistre les modifications. Rollback met fin à la transaction en cours et restaure les bases de données de l'objet Workspace dans l'état dans lequel elles étaient au début de la transaction en cours. Syntaxe workspace.BeginTrans | CommitTrans [dbForceOSFlush] | Rollback L'espace réservé workspace est une variable objet qui représente l'objet Workspace contenant les bases de données qui font l'objet de transactions.
Et maintenant l'exemple donné par cette même msdn:
Sub BeginTransX() Dim strName As String Dim strMessage As String Dim wrkDefault As Workspace Dim dbsNorthwind As Database Dim rstEmployees As Recordset ' Obtient l'objet Workspace par défaut. Set wrkDefault = DBEngine.Workspaces(0) Set dbsNorthwind = OpenDatabase("Comptoir.mdb") Set rstEmployees = _ dbsNorthwind.OpenRecordset("Employés") ' Démarre la transaction externe. wrkDefault.BeginTrans ' Démarre la transaction principale. wrkDefault.BeginTrans With rstEmployees ' Effectue un boucle sur le jeu ' d'enregistrements et demande à l'utilisateur ' s'il souhaite changer la fonction d'un employé ' précisé. Do Until .EOF If !Fonction = "Représentant(e)" Then strName = !Nom & ", " & !Prénom strMessage = "Employé : " & strName & vbCr & _ "Changer la fonction en Responsable comptes ?" ' Change la fonction de l'employé indiqué. If MsgBox(strMessage, vbYesNo) = vbYes Then .Edit !Fonction = "Responsable comptes" .Update End If End If .MoveNext Loop ' Demande si l'utilisateur souhaite valider ' toutes les modifications apportées ci-dessus. If MsgBox("Enregistrer toutes les modifications ?" _ , vbYesNo) = vbYes Then wrkDefault.CommitTrans Else wrkDefault.Rollback End If ' Imprime les données en cours dans le jeu ' d'enregistrements. .MoveFirst Do While Not .EOF Debug.Print !Nom & ", " & !Prénom & _ " - " & !Fonction .MoveNext Loop ' Révoque toutes les modifications effectuées ' par l'utilisateur pour cette démonstration. wrkDefault.Rollback .Close End With dbsNorthwind.Close End Sub
C'est l'exemple donné par la msdn library pour l'utilisation des transactions.
Donc il te faut instancier un objet workspace, n'hésite pas à te renseigner sur ce sujet car, je ne maitrise pas trop les workspace.
A priori tu peux utiliser l'objet workspace par défaut comme il est fait ici.