TTfvsDBClientFrame
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: