Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Ejecutar procedure OnGetText "manualmente" (https://www.clubdelphi.com/foros/showthread.php?t=81660)

Walterio 04-12-2012 20:51:17

Ejecutar procedure OnGetText "manualmente"
 
Hola a todos...
Trabajo con Delphi 6, ADOQuery, datasetproviders y TClientDataset.
Lo que necesito hacer es lo siguiente:
Tengo algunos campos de mi clientdataset que son del tipo internalcalc a los que les asigno un procedure en su propiedad OnGetText y estos funcionan perfectamente, pero desde una procedure genérica que trata a los campos de mi clientdataset dándole un formato de ancho, si el campo es visible o no desde una grilla genérica, le asigna títulos, etc, necesito ejecutar el OnGetText asociado al campo.
Ya pude detectar que campos tienen asignado este evento :

Código Delphi [-]
For i := 0 to (cdsMaster.FieldCount - 1) do
begin
      If (cdsMaster.Fields[i].FieldKind = fkInternalCalc) then
        If Assigned(cdsMaster.FieldByName(cdsMaster.Fields[i].FieldName).OnGetText ) then
        //Aqui deberia ejecutar el OnText del campo seleccionado...
       //Este es un engendro horrible que intent{e desde mi ignorancia, pero, obviamente, error :
      (cdsMaster.FieldByName(cdsMaster.Fields[i].FieldName).OnGetText as TProcedure).Execute ; 

End;

Sugerencias, son todas bienvenidas.

Muchas gracias.

afxe 05-12-2012 10:12:10

Prueba : cdsMaster.FieldByName(cdsMaster.Fields[i].FieldName).DisplayText, creo que este método tira del onGetText para devolver el dato almacenado en el campo.

Por cierto, no necesitas tipificarlo, puedes poner directamente: cdsMaster.Fields[i].DisplayText

Walterio 05-12-2012 14:08:16

Muchas gracias por la sugerencia, lo pruebo y comento.

Nuevamente gracias y saludos.


La franja horaria es GMT +2. Ahora son las 11:34:10.

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