TpAUX CAMPO EVALUACIONS unit

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

Descripción

El objeto TpAUX_CAMPO_EVALUACIONS_unit (Evaluaciones de clases, procesamiento) procesa los auxiliares de tipo EVALUACION, ver detalles en DEV AUXILIARES/EVALUACION.

Identidad

  • Ancestro: TComponent
  • Carpeta: C:\DevelopPrx\pPRAGMA
  • Archivo: pAUX_CAMPO_EVALUACIONS_unit.pas

Declaración

type
  TpAUX_CAMPO_EVALUACIONS_unit = class(TComponent)
  private
    FDataSet: TDataSet;
    FClase: String;
    FCampo: String;

    FQuery: TprxADOQuery;

    FTag_Tipo: String;
    FSQL_COMANDO: TStringList;
    FSQL_MENSAJE: TStringList;

    FItems: TStringList;
  protected
    function    Es_TipoAdvertencia: Boolean;
    function    Es_TipoError: Boolean;

    property    Tag_Tipo: String read FTag_Tipo write FTag_Tipo;
    property    SQL_COMANDO: TStringList read FSQL_COMANDO write FSQL_COMANDO;
    property    SQL_MENSAJE: TStringList read FSQL_MENSAJE write FSQL_MENSAJE;
  public
    constructor Create(AOwner: TComponent); override;
    destructor  Destroy; override;

    function    Procesar(var aMsg: String): Boolean;
    function    F5Filter: String;

    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 Es_TipoAdvertencia: Boolean

Retorna True si la evaluación es de tipo ADVERTENCIA.

function Es_TipoError: Boolean

Retorna True si la evaluación es de tipo ERROR.

function Procesar(var aMsg: String): Boolean

Procesa los comandos de la evaluación para validar que el valor ingresado en el control de edición sea válido, se ejecuta en la función OnExitFieldXtd de TprxADODataSetEdit.

function F5Filter: String

Arma la sentencia SQL según la evaluación para agregar al SELECT estándar usado en los controles de edición cuando presionamos F5 para elegir un valor de la lista, se ejecuta en la función EDIT_SELECT de Tfva_campos_item.

Modo de uso

Habitualmente el auxiliar se usa de la siguiente manera (el ejemplo es de TprxADODataSetEdit.OnExitFieldXtd).

Antes de usar el auxiliar hay que inicializarlo:

prxADOClientDM.pAUX_CAMPO_EVALUACIONS_unit.DataSet := Self;
prxADOClientDM.pAUX_CAMPO_EVALUACIONS_unit.Clase   := ppTableName;
prxADOClientDM.pAUX_CAMPO_EVALUACIONS_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 del componente que está llamando al auxiliar.

Posteriormente se llama directamente a la función Procesar, en la misma función mencionada previamente:

Result := prxADOClientDM.pAUX_CAMPO_EVALUACIONS_unit.Procesar(vMsg);

Aquí valida que el valor del campo esté incluido dentro de la evaluación.

Usos