TprxADODataSetDetail
Descripción
El objeto TprxADODataSetDetail (Funcionalidad genérica para detalles de comprobantes.) implementa funcionalidad genérica para detalles de comprobantes.
Identidad
- Ancestro: TprxADODataSetMaster
- Carpeta: C:\DevelopPrx\library
- Archivo: prxADODataSetDetail.pas
Declaración
type
TprxADODataSetDetail = class(TprxADODataSetMaster)
private
FMasterDataSet: TprxADODataSetEdit;
FCmpMasterDataSet: TprxADODataSetEdit;
FNuevoSubtotal: Boolean;
FApplyMasterKey_Count: Integer;
procedure FieldMessage(var Message: TprxADODataSetMessage); message MSG_PRXADODATASETMESSAGE;
protected
procedure SetTableName(aValue: String); override;
procedure Notification(AComponent: TComponent; Operation: TOperation); override;
function Get_TAG_READONLY: Boolean; override;
function KeepFormOpen_Get: Boolean; override;
procedure SetMasterDataSet(aValue: TprxADODataSetEdit); virtual;
function EvaluarEstadoCabecera: Boolean;
property CmpMasterDataSet: TprxADODataSetEdit read FCmpMasterDataSet write FCmpMasterDataSet;
property xxNuevoSubtotal: Boolean read FNuevoSubtotal write FNuevoSubtotal;
property ApplyMasterKey_Count: Integer read FApplyMasterKey_Count; // write FApplyMasterKey_Count;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure Loaded; override;
procedure Activate(aLoadRecords: Boolean); override;
function IsTransactionMaster: Boolean; override;
procedure AssignMasterKey(Sender: TObject);
function CanInsertXtd: Boolean; override;
procedure InsertXtd(Sender: TObject); override;
function CanEditXtd: Boolean; override;
procedure EditXtd(Sender: TObject); override;
function CanDeleteXtd(aAsk: Boolean): Boolean; override;
procedure DeleteXtd(Sender: TObject); override;
function PostXtd(Sender: TObject): Boolean; override;
procedure ApplyMasterKey;
published
property MasterDataSet: TprxADODataSetEdit read FMasterDataSet write SetMasterDataSet; //FMasterDataSet;
end;
FMasterDataSet: TprxADODataSetEdit
Apunta al dataset que es su maestro en la relación master-detail.
FCmpMasterDataSet: TprxADODataSetEdit
Apunta al dataset que es su maestro en la relación master-detail, pero solo cuando
if MasterDataSet is TprxCmpCABECERA then
CmpMasterDataSet := MasterDataSet;
Implementación
procedure SetMasterDataSet(aValue: TprxADODataSetEdit)
Procedimiento para inicializar el master del dataset (propiedad FMasterDataSet).
function EvaluarEstadoCabecera: Boolean
Si el MasterDataSet es una cabecera de comprobante evalúa su estado, si es Nuevo o Abierto retorna True, de lo contrario retorna False.
procedure FieldMessage(var Message: TprxADODataSetMessage)
Recibe mensajes (Ver prxDataTypes, si el master está activo y ante alguno de los siguientes eventos aplica la clave del master para que el dataset se refresque trayendo los registros que corresponde a su maestro.
- msgNewRecord.
- msgScroll.
- msgEdit.
- msgCancel.