FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
DBGrid y Transacciones ADO
Hola a todos
Es claro que normalmente en una DBGrid se pueden hacer modificaciones, eliminaciones e inserciones directamente, pero me asalta la duda si existe alguna manera en la que este tipo de operaciones se pueda manejar con transacciones o de alguna otra manera. Lo que yo he notado es que la DBGrid hace un post automatico cuando se pasa de una fila a otra. La pregunta es porque estoy migrando una aplicación que esta en FoxPro 2.6 y alli los usuarios dentro de una grilla hacen basicamente inserciones y modificaciones, y cuando ya tienen listos todos los datos que requieren, los confirman con un boton. No se si me explique claramente Agradezco cualquier ayuda que me puedan brindar. |
#2
|
||||
|
||||
Saludos
Haciendo una búsqueda (uuf) encontré esto: Solucion de [b]roman[/] http://www.clubdelphi.com/foros/show...+clientdataset
__________________
Van Troi De León (Not) Guía, Code vB:=Delphi-SQL, ¿Cómo? Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto! |
#3
|
||||
|
||||
Saludos
Otra cosa de la cual no me habíá percatado: Este tema no tiene que ver con OOP
__________________
Van Troi De León (Not) Guía, Code vB:=Delphi-SQL, ¿Cómo? Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto! |
#4
|
|||
|
|||
pido disculpas, lo puse en OOP por la DBGrid.
Revise el link, pero no se si entendi bien, debo trabajar con un ADODataSet en lugar del ADOTable? |
#5
|
||||
|
||||
Saludos
Cita:
__________________
Van Troi De León (Not) Guía, Code vB:=Delphi-SQL, ¿Cómo? Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto! |
#6
|
|||
|
|||
perdon de nuevo, lo que sucede es que nunca habia utilizado un ClientDataSet y por eso lo estaba confundiendo con el ADODataSet.
Ya entendi como es el asunto y estoy haciendo unas pruebas para ver como funciona. Gracias Van |
#7
|
|||
|
|||
Dentro de los datos que necesito insertar en la grilla hay un valor autonumerico, pero me lanza un error de violación de llave cuando paso al tercer registro, y el valor autonumerico no se va llenando automaticamente.
Si quito de la tabla el Incremento automatico en SQL Server e ingreso el valor manualmente en la grilla no presenta problemas. |
#8
|
|||
|
|||
Pues si usas ADO al crear la forma del grid puedes usar
Conexion.BeginTrans; y en el boton de aceptar cambios pones: Conexion.CommitTrans; y para cancelar cambios: Conexion.RollbackTrans; notese que no se refiere a la tabla o query, se refiere al componente de conexion |
#9
|
|||
|
|||
Gracias Luis, la verdad es que los inconvenientes los estoy teniendo con el bendito autonumerico, sea con transacciones o Clientdataset. En las transacciones porque al darle rollback no guarda nada pero si incrementa el autonumerico, y en los Clientdataset no me genera el autonumerico automaticamente.
Sera que me estoy complicando mucho? |
|
|
|