Ver Mensaje Individual
  #5  
Antiguo 30-08-2008
Avatar de morta71
morta71 morta71 is offline
Miembro
 
Registrado: may 2006
Ubicación: Girona - España
Posts: 30
Reputación: 0
morta71 Va por buen camino
Cita:
Pues te diré que no soy en experto en el tema de las transacciones, pero creo que no es necesario que tengas abierta una transaccion para hacer update en una tabla (mientras no uses dataset's),
Por este motivo no utilizo el DBGrid, ya que debe ir asociado a un dataset que me abrirá una transacción en el momento en que se ejecute un "Edit" en el dataset.

Cita:
creo que en este caso estás hablando de los albaranes (detalle), quizás no sea necesario que hagas un update por cada linea, ya que podrías hacerlo al finalizar la edicion de todas las lineas y, como tú comentabas al principio, solo harás un commit, por supuesto tambien alctualizando la cabecera(¿tabla de pedidos?).
Exactamente me refiero a eso, por ello guardo el detalle en un StringGrid (de momento hasta ahora era la mejor opción que encontré), el problema es que en el Grid puede haber inserciones, ediciones y borrado de líneas, por lo que si no borro y creo las líneas de nuevo, de alguna manera debería guardar una especie de histórico de movimientos para poder reflejarlos adecuadamente en la BD y es ahí donde estoy atascado.

Posiblemente mi método es el de complicarme la vida in extremis, fué la solución para una tabla maestro-detalle sin dependencias, al incluir dependencias el tema se me ha complicado, por lo que deduzco que el planteamiento está mal pero, aparte de utilizar DBGrid + DataSet, no se me ocurren otras soluciones, y por ello la petición de ayuda.

Gracias por tu aporte.
Responder Con Cita