TTfvsDBClientFrame

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

Descripción

El frame TTfvsDBClientFrame (Frame de base para operaciones con datos.) es el frame de base para operaciones con datos. Este frame no agrega controles visuales, pero si funcionalidad para frames derivados.

Identidad

  • Ancestro: TTfvsFrame
  • Carpeta: C:\DevelopPrx\frames
  • Archivo: fvsDBClientFrame.pas

Declaración

type
  TTfvsDBClientFrame = class(TTfvsFrame)
  private
    FDataSet: TprxADODataSetEdit;
    FDataSetMaster: TprxADODataSetMaster;
    FDataSource: TDataSource;
    FDataSetIsMaster: Boolean;
    FExcludeFields: TStringList;

    FPanelPIE_Comentarios: TPanel;
    FPanelPIE_Totales: TPanel;

    FDataSet_Options_Seguimiento: TprxADODataSet_Options_Seguimiento;
    FDataSet_Options_Relaciones: TprxADODataSet_Options_Relaciones;

    FpSCANDOCS: TpSCANDOCS_unit;

    FprxADODataSet_Options_Details: TprxADODataSet_Options_Details;

    FddFormAbierto: TForm;

    FFilterCommands: TStringList;

    FMasterPkCount: Integer;
  protected
    FUsaPanelDETALLE: Boolean;
    FUsaPanelPIE: Boolean;
    FGuardaPreferencias: Boolean;

    procedure   SetDataSet(aValue: TprxADODataSetEdit); virtual;
    procedure   SetDataSetMaster(aValue: TprxADODataSetMaster); virtual;
    function    SameKeyAsMaster: Boolean;
    procedure   SetDataSetIsMaster(aValue: Boolean);
    procedure   FieldMessage(var Message: TprxADODataSetMessage); message MSG_PRXADODATASETMESSAGE;
    function    TableName_Get: String;

    procedure   SetPanelPIE_Comentarios(aValue: TPanel); virtual;
    procedure   SetPanelPIE_Totales(aValue: TPanel); virtual;

    property    DataSource: TDataSource read FDataSource write FDataSource;
    property    ExcludeFields: TStringList read FExcludeFields write FExcludeFields;
    property    DataSet_Options_Seguimiento: TprxADODataSet_Options_Seguimiento read FDataSet_Options_Seguimiento write FDataSet_Options_Seguimiento;
    property    DataSet_Options_Relaciones: TprxADODataSet_Options_Relaciones read FDataSet_Options_Relaciones write FDataSet_Options_Relaciones;

    property    pSCANDOCS: TpSCANDOCS_unit read FpSCANDOCS write FpSCANDOCS;

    property    prxADODataSet_Options_Details: TprxADODataSet_Options_Details read FprxADODataSet_Options_Details write FprxADODataSet_Options_Details;

    property    ddFormAbierto: TForm read FddFormAbierto write FddFormAbierto;

    property    FilterCommands: TStringList read FFilterCommands write FFilterCommands;
  public
    constructor Create(AOwner: TComponent); override;
    destructor  Destroy; override;
    procedure   OnFrameShow(Sender: TObject); override;
    procedure   OnTabSelected(Sender: TObject); virtual;

    function    AgregarControles(aDataSet: TprxADODataSetEdit; aTableName: String): Integer; virtual;

    procedure   ClassShow_BuildFrame(Sender: TObject); override;
    function    ClassShow_AgregarTablaMaster(aTabla: String): Boolean; virtual;
    function    ClassShow_AgregarControles: Boolean; virtual;
    function    ClassShow_Activate(aActivateDataSet: Boolean): Boolean; override;

    procedure   ClassShow_Activate_GetFilterCommands(aDataSet: TprxADODataSetEdit); override;

    procedure   OnExecute_INSERT(var aHandled: Boolean); virtual;
    procedure   OnExecute_EDIT(var aHandled: Boolean); virtual;
    procedure   OnExecute_POST(var aHandled: Boolean); virtual;
    procedure   OnExecute_CANCEL(var aHandled: Boolean); virtual;
    procedure   OnExecute_DELETE(var aHandled: Boolean); virtual;
    procedure   OnExecute_REFRESH(var aHandled: Boolean); virtual;

    property    DataSet: TprxADODataSetEdit read FDataSet write SetDataSet;
    property    DataSetMaster: TprxADODataSetMaster read FDataSetMaster write SetDataSetMaster;
    property    DataSetIsMaster: Boolean read FDataSetIsMaster write FDataSetIsMaster;
    property    TableName: String read TableName_Get; //FTableName; // write FTableName;

    property    UsaPanelDETALLE: Boolean read FUsaPanelDETALLE;
    property    UsaPanelPIE: Boolean read FUsaPanelPIE;
    property    GuardaPreferencias: Boolean read FGuardaPreferencias;

    property    PanelPIE_Comentarios: TPanel read FPanelPIE_Comentarios write SetPanelPIE_Comentarios;
    property    PanelPIE_Totales: TPanel read FPanelPIE_Totales write SetPanelPIE_Totales;

    property    MasterPkCount: Integer read FMasterPkCount;
 end;

FDataSet: TprxADODataSetEdit

Es el Dataset asociado al frame.

FDataSetMaster: TprxADODataSetMaster

Si el dataset es detalle de otro, ése se guarda en la propiedad FDataSetMaster de tipo Dataset master.

Implementación

function AgregarControles(aDataSet: TprxADODataSetEdit; aTableName: String): Integer

Agrega los controles que correspondan al Frame, es virtual en éste y debe implementarse donde corresponda.

procedure FieldMessage(var Message: TprxADODataSetMessage)

Recibe mensajes de los datasets para activar o desactivar las acciones. Puede recibir mensaje del dataset y del master dataset.

Funciones ClassShow*

Las funciones que comienzan con ClassShow son las ejecutadas por el frame para armar las pantallas respecto de lo definido en el catálogo. Por ejemplo: armar la pantalla de artículos según lo definido.

procedure ClassShow_BuildFrame(Sender: TObject)

Agregar los controles que correspondan.

function ClassShow_AgregarTablaMaster(aTabla: String): Boolean

Agrega la tabla principal al frame, también verifica si hay detalles de ese dataset con:

SELECT Cantidad = COUNT(*) FROM prxclases, prxcamposJER_VISTA WHERE
prxclases.Codigo = @aTabla
AND prxcamposJER_VISTA.Clase = prxclases.DetalleCodigo
AND prxcamposJER_VISTA.Clave = 1

function ClassShow_Activate(aActivateDataSet: Boolean): Boolean

Función ejecutada para mostrar el frame.

procedure OnExecute_INSERT(var aHandled: Boolean)

Evento genérico de inserción.

procedure OnExecute_EDIT(var aHandled: Boolean)

Evento genérico de edición.

procedure OnExecute_POST(var aHandled: Boolean)

Evento genérico de posteo.

procedure OnExecute_CANCEL(var aHandled: Boolean)

Evento genérico de cancelación de la operación actual (normalmente una inserción o una edición).

procedure OnExecute_DELETE(var aHandled: Boolean)

Evento genérico de eliminado de un registro.

procedure OnExecute_REFRESH(var aHandled: Boolean)

Evento genérico para refescar los datos.

Uso

Este frame es ancestro de: