Error '3251' luego de consulta
Publicado por Mnemos (11 intervenciones) el 04/04/2008 18:12:10
Soy novato, tal vez la solucion sea muy simple, pero no la descubro..
El error se me presenta al intentar ordenar las columnas de un DataGrid a travez del siguiente codigo:
Private Sub DataGrid1_HeadClick(ByVal ColIndex As Integer)
Static Invertir As Integer
Static DescAsc As String
Dim cmd As ADODB.Command
Set cmd = New ADODB.Command
If ColIndex = Invertir Then
If DescAsc = "DESC" Then
DescAsc = "ASC"
Else: DescAsc = "DESC"
End If
Else
DescAsc = "ASC"
Invertir = ColIndex
End If
With Adodc1
cmd.ActiveConnection = .Recordset.ActiveConnection
cmd.CommandType = adCmdText
cmd.CommandText = "SELECT * FROM Principal" & _
" ORDER BY " & .Recordset.Fields(ColIndex).Name & vbLf & DescAsc
Set .Recordset = cmd.Execute
End With
End Sub
Luego al intentar crear un nuevo registro o editar alguno existente se me presenta el error mencionado:
"Error '3251' en tiempo de ejecución :
El recordset actual no admite actualizaciones. Puede ser una limitación del proveedor o del tipo de bloqueo seleccionado."
Me imagino que ocurre por dejar este recordset 'virtual' con la consulta,.. de ser asi ¿Cómo reestablesco al original?.
¿o Cuál es la solucion que debo adoptar?.
Muchisimas gracias de antemano!
Mnemos
El error se me presenta al intentar ordenar las columnas de un DataGrid a travez del siguiente codigo:
Private Sub DataGrid1_HeadClick(ByVal ColIndex As Integer)
Static Invertir As Integer
Static DescAsc As String
Dim cmd As ADODB.Command
Set cmd = New ADODB.Command
If ColIndex = Invertir Then
If DescAsc = "DESC" Then
DescAsc = "ASC"
Else: DescAsc = "DESC"
End If
Else
DescAsc = "ASC"
Invertir = ColIndex
End If
With Adodc1
cmd.ActiveConnection = .Recordset.ActiveConnection
cmd.CommandType = adCmdText
cmd.CommandText = "SELECT * FROM Principal" & _
" ORDER BY " & .Recordset.Fields(ColIndex).Name & vbLf & DescAsc
Set .Recordset = cmd.Execute
End With
End Sub
Luego al intentar crear un nuevo registro o editar alguno existente se me presenta el error mencionado:
"Error '3251' en tiempo de ejecución :
El recordset actual no admite actualizaciones. Puede ser una limitación del proveedor o del tipo de bloqueo seleccionado."
Me imagino que ocurre por dejar este recordset 'virtual' con la consulta,.. de ser asi ¿Cómo reestablesco al original?.
¿o Cuál es la solucion que debo adoptar?.
Muchisimas gracias de antemano!
Mnemos
Valora esta pregunta


0