TpAUX CAMPO ONEVENT unit
Descripción
El objeto TpAUX_CAMPO_ONEVENT_unit (Eventos de campos) procesa los auxiliares de tipo EVENTO_CAMPOS, ver detalles en DEV AUXILIARES/EVENTO CAMPO.
Identidad
- Ancestro: TComponent
- Carpeta: C:\DevelopPrx\pPRAGMA
- Archivo: pAUX_CAMPO_ONEVENT_unit.pas
Declaración
const
TpAUX_CAMPO_ONEVENT_ONENTER = 'ONENTER';
TpAUX_CAMPO_ONEVENT_ONEXIT = 'ONEXIT';
TpAUX_CAMPO_ONEVENT_VALIDACION = 'VALIDACION';
TpAUX_CAMPO_ONEVENT_ADVERTENCIA = 'ADVERTENCIA';
type
TpAUX_CAMPO_ONEVENT_unit = class(TComponent)
private
FDataSet: TDataSet;
FClase: String;
FCampo: String;
FQuery: TprxADOQuery;
FTag_Evento: String;
FTag_Tipo: String;
FTag_NoButtons: Boolean;
FSQL_COMANDO: TStringList;
FSQL_MENSAJE: TStringList;
FSQL_MENSAJEQ: TStringList;
FSQL_EXECUTE: TStringList;
FItems: TStringList;
protected
property Tag_Evento: String read FTag_Evento write FTag_Evento;
property Tag_Tipo: String read FTag_Tipo write FTag_Tipo;
property Tag_NoButtons: Boolean read FTag_NoButtons write FTag_NoButtons;
property SQL_COMANDO: TStringList read FSQL_COMANDO write FSQL_COMANDO;
property SQL_MENSAJE: TStringList read FSQL_MENSAJE write FSQL_MENSAJE;
property SQL_MENSAJEQ: TStringList read FSQL_MENSAJEQ write FSQL_MENSAJEQ;
property SQL_EXECUTE: TStringList read FSQL_EXECUTE write FSQL_EXECUTE;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
function Procesar(aEvento: String; var aMsg: String): Boolean;
function ProcesarANTES(aEvento: String; var aMsg: String): Boolean;
property DataSet: TDataSet read FDataSet write FDataSet;
property Clase: String read FClase write FClase;
property Campo: String read FCampo write FCampo;
property Query: TprxADOQuery read FQuery write FQuery;
property Items: TStringList read FItems;
published
end;
Implementación
function Procesar(aEvento: String; var aMsg: String): Boolean
// Procesa los eventos, el argumento aEvento contiene unos de dos:
- TpAUX_CAMPO_ONEVENT_ONENTER = 'ONENTER'.
- TpAUX_CAMPO_ONEVENT_ONEXIT = 'ONEXIT'.
Para saber qué debe procesar.
Modo de uso
El auxiliar se usa de la siguiente manera, primero la inicialización (ejemplo de TprxADODataSetEdit.OnEnterFieldXtd):
prxADOClientDM.pAUX_CAMPO_ONEVENT_unit.DataSet := Self; prxADOClientDM.pAUX_CAMPO_ONEVENT_unit.Clase := ppTableName; prxADOClientDM.pAUX_CAMPO_ONEVENT_unit.Campo := aFieldName;
Primero asignamos las propiedades:
- Dataset que se asigna al mismo componente que está llamando al auxiliar.
- Clase se inicializa al nombre de la tabla del componente que está llamando al auxiliar.
- Campo se inicializa al nombre del campo cuyo valor queremos asignar.
Posteriormente hay que procesar los eventos, en la función TprxADODataSetEdit.OnEnterFieldXtd es:
prxADOClientDM.pAUX_CAMPO_ONEVENT_unit.Procesar(TpAUX_CAMPO_ONEVENT_ONENTER, vMsg);
En la función TprxADODataSetEdit.OnExitFieldXtd es:
Result := prxADOClientDM.pAUX_CAMPO_ONEVENT_unit.Procesar(TpAUX_CAMPO_ONEVENT_ONEXIT, vMsg);
Usos
El auxiliar se usa en:
- TprxADODataSetEdit.OnEnterFieldXtd.
- TprxADODataSetEdit.OnExitFieldXtd.