TpAUX CAMPO ONEVENT unit

De Pragma Wiki
Ir a la navegación Ir a la búsqueda

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: