Diferencia entre revisiones de «TpAUX CLASE OPCIONES unit»

De Pragma Wiki
Ir a la navegación Ir a la búsqueda
 
Línea 135: Línea 135:
*[[TTfvsDBClientFrameGridConsultas]].fvsDBGridResultadoGetPopupOptions.
*[[TTfvsDBClientFrameGridConsultas]].fvsDBGridResultadoGetPopupOptions.
*[[TTfvsDBClientFrameScrollBox]].SpeedButton_OPCIONESGetPopupOptions.
*[[TTfvsDBClientFrameScrollBox]].SpeedButton_OPCIONESGetPopupOptions.
*[[TTprxGestionFinancieraProyeccionFrame].OnOpcionesPopupXtd.
*[[TTprxGestionFinancieraProyeccionFrame]].OnOpcionesPopupXtd.

Revisión actual - 16:44 22 may 2025

Descripción

El objeto TpAUX_CLASE_OPCIONES_unit (Opciones de menú objetos) procesa los auxiliares de tipo OPCIONES, ver detalles en DEV AUXILIARES/OPCIONES.

Identidad

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

Declaración

type
  TpAUX_CLASE_OPCIONES_unit = class(TComponent)
  private
    FMasterDataSet: TDataSet;
    FDataSet: TDataSet;
    FClase: String;
    FGrid: TDBGrid;
    FRefreshEvent: TNotifyEvent;
    FCaption_Opciones: String;
    FCaption_Auditoria: String;

    FQuery: TprxADOQuery;

    FTag_ConRegistros: Boolean;
    FTag_Refrescar: Boolean;
    FTag_ServicioWeb: Boolean;
    FTag_StripQuotes: Boolean;
    FTag_Separador: Boolean;

    FSQL_COMANDO: TStringList;
    FSQL_CONDICION: TStringList;
    FSQL_CONFIRMACION: TStringList;

    FItems: TStringList;
    FItems_Descripcion: TStringList;
    FItems_Index: Integer;
  protected
    property    Tag_ConRegistros: Boolean read FTag_ConRegistros write FTag_ConRegistros;
    property    Tag_Refrescar: Boolean read FTag_Refrescar write FTag_Refrescar;
    property    Tag_ServicioWeb: Boolean read FTag_ServicioWeb write FTag_ServicioWeb;
    property    Tag_StripQuotes: Boolean read FTag_StripQuotes write FTag_StripQuotes;
    property    Tag_Separador: Boolean read FTag_Separador write FTag_Separador;
    property    SQL_COMANDO: TStringList read FSQL_COMANDO write FSQL_COMANDO;
    property    SQL_CONDICION: TStringList read FSQL_CONDICION write FSQL_CONDICION;
    property    SQL_CONFIRMACION: TStringList read FSQL_CONFIRMACION write FSQL_CONFIRMACION;

    function    PARSER: Tfva_parser_fbn;
    procedure   EventoNulo(Sender: TObject);
    procedure   Auditoria_OnClick(Sender: TObject);
    procedure   OnClick_SQL_SELECCIONAR(Sender: TObject);
    procedure   OnClick_SQL_APLICAR(Sender: TObject);

    procedure   GridApply(aIndex: Integer; aErrMsg: String; aErrFlag: Boolean);
    function    ServicioWebApplyDo(aStrings: TStringList): Boolean;
    procedure   ServicioWebApply(aIndex: Integer; aErrMsg: String; aErrFlag: Boolean);

    property    Caption_Opciones: String read FCaption_Opciones;
    property    Caption_Auditoria: String read FCaption_Auditoria;
  public
    constructor Create(AOwner: TComponent); override;
    destructor  Destroy; override;

    procedure   GetPopupOptions(Sender: TprxPopupMenu);

    property    MasterDataSet: TDataSet read FMasterDataSet write FMasterDataSet;
    property    DataSet: TDataSet read FDataSet write FDataSet;
    property    Clase: String read FClase write FClase;
    property    Grid: TDBGrid read FGrid write FGrid;
    property    RefreshEvent: TNotifyEvent read FRefreshEvent write FRefreshEvent;

    property    Query: TprxADOQuery read FQuery write FQuery;

    property    Items: TStringList read FItems;
    property    Items_Descripcion: TStringList read FItems_Descripcion;
    property    Items_Index: Integer read FItems_Index;
  published
  end;

Implementación

procedure GetPopupOptions(Sender: TprxPopupMenu)

Usada en:

Agrega las opciones al menú, al seleccionar cualquier de estas opciones ejecutará una de las funciones mencionadas más adelante (es decir que la ejecución es local a este módulo).

procedure Auditoria_OnClick(Sender: TObject)

Ejecutada desde el menú de opciones para mostrar los registros de auditoría.

procedure MediaWiki_OnClick(Sender: TObject)

Ejecutada desde el menú para mostrar la documentación relacionada con la pantalla que se está consultando.

procedure OnClick_SQL_SELECCIONAR(Sender: TObject)

Ejecutada desde el menú de opciones cuando la opción es un resultado SQL.

procedure OnClick_SQL_APLICAR(Sender: TObject)

Ejecutada desde el menú de opciones cuando la opción es una sentencia SQL para aplicar.

procedure GridApply(aIndex: Integer; aErrMsg: String; aErrFlag: Boolean)

Usada en la función OnClick_SQL_APLICAR cuando se han seleccionado varios registros.

procedure ServicioWebApply(aIndex: Integer; aErrMsg: String; aErrFlag: Boolean)

Similar anterior pero cuando hay que llamar a un servicio web para cada registro seleccionado en la grilla, usa ServicioWebApplyDo.

Modo de uso

Habitualmente el auxiliar se usa de la siguiente manera (ejemplo tomado de TTfvsDBClientFrameGridConsultas.fvsDBGridResultadoGetPopupOptions):

prxADOClientDM.pAUX_CLASE_OPCIONES_unit.DataSet       := QueryRESULTADO;
prxADOClientDM.pAUX_CLASE_OPCIONES_unit.Clase         := TprxADODataSetEdit(TprxADOQuery(QueryRESULTADO).MasterDataSet).ppTableName;
prxADOClientDM.pAUX_CLASE_OPCIONES_unit.MasterDataSet := TprxADOQuery(QueryRESULTADO).MasterDataSet;
prxADOClientDM.pAUX_CLASE_OPCIONES_unit.Grid          := fvsDBGridResultado;
prxADOClientDM.pAUX_CLASE_OPCIONES_unit.RefreshEvent  := SQLEjecutar;

Primero asignamos las propiedades:

  • Dataset que se asigna al dataset de la pantalla que llama al auxiliar, en este caso es una consulta (QueryRESULTADO en un TprxADOQuery usando en las consultas.
  • Clase se inicializa al nombre de la tabla del componente que está llamando al auxiliar.
  • MasterDataSet se inicializa al valor del master del dataset llamador, solo cuando el llamador es un detalle.
  • Grid se inicializa al valor de la grilla desde la que se llama al auxiliar.
  • RefreshEvent se inicializa al valor del procedimiento que refresca la pantalla, usado cuando los datos que estamos viendo en pantalla se modifican por efecto de ejecutar una de las opciones (por ejemplo: cuando estamos consultando comprobantes pendientes de aprobación y la opción seleccionada aprueba uno o más comprobantes).

Posteriormente se llama directamente a la función GetPopupOptions para que agregue las opciones al menú local.

prxADOClientDM.pAUX_CLASE_OPCIONES_unit.GetPopupOptions(aPopupMenu);

Usos

Este auxiliar se usa en: