error con DataGrid
Al intentar cargar un datagrid de la siguiente manera
rs.Open "SELECT * FROM articulos", consqlserver, adOpenDynamic, adLockOptimistic
If Not rs.EOF Then
Set DataGrid1.DataSource = rs
DataGrid1.AllowDelete = True
DataGrid1.AllowUpdate = False
End If
me da el error : "El conjunto de filas no admite marcadores"
alguien sabe como solucionarlo. Gracias
rs.Open "SELECT * FROM articulos", consqlserver, adOpenDynamic, adLockOptimistic
If Not rs.EOF Then
Set DataGrid1.DataSource = rs
DataGrid1.AllowDelete = True
DataGrid1.AllowUpdate = False
End If
me da el error : "El conjunto de filas no admite marcadores"
alguien sabe como solucionarlo. Gracias
Mira la forma en que Habre el Recorset..
rs.Open "SELECT * FROM articulos", consqlserver, adOpenStatic, adpessimict
rs.Open "SELECT * FROM articulos", consqlserver, adOpenStatic, adpessimict
este codigo esta dentro del form load, lo que quiero es que me muestre los datos para luego poder dar de baja los registros que yo quiera, pero no llego a ver ni el formulario, por que salta el error
gracias
gracias
me refería a si antes de rs.Open ... tienes puesto:
rs.CursorLocation = adUseClient
si no lo tienes puedes probarlo a ver si se soluciona el error.
rs.CursorLocation = adUseClient
si no lo tienes puedes probarlo a ver si se soluciona el error.
lo he puesto y no funciona, me da el error que dije antes con los cambios que me dijiste.
Gracias por tu molestia, pero es que yo me estoy volviendo loco
Gracias por tu molestia, pero es que yo me estoy volviendo loco
bueno, prueba lo mismo, establecerlo del lado del cliente, pero en el objeto Connection que tienes.
veamos, como dices que lo haces en el Form_Load, prueba una cosa: pon ese código en un botón de prueba, a ver si funciona después de haberse cargado el formulario.
Si funciona, entonces veremos porqué falla en el _Load
Si funciona, entonces veremos porqué falla en el _Load
ya he metido el boton y el codigo , ahora veo el formulario, y cuando doy al boton me da el error de antes
Gracias
Gracias
Te muestro el codigo, quitando el boton que puse antes. Esto es de la forma original
Private Sub Form_Load()
rs.Open "SELECT * FROM articulos", consqlserver, adOpenDynamic, adLockOptimiostic
If Not rs.EOF Then
Set DataGrid1.DataSource = rs
DataGrid1.AllowDelete = True
DataGrid1.AllowUpdate = False
End If
End Sub
Y esta es la forma en la que creo la conexion
Sub ConexionSqlServer()
Dim strServidor As String
Dim strBBDD As String
strServidor = "w2000antonio"
strBBDD = "tecnologias"
With consqlserver
.Provider = "SQLOLEDB"
.ConnectionString = "Server=" & _
strServidor & _
";Initial Catalog=" & strBBDD & _
";uid=*******;pwd=*******;"
.Open
End With
Salir:
Exit Sub
End Sub
Private Sub Form_Load()
rs.Open "SELECT * FROM articulos", consqlserver, adOpenDynamic, adLockOptimiostic
If Not rs.EOF Then
Set DataGrid1.DataSource = rs
DataGrid1.AllowDelete = True
DataGrid1.AllowUpdate = False
End If
End Sub
Y esta es la forma en la que creo la conexion
Sub ConexionSqlServer()
Dim strServidor As String
Dim strBBDD As String
strServidor = "w2000antonio"
strBBDD = "tecnologias"
With consqlserver
.Provider = "SQLOLEDB"
.ConnectionString = "Server=" & _
strServidor & _
";Initial Catalog=" & strBBDD & _
";uid=*******;pwd=*******;"
.Open
End With
Salir:
Exit Sub
End Sub
no lo entiendo, de esta forma debería corregirse ese error:
With rs
.CursorLocation = adUseClient
.Open "SELECT * FROM articulos", consqlserver, adOpenDynamic, adLockOptimistic, adCmdText
End With
If Not rs.EOF Then
Set DataGrid1.DataSource = rs
DataGrid1.AllowDelete = True
DataGrid1.AllowUpdate = False
End If
With rs
.CursorLocation = adUseClient
.Open "SELECT * FROM articulos", consqlserver, adOpenDynamic, adLockOptimistic, adCmdText
End With
If Not rs.EOF Then
Set DataGrid1.DataSource = rs
DataGrid1.AllowDelete = True
DataGrid1.AllowUpdate = False
End If
Si ya esta solucionado, es que cuando probe con lo del cursorlocation, tenia un error en la sintactico, y por eso me petaba. muchas gracias, y podrias decirme por que hace falta esta sentecia ( es que no tengo mucha esperiencia en vb) y otra mas, da igual que ponga
consqlserver.CursorLocation = adUseClient
que
rs.CursorLocation = adUseClient
puedes explicarmelo un poco
muchas gracias
consqlserver.CursorLocation = adUseClient
que
rs.CursorLocation = adUseClient
puedes explicarmelo un poco
muchas gracias
bueno, ya que dices que no tienes experiencia en VB y que el problema se debía a un error de sintaxis, el principal consejo que debes tener en cuenta es que en la sección declaraciones de las páginas de códigos siempre tengas 'Option Explicit', para que no te pasen cosas como esa.
Y ahora que has mencionado que era un error de sintaxis me he fijado en que tenías escrito 'adLockOptimiostic', y si hubiera estado activada la comprobación de variables, el mismo VB te habría avisado.
Puedes activar la comprobación de variables desde el menú Herramientas>Opciones, y en la ficha Editor activa la casilla "Requerir declaración de variables".
Y bueno... ahora debo desconectar, pero dentro de unas horas revisaré si alguien te lo ha explicado, sino intentaré explicarte de alguna forma los "porqués" de esas propiedades.
Un saludo.
Y ahora que has mencionado que era un error de sintaxis me he fijado en que tenías escrito 'adLockOptimiostic', y si hubiera estado activada la comprobación de variables, el mismo VB te habría avisado.
Puedes activar la comprobación de variables desde el menú Herramientas>Opciones, y en la ficha Editor activa la casilla "Requerir declaración de variables".
Y bueno... ahora debo desconectar, pero dentro de unas horas revisaré si alguien te lo ha explicado, sino intentaré explicarte de alguna forma los "porqués" de esas propiedades.
Un saludo.
he probado como dices, y me da un error con los parametros " argumentos incorrectos, fuera del intervalo permitido o en conflicto con otros"
de todas formas gracias.
No se que podra ser, con una base de datos access funciona, pero he metido la conexion a sql, y me da el error que te comente antes.
Lo dicho Gracias
de todas formas gracias.
No se que podra ser, con una base de datos access funciona, pero he metido la conexion a sql, y me da el error que te comente antes.
Lo dicho Gracias
