Predmet:Adodb.Command + MySQL Stored Procedura
Deneska naletav na eden cuden problem na koj ne najdov resenie.
Imam Stored procedura koja mi vraka odredeni rezultati vo grid.
Jas naviknav da gi koristam stored procedurie od MSSQL server so ADODB.Command no vo MySQL naidov na problem koj ne mi dava da koristam ADODB.Command odnosno dobivam greska 424.
Ova e codot
PreuzmiIzvorni kôd (Visual Basic): If (txtDataOD) = "__.__.____" Then Me.txtDataOD.Text = "01.01." & Format(Now(), "yyyy")
If (txtDataDO) = "__.__.____" Then Me.txtDataDO.Text = "31.12." & Format(Now(), "yyyy")
Dim RsIzvestaj As ADODB.Recordset
Set RsIzvestaj = New ADODB.Recordset
' Ova treba samo ako e MY SQL ,za MS SQL ne treba
RsIzvestaj.CursorLocation = adUseClient
Dim cmd As ADODB.Command
Set cmd = New ADODB.Command
With cmd
.ActiveConnection = cn
.CommandType = adCmdStoredProc
.CommandText = "spSmetki"
.Parameters.Append cmd.CreateParameter("OdData", adDate, adParamInput, , txtDataOD)
.Parameters.Append cmd.CreateParameter("DoData", adDate, adParamInput, , txtDataDO)
End With
Set RsIzvestaj = cmd.Execute
Set cmd = Nothing
' Test dali ima zapisi vo recordsetot
' RsIzvestaj.MoveFirst
' Do While Not RsIzvestaj.EOF
' MsgBox RsIzvestaj.Fields(2)
' RsIzvestaj.MoveNext
' Loop
' za Data Grid
Set DataGrid1.DataSource = RsIzvestaj
DataGrid1.ReBind
DataGrid1.Refresh
A ova funkcionira bez problem
PreuzmiIzvorni kôd (Visual Basic): If (txtDataOD) = "__.__.____" Then Me.txtDataOD.Text = "01.01." & Format(Now(), "yyyy")
If (txtDataDO) = "__.__.____" Then Me.txtDataDO.Text = "31.12." & Format(Now(), "yyyy")
Dim RsIzvestaj As ADODB.Recordset
Set RsIzvestaj = New ADODB.Recordset
' Ova treba samo ako e MY SQL ,za MS SQL i MSACCESS ne treba
RsIzvestaj.CursorLocation = adUseClient
RsIzvestaj.Open "CALL spSmetki('" & Format(txtDataOD, "yyyy-MM-dd") & "','" & Format(txtDataDO, "yyyy-MM-dd") & "')", cn, adOpenStatic, adLockOptimistic
' Test dali ima zapisi vo recordsetot
' RsIzvestaj.MoveFirst
' Do While Not RsIzvestaj.EOF
' MsgBox RsIzvestaj.Fields(2)
' RsIzvestaj.MoveNext
' Loop
' za Data Grid
Set DataGrid1.DataSource = RsIzvestaj
DataGrid1.ReBind
DataGrid1.Refresh
Googlav malku no ne najdov nekoe objasnuvajne , moze ovde nekoj ima imano iskustvo so ova