TpAUX CAMPO SELECT F5 unit

De Pragma Wiki
Revisión del 20:32 22 may 2025 de Luciano Carou (discusión | contribs.) (→‎Modo de uso)
(difs.) ← Revisión anterior | Revisión actual (difs.) | Revisión siguiente → (difs.)
Ir a la navegación Ir a la búsqueda

Descripción

El objeto TpAUX_CAMPO_SELECT_F5_unit (Selección F5 de campos) procesa los auxiliares de tipo SELECT_F5, ver detalles en DEV AUXILIARES/SELECT F5.

Identidad

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

Declaraciones

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

    FQuery: TprxADOQuery;

    FTag_Valida: Boolean;
    FSQL_COMANDO: TStringList;
    FSQL_MENSAJE: TStringList;

    FItems: TStringList;
  protected
    property    Tag_Valida: Boolean read FTag_Valida write FTag_Valida;
    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    EXISTS: Boolean;
    function    SELECT: Boolean;
    function    VALIDAR(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 EXISTS: Boolean

Retorna True si hay algo definido para la clase + campo.

function SELECT: Boolean

Ejecuta el SELECT para elegir un valor de una lista, usa el form TTprxSelectFromGridForm.

function VALIDAR(var aMsg: String): Boolean

Si corresponde validar (porque tiene el tag VALIDA) arma el SELECT y verifica que el valor del campo exista en la 1ra. columna, si no existe no valida. Lo hacemos por si ingresaron el valor a mano. No hacemos otras validaciones.

Modo de uso

El auxiliar se usa de la siguiente manera, primero la inicialización (ejemplo de Tfva_campos_item.EDIT_SELECT):

prxADOClientDM.pAUX_CAMPO_SELECT_F5_unit.DataSet := ADODataSet;
prxADOClientDM.pAUX_CAMPO_SELECT_F5_unit.Clase   := TprxADODataSetEdit(ADODataSet).ppTableName;
prxADOClientDM.pAUX_CAMPO_SELECT_F5_unit.Campo   := Field.FieldName;

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 hacer el SELECT:

if prxADOClientDM.pAUX_CAMPO_SELECT_F5_unit.EXISTS then
   prxADOClientDM.pAUX_CAMPO_SELECT_F5_unit.SELECT

Usos

Este auxiliar se usa en: