La especificación TClientDataSet Aggregates no se agrega automáticamente al crear un campo Aggregate

StackOverflow https://stackoverflow.com/questions/22212

  •  09-06-2019
  •  | 
  •  

Pregunta

Necesito crear un campo agregado en un TClientDataSet, pero como se dice en los documentos:

Elija Aceptar.El campo agregado recientemente definido se agrega automáticamente al conjunto de datos del cliente y su propiedad de agregados se actualiza automáticamente para incluir la especificación agregada adecuada.

Cuando agrego un nuevo campo agregado, la especificación agregada no se agrega a los Agregados de TClientDataSet, por lo tanto, no puedo usar su OnUpdateMethod.

También intenté manejar el evento OnChange de mi nuevo Aggregate Field, pero no se activa en absoluto.

¿Estoy haciendo algo mal?Solo quiero tener un campo agregado y activar un evento en el que cambie su valor.

¿Está esto roto en Delphi?Porque lo que hay en la documentación no refleja el comportamiento real.

editar:@Michal Sznajder Estoy usando Delphi 2007

¿Fue útil?

Solución

Creo que es posible que se esté confundiendo entre los objetos TAggregate y TAggregateField, y la documentación de Delphi probablemente no esté ayudando.

AFAICT, los objetos TAggregateField se 'recalculan' automáticamente y se pueden vincular a controles con reconocimiento de datos como TDBText, pero no tienen ningún evento OnUpdate.

Los objetos "TAggregate", por otro lado, tienen un evento OnUpdate, pero no pueden vincularse a controles que tengan en cuenta los datos.

Esto puede resultar esclarecedor: http://dn.codegear.com/article/29272

Otros consejos

¿Qué versión de Delphi?Intenté limpiar la aplicación D7 y se agregó TAggregateField.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top