Problemas con ADO al Conectar SQL Server
Buenas tardes Foro, espero me puedan ayudar a buscar una solución al problema que les presento:
tengo un form con un Adoconnection y su respectivo connectionstring, que esta indicando la base de datos que tengo en mi servidor. La conección no tiene problemas, pero realizo el siguiente manejo: tengo una grilla y la tengo conectada a una Ado Query, cuando quiero activar esta Sql me aparece el siguiente mensaje: " El valor de BOF o EOF es True, o el actual registro se elimino; la operación solicitada requiere un registro actual" lo mas raro es que aún no he hecho nada, y esta es la rutina que me lo da. MySql := 'select cod_tipo, nom_tipo '+ 'from tipo_doc order by cod_tipo'; QTipoDoc.Close; -------------> Aqui se cae QTipoDoc.sql.clear; QTipoDoc.SQL.Add(MySql); QTipoDoc.Open; QTipoDoc.First; como pueden darse cuenta no alcanzo a realizar nada. Esto lo hago para no tomar la base en forma directa y tener en la grilla un query de la tabla. Espero me puedan ayudar...... |
Ado
Mira no se si te sirva, pero yo para conectarme a una grilla como le llamas, uso un datasource, es decir el query lo conecto a un datasource y este es el que llamo en el grid, saludos.
|
|
inclui la rutina pero me sigue dando el mismo error cuando trato de hacer Close. la verdad es que no se que pasa, ya que, es una instrucción rutinaria, a menos que sea algo de conección y que no estoy considerando.
|
Bastante raro. Pues solo queda probar la recomendación de LucianoRey.
Prueba usando un Dataset ->Query ->DBGrid y nos cuentas como te fue. |
Lo que pasa es que posterior a esto, es decir, al ADD al SQL de mi Query se lo asigno a un dataset, por lo que no puedo hacer nada.....
|
me di cuenta de una caracteristica:
1.- hago el mismo proceso para otra tabla, pero, esa tabla ya tiene datos y no se cae. 2.- la tabla en cuestión no tiene datos y al ingresarle un dato por el administrador corporativo, y volver a entrar al programa no presenta problemas. por lo que deduzco que sólo me da con las tablas en blanco.....igual sigue siendo un gran problema...... |
Cita:
Realmente en tú código no veo que estás haciendo esto....:confused: y además creo que tienes errado algunos conceptos, un Tquery es un dataset, entonces a que dataset se lo estás asignando, a una grilla ?, sí es así, esto es un concepto que tienes mal empleado..Los TQuery,Ttable, son dataset, que en definitiva signfica un conjunto de datos. Saludos. |
MySql := 'select cod_tipo, nom_tipo '+
'from tipo_doc order by cod_tipo'; with DtmTablas do begin with QTipoDoc do begin if Active then Close; ---> aqui se cae si no tiene datos y no SQL.clear; se cae si tiene por lo menos 1 reg. SQL.Add(MySql); ----> asigno consulta a mi query Open; y lo activo First; if Eof then begin btnEditar.Enabled := False; BtnBorrar.Enabled := False; --> Activo o desactivo botones btnImprimir.Enabled := False; para la pantalla btnExportar.Enabled := False; end else begin btnEditar.Enabled := True; BtnBorrar.Enabled := True; btnImprimir.Enabled := True; btnExportar.Enabled := True; end; end; DataSource1.DataSet := QTipoDoc; --> asigno el resultado a la end; grid para poder visualizarlo |
Hola:
Al parecer se confunde porque referencias un Table y Query con With y esto podría dar un problema, por ahora quita el With y referencialos por completo. El active al parecer es un metodo del Query y del table, y además el table no le veo el uso en tú código. El dataset del datasource asignalo en tiempo de diseño como dijo LucianoRey y no por cógigo. Verifica bien el uso de la tabla y del query, creo que por ahí vienen los problemas. Saludos. |
Version de Delphi, version de ADO, version de Sql Server y codigo completo.
Este es un error "viejisimo" y esta documentado. Por donde va el agua depende de los datos anteriores... |
Cita:
Saludos. |
ustedes creen que se debe a que el componente ADO que tengo está con problemas.....? trabajo con DELPHI 5
|
Si se puede actualizar. De hecho el problema parece ser especifico de la version 5:
http://info.borland.com/devsupport/delphi/mdac26.html |
Hola:
Muchisimas gracias. :D |
muchas gracias...... al foro y a los compañeros que escribieron..... lo que faltaba era una actualización del componente ADO, baje esos Update y actualice mi Delphi para despues correr el programa y no tuve ningun problema. Las direcciones de donde baje los Update son:
http://info.borland.com/devsupport/delphi/mdac26.html http://info.borland.com/devsupport/d...501readme.html Espero poder ayudar en cualquier otro foro o consulta..... |
La franja horaria es GMT +2. Ahora son las 21:04:08. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi