TpAUX CAMPO SELECT F5 unit
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:
- Tfva_campos_item.EDIT_SELECT.
- TprxDBEditDateTime.Seleccionar.