Cita:
Empezado por rmendoza83
...segun entiendo que el ClientDataSet deberia ser usado para trabajar con transacciones? pues mantiene los datos localmente y al decirle apply me hace el commit en el servidor real?
|
Yo tiene porqué ir ligado lo uno con lo otro.
TClientDataSet te permite trabajar con datos en local y luego "volcar" todos los cambios de golpe al servidor.
Imagina el siguiente ejemplo; Estás introduciendo una factura y sus líneas de factura; El usuario debe ir añadiendo todas las líneas de la factura (productos) desde un formulario. No puedes mantener todo ese tiempo una transacción abierta y a medida que vas añadiendo líneas estan deben ir almacenandose. Puedes usar un TClientDataset, para ir almacenando las líneas; cambiar, borrar, añadir; Una vez finalizado aplicas todos los cambios en un sólo paso y grabas la factura en Disco. En este caso un TClientDataset puede ser una buena opción.
En cuanto a Rave, no estoy muy "puesto" en el tema.