Ik heb een applicatie geschreven op een Pentium 4 met Windows XP.
Deze applicatie gebruikt ADO 2.7 componenten en JET 4.0
De applicatie werkt op deze PC prima.
Echter!!!
Wanneer ik deze applicatie draai op een Pentium 2 met Windows 98 SE geeft het problemen.
Ik krijg hier een runtime error wanneer ik een bewaar functie op de database uitvoer.
De foutmelding die ik krijg is:
Runtime error -2147217887
Bij een OLE DB bewerking die uit meerdere stappen bestaat, zijn fouten opgetreden.
Controleer alle OLE DB statuswaarden als deze beschikbaar zijn.
Er is niets gewijzigd.
Mijn code ziet er als volgt uit:
Voor de connectie:
-----------------------------------------------------
strCn = App.Path + "\data\mijndata.mdb"
With Conn
.Provider = "Microsoft.JET.OLEDB.4.0"
.CommandTimeout = 500
.ConnectionTimeout = 500
.Open strCn, "", ""
End With
De bewaar functie:
-----------------------------------------------------
Public Function Bewaar() As Boolean
Dim lvobjRecordset As New ADODB.Recordset
Dim strSQL As String
Bewaar = True
strSQL = "SELECT * FROM klant WHERE klant_ID = " & cvlKlantID
With lvobjRecordset
Set .ActiveConnection = cvobjDBConnection
.LockType = adLockOptimistic
.CursorLocation = adUseServer
.CursorType = adOpenDynamic
.Open strSQL
If .EOF Then
If cvlKlantDbId <> -1 Then
Bewaar = False
End If
.AddNew
End If
.Fields("Klant_Code").Value = KlantCode
.Fields("Voorletters").Value = Voorletters
.Fields("Achternaam").Value = Achternaam
.Fields("tussenvoegsel").Value = Tussenvoegsel
.Fields("straatnaam").Value = Straatnaam
.Fields("Huisnummer").Value = Huisnummer
.Fields("Toevoeging").Value = Toevoeging
.Fields("Postcode").Value = Postcode
.Fields("Woonplaats").Value = Woonplaats
.Update
cvlKlantDbId = .Fields("Klant_ID").Value
End With
Set lvobjRecordset = Nothing
End Function
-----------------------------------------------------
De foutmeling komt op de regel met het teken
Dit vind ik een vreemde plaats. De .Addnew gaat dus kennelijk goed ??
Weet iemand een oplossing
Ik zou het fijn vinden als er wat experts hun gedachten over lieten.
Ik kom er namelijk echt niet uit
Deze applicatie gebruikt ADO 2.7 componenten en JET 4.0
De applicatie werkt op deze PC prima.
Echter!!!
Wanneer ik deze applicatie draai op een Pentium 2 met Windows 98 SE geeft het problemen.
Ik krijg hier een runtime error wanneer ik een bewaar functie op de database uitvoer.
De foutmelding die ik krijg is:
Runtime error -2147217887
Bij een OLE DB bewerking die uit meerdere stappen bestaat, zijn fouten opgetreden.
Controleer alle OLE DB statuswaarden als deze beschikbaar zijn.
Er is niets gewijzigd.
Mijn code ziet er als volgt uit:
Voor de connectie:
-----------------------------------------------------
strCn = App.Path + "\data\mijndata.mdb"
With Conn
.Provider = "Microsoft.JET.OLEDB.4.0"
.CommandTimeout = 500
.ConnectionTimeout = 500
.Open strCn, "", ""
End With
De bewaar functie:
-----------------------------------------------------
Public Function Bewaar() As Boolean
Dim lvobjRecordset As New ADODB.Recordset
Dim strSQL As String
Bewaar = True
strSQL = "SELECT * FROM klant WHERE klant_ID = " & cvlKlantID
With lvobjRecordset
Set .ActiveConnection = cvobjDBConnection
.LockType = adLockOptimistic
.CursorLocation = adUseServer
.CursorType = adOpenDynamic
.Open strSQL
If .EOF Then
If cvlKlantDbId <> -1 Then
Bewaar = False
End If
.AddNew
End If
.Fields("Klant_Code").Value = KlantCode
.Fields("Voorletters").Value = Voorletters
.Fields("Achternaam").Value = Achternaam
.Fields("tussenvoegsel").Value = Tussenvoegsel
.Fields("straatnaam").Value = Straatnaam
.Fields("Huisnummer").Value = Huisnummer
.Fields("Toevoeging").Value = Toevoeging
.Fields("Postcode").Value = Postcode
.Fields("Woonplaats").Value = Woonplaats
.Update
cvlKlantDbId = .Fields("Klant_ID").Value
End With
Set lvobjRecordset = Nothing
End Function
-----------------------------------------------------
De foutmeling komt op de regel met het teken
Dit vind ik een vreemde plaats. De .Addnew gaat dus kennelijk goed ??
Weet iemand een oplossing
Ik zou het fijn vinden als er wat experts hun gedachten over lieten.
Ik kom er namelijk echt niet uit