PDA

Ver la Versión Completa : Controlar multiples updates en ClientDataSet


diegofhernando
16-08-2008, 01:43:02
Que tal amigos foristas, en este caso tengo la necesidad de controlar las posibles excepciones que surjan al momento de actulizar multiples registros usando un ClientDataSet, este tipo de excepciones pueden ser por ejemplo que el usuario no ingreso la informacion pertinente a un campo requerido, lo que sucede actualmente es que si el usuario edita 10 registros y en el 3 registro cometio un error, cuando pretende finalizar su edicion y se genera el evento donde el ClientDataSet va a conciliar los datos con la base de datos, los 7 registros siguientes al registro donde se genero la excepcion no son actualizados.

Básicamente lo que deseo es tratar de "omitir" el error, permitir que los demas registros que estan correctos se salven y mostrar al usuario donde cometió el error. La verdad creo que es algo un poco complicado, pero cada vez encuentro mas y mas caracteriscas formidables en los ClientDataSet, quizas tenga una para este caso :p.

Como siempre gracias por su valioso tiempo.

Salu2 :cool:

diegofhernando
16-08-2008, 22:54:18
Revisando... aun no hay ideas :(

Al González
17-08-2008, 00:10:31
¡Hola!

Empleando la útil opción de búsqueda de estos foros (http://www.clubdelphi.com/foros/search.php), encontré muchos temas relacionados con el método ApplyUpdates. Entre ellos estos (espero te sirvan):

http://www.clubdelphi.com/foros/showthread.php?t=57459&highlight=ApplyUpdates
http://www.clubdelphi.com/foros/showthread.php?t=40961&highlight=ApplyUpdates
http://www.clubdelphi.com/foros/showthread.php?t=50368&highlight=ApplyUpdates
http://www.clubdelphi.com/foros/showthread.php?t=47497&highlight=ApplyUpdates

Un abrazo con muchas ideas al alcance de la mano. ;)

Al González.

diegofhernando
19-08-2008, 14:03:00
Hola Al, lo cierto es que si me habia pasado por lo herramienta de busqueda del foro, sin embargo no encontre algo en donde se argumentara acerca de mi inquietud, de cualquier forma los post que me referiste me han sido de mucha ayuda ;).

Bien finalmente y de acuerdo a el resultado de la "investigacion", implemente en 3 eventos de los ClientDataSet's el codigo necesario para solucionar mi necesidad. Basicamente toda la "magia" se efectua sobre el evento BeforePost que como su nombre lo indica, se ejecuta justo antes de que el dataset haga post de los datos, de esta forma estoy validando lo que para mi es lo mas elemental: Llaves primarias y campos requeridos.

Bien, de momento es todo... gracias por tu ayuda Al :).

Salud2 :cool: