Delphi - Con respecto al los campos fkCalculated

 
Vista:

Con respecto al los campos fkCalculated

Publicado por Jorge Saucedo (9 intervenciones) el 10/12/2002 22:44:41
Tengo una aplicacion en donde un campo de una tabla lo defini como fkCalculated (propiedad FieldKind) y en el evento OnCalcField puse el codigo propio para calcular el valor de dicho campo.
El problema es que necesito que el valor obtenido (al momento del evento OnCalcField) sea almacenado en la Tabla. Estuve investigando y aparentemente tengo que poner la Propiedad FielKind con fkInternalCalc.
Las dudas son las siguientes:
- Como le hago ahora para que aparte de calcularme el valor automaticamente me lo guarde en el campo de la tabla.?
- Alguien tiene un ejemplo en donde utilice un campo con esta propiedad (fkInternalCalc)?

NOTA: el campo esta siendo utilizado en un DBGrid y es la ultima columna del mismo; por tanto, al tratar de chechar si el campo seleccionado es el ultimo en el evento OnExitField no es posible checarlo, debido a que al estar en la ultima columna se dispara (antes de la evaluacion) el evento OnNewRecord, por tanto ya estoy en otro registro en lugar del que quiero comparar.

Espero haberme explicado, si alguien puede ayudarme se los agradeceria.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Con respecto al los campos fkCalculated

Publicado por mamcx (533 intervenciones) el 10/12/2002 22:56:53
Un campo calculado es calculado...no mas. Por diseño, si es campo es calculado/derivado de otros campos de la misma tabla, no es practico almacenar el valor calculado porque se podrian presentar inconsistencias.

Una opcion es agregar un nuevo campo a la tabla y usar los Validate para hacer el mismo calculo. Otra es dejar el calculado y agregar un campo el cual no se mueste (pero no le veo la gracia).

Si estas haciendo algo estilo Apellidos+' '+Nombres no tiene sentido almacenar el valor....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar