PDA

Ver la Versión Completa : Eliminar y modificar TDBNavigator


VRO
28-03-2005, 18:01:52
Hola, tengo un problemilla con el TDBNavigator, vereis he creado en mi aplicacion unos botones que hacen referencia a los del TDBNavigator, el problema es que insertar lo inserta perfectamente, pero eliminar y modificar no.

Para eliminar hago lo siguiente:
TDBNavigator.BtnClick(nbDelete);

Para modificar hago:

TDBNavigator.BtnClick(nbEdit); y despues: TDBNavigator.BtnClick(nbPost);

Si quito los botones y utilizo sólo los del TDBNavigator me pasa exactamente lo mismo.

Muchas gracias por su atención y ayuda.

roman
28-03-2005, 18:17:25
El problema en sí no creo que se relacione con el DBNavigator. Habría que saber más detalles acerca del dataset al que esté conectado el DBNavigator. Por ejemplo si es un Query ten en cuenta que una consulta SQL no siempre es modificable (ni edición ni borrado).

Por otra parte no tiene ningún sentido valerse de un DBNavigator en el contexto en que lo usas. Lo único que el DBNavigator hace es presentar una interfaz gráfica mediante la cual el usuario accede a los métodos del dataset. Es decir, el DBNavigator no es quien se encarga de editar, borrar o moverse por los registros; simplemente pasa las acciones al dataset.

Todo dataset tiene métodos para navegar por los registros:

First, Last, Next, Prior, etc.

y métodos para insertar, editar, borrar y actualizar:

Append, Edit, Delete, Post

Así, por ejemplo, en tu botón para borrar, en lugar de poner:

TDBNavigator.BtnClick(nbDelete);

pones

Table1.Delete;

suponiendo que Table1 es el dataset conectado. Y lo mismo para el resto de métodos.

// Saludos

VRO
28-03-2005, 18:39:57
Lo volvi a probar unas cuantas veces mas y la verdad , no se, pero ahora salió bien y no he modificado nada del codigo.

Gracias por tu respuesta, tienes toda la razón es una tontería hacerlo con un navegador conectado a un dataset, pudiendolo hacer sólo con un navegador.

Supongo que esa agilidad para ver las cosas lo da la esperiencia, ó por lo menos eso espero.

Muchas gracias.

Delfino
29-03-2005, 20:04:38
Si quieres obtener el mismo efecto del DBNavigator en botones personalizados pq no pruebas con los TActions, pon un ActionList sobre el form y asigna standard actions del dataset a los botones, es facil y potente..