Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Problema con campo agregado (https://www.clubdelphi.com/foros/showthread.php?t=89749)

Anonymus2009 29-01-2016 14:28:46

Problema con campo agregado
 
Tengo el siguiente problema, al añadir un campo agregado a un ClientDataset (el campo es del tipo Lookup), para obtener la descripción de un campo determinado y desplegarlo en un Grid, no me permite hacer un ApplyUpdates(0) a la tabla correspondiente, ignora la actualización, pero si elimino el campo Lookup funciona perfectamente.
Alguien tiene alguna idea que me pueda ayudar.

Casimiro Notevi 29-01-2016 16:08:47

Mira los enlaces del final de esta página, abajo del todo. Puede que te sirva alguno.

Anonymus2009 29-01-2016 16:29:22

Creo que me he explicado fatal (como siempre), no se trata de un campo agregado si no de un campo LOOKUP.

Casimiro Notevi 29-01-2016 16:55:59

Cita:

Empezado por Anonymus2009 (Mensaje 501698)
Creo que me he explicado fatal (como siempre), no se trata de un campo agregado si no de un campo LOOKUP.

¿Un campo lookup qué es?

Anonymus2009 29-01-2016 19:47:20

Cuando en un Clientdataset añades un campo, este puede ser de varios tipos Lookup, Aggregate o Calculated. El lookup se utiliza para buscar información complementaria de un campo (codigo_de_cliente) tienes el código en la tabla, pero no tienes el nombre y haces lookup a otra tabla.
¡Mas o menos!

Casimiro Notevi 29-01-2016 19:53:37

Nunca lo usé de esa forma, a ver si alguien puede ayudarte.

orodriguezca 30-01-2016 15:05:15

Es extraño, acabo de probar en Delphi 2010 contra una base de datos DB2/400 y funciona perfectamente. Sin embargo sugiero que revises lo siguiente.

  1. Asegurate de que el origen del campo lookup sea un TClientDataSet o cualquier otro dataset bidireccional. Un TSQLQUery al no ser bidireccional presenta problemas con los campos Lookup.

  2. Verifica mediante código si se está presentando algún tipo de error haciendo uso de el evento ReconcileError del ClientDataSet.

  3. haz uso de TSQLMonitor para verificar las sentencias SQL que se están enviando a la base de datos para hacer la actualización.



La franja horaria es GMT +2. Ahora son las 23:51:39.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi