TpAUX CLASE SELECCION CRITERIOS unit
Descripción
El objeto TpAUX_CLASE_SELECCION_CRITERIOS_unit (SQL para seleccionar criterios múltiples en consultas) procesa los auxiliares de tipo SELECCION_CRITERIOS, ver detalles en DEV AUXILIARES/SELECCION CRITERIOS.
Identidad
- Ancestro: TComponent
- Carpeta: C:\DevelopPrx\pPRAGMA
- Archivo: pAUX_CLASE_SELECCION_CRITERIOS_unit.pas
Declaración
type TpAUX_CLASE_SELECCION_CRITERIOS_unit = class(TComponent) private FDataSet: TDataSet; FClase: String; FQuery: TprxADOQuery; FSQL_COMANDO: TStringList; FItems: TStringList; FItems_Index: Integer; protected public constructor Create(AOwner: TComponent); override; destructor Destroy; override; property DataSet: TDataSet read FDataSet write FDataSet; property Clase: String read FClase write FClase; function Execute: Boolean; property Query: TprxADOQuery read FQuery write FQuery; property Items: TStringList read FItems; property Items_Index: Integer read FItems_Index; property SQL_COMANDO: TStringList read FSQL_COMANDO write FSQL_COMANDO; published end;
Implementación
function Execute: Boolean
Carga el comando definido para la selección de criterios.
Modo de uso
Habitualmente el auxiliar se usa de la siguiente manera (ejemplo tomado de TTfvsDBClientFrameGridConsultas.fvsDBGridResultadoGetPopupOptions):
prxADOClientDM.pAUX_CLASE_SELECCION_CRITERIOS_unit.DataSet := DataSource.DataSet; // QueryRESULTADO; prxADOClientDM.pAUX_CLASE_SELECCION_CRITERIOS_unit.Clase := TprxADODataSetEdit(TprxADOQuery(QueryRESULTADO).MasterDataSet).ppTableName;
Primero asignamos las propiedades:
- Dataset que se asigna al dataset de la pantalla que llama al auxiliar.
- Clase se inicializa al nombre de la tabla del componente que está llamando al auxiliar.
Si Exexute retorna True (indicando que se ha definido un SQL para la selección de criterios) toma ese SQL y agrega la opción Definir criterios... al menú local:
if prxADOClientDM.pAUX_CLASE_SELECCION_CRITERIOS_unit.Execute then begin SQL_Criterios := prxADOClientDM.pAUX_CLASE_SELECCION_CRITERIOS_unit.SQL_COMANDO.Text; aPopupMenu.OptionAdd('Definir criterios...', True, 'magnifier_zoom_in', AbrirFormCriterios); aPopupMenu.OptionAddSeparator; end;
AbrirFormCriterios es una función local que se ocupa de abrir el form TTprxCriteriosConsultasForm de criterios, aplicar el SQL del auxiliar y administrar la selección de valores:
procedure TTfvsDBClientFrameGridConsultas.AbrirFormCriterios(Sender: TObject); var vF: TTprxCriteriosConsultasForm; begin if Assigned(CriteriosForm) = False then CriteriosForm := TTprxCriteriosConsultasForm.Create(Self); CriteriosForm.GUID := TprxADODataSetEdit(DataSource.DataSet).GUID; CriteriosForm.SQL := SQL_Criterios; CriteriosForm.ShowModal; CriteriosForm.Release; CriteriosForm := nil; SQLEjecutar(Sender); fvsDBGridResultado.WidthJustify; end;
Usos
Este auxiliar se usa en:
- TTfvsDBClientFrameGridConsultas.fvsDBGridResultadoGetPopupOptions.