git-svn-id: https://192.168.0.254/svn/Proyectos.LuisLeon_FactuGES/trunk@83 c93665c3-c93d-084d-9b98-7d5f4a9c3376
180 lines
5.1 KiB
ObjectPascal
180 lines
5.1 KiB
ObjectPascal
unit uViewInforme;
|
||
|
||
interface
|
||
|
||
uses
|
||
Windows, Messages, SysUtils, Variants, Classes, Graphics, Forms,
|
||
Dialogs, uViewBase, TBXDkPanels, StdCtrls, ComCtrls, TB2Dock,
|
||
uViewAgrupaciones, uCustomView, uViewColumnas, ImgList, PngImageList,
|
||
ActnList, uViewInformeGrid, uBizInformesBase, uViewSumarios,
|
||
uViewInformeParametros, uViewFiltros, cxStyles, Controls;
|
||
|
||
type
|
||
IViewInforme = interface(IViewBase)
|
||
['{D716BE6B-1F41-4825-9385-0231D2AEF819}']
|
||
function GetModificable: Boolean;
|
||
procedure SetModificable(const Value: Boolean);
|
||
property Modificable : Boolean read GetModificable write SetModificable;
|
||
|
||
function GetInforme: IBizInforme;
|
||
procedure SetInforme(const Value: IBizInforme);
|
||
property Informe: IBizInforme read GetInforme write SetInforme;
|
||
|
||
function GetOnViewChanged : TNotifyEvent;
|
||
procedure SetOnViewChanged(const Value : TNotifyEvent);
|
||
property OnViewChanged: TNotifyEvent read GetOnViewChanged write SetOnViewChanged;
|
||
end;
|
||
|
||
TfrViewInforme = class(TfrViewBase, IViewInforme)
|
||
TBXMultiDock1: TTBXMultiDock;
|
||
pnlParametros: TTBXDockablePanel;
|
||
TBXAlignmentPanel2: TTBXAlignmentPanel;
|
||
TBXLink1: TTBXLink;
|
||
TBXLink5: TTBXLink;
|
||
TBXLink2: TTBXLink;
|
||
pcParametros: TPageControl;
|
||
TabSheet5: TTabSheet;
|
||
tsColumnas: TTabSheet;
|
||
tsAgrupacion: TTabSheet;
|
||
TBXAlignmentPanel3: TTBXAlignmentPanel;
|
||
bRefrescar: TButton;
|
||
pnlTareas: TTBXDockablePanel;
|
||
TBXPageScroller1: TTBXPageScroller;
|
||
TBXAlignmentPanel1: TTBXAlignmentPanel;
|
||
bFiltros: TTBXLink;
|
||
bSumarios: TTBXLink;
|
||
pcTareas: TPageControl;
|
||
tsSumarios: TTabSheet;
|
||
tsFiltros: TTabSheet;
|
||
frViewColumnas1: TfrViewColumnas;
|
||
frViewAgrupaciones1: TfrViewAgrupaciones;
|
||
SmallImages: TPngImageList;
|
||
LargeImages: TPngImageList;
|
||
EditorActionList: TActionList;
|
||
actAgrupaciones: TAction;
|
||
actColumnas: TAction;
|
||
actSumarios: TAction;
|
||
actFiltros: TAction;
|
||
frViewSumarios1: TfrViewSumarios;
|
||
actRefrescar: TAction;
|
||
frViewFiltros1: TfrViewFiltros;
|
||
procedure actColumnasExecute(Sender: TObject);
|
||
procedure actSumariosExecute(Sender: TObject);
|
||
procedure actFiltrosExecute(Sender: TObject);
|
||
procedure actAgrupacionesExecute(Sender: TObject);
|
||
protected
|
||
FInforme : IBizInforme;
|
||
FOnViewChanged : TNotifyEvent;
|
||
FModificable : Boolean;
|
||
procedure ActivarTarea (const ATarea : Integer); virtual;
|
||
function GetInforme: IBizInforme; virtual;
|
||
procedure SetInforme(const Value: IBizInforme); virtual;
|
||
function GetOnViewChanged : TNotifyEvent; virtual;
|
||
procedure SetOnViewChanged(const Value : TNotifyEvent); virtual;
|
||
function GetModificable: Boolean; virtual;
|
||
procedure SetModificable(const Value: Boolean); virtual;
|
||
public
|
||
property Modificable : Boolean read GetModificable write SetModificable;
|
||
property OnViewChanged: TNotifyEvent read GetOnViewChanged write SetOnViewChanged;
|
||
property Informe: IBizInforme read GetInforme write SetInforme;
|
||
constructor Create(AOwner: TComponent); override;
|
||
end;
|
||
|
||
implementation
|
||
|
||
{$R *.dfm}
|
||
|
||
const
|
||
COLUMNAS = 1;
|
||
AGRUPACIONES = 2;
|
||
SUMARIOS = 3;
|
||
FILTROS = 4;
|
||
|
||
|
||
procedure TfrViewInforme.actColumnasExecute(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
ActivarTarea(COLUMNAS);
|
||
frViewColumnas1.Refresh;
|
||
end;
|
||
|
||
procedure TfrViewInforme.ActivarTarea(const ATarea: Integer);
|
||
begin
|
||
case ATarea of
|
||
COLUMNAS : pcParametros.ActivePage := tsColumnas;
|
||
AGRUPACIONES : pcParametros.ActivePage := tsAgrupacion;
|
||
SUMARIOS : pcTareas.ActivePage := tsSumarios;
|
||
FILTROS : pcTareas.ActivePage := tsFiltros;
|
||
end;
|
||
end;
|
||
|
||
function TfrViewInforme.GetInforme: IBizInforme;
|
||
begin
|
||
Result := FInforme;
|
||
end;
|
||
|
||
procedure TfrViewInforme.SetInforme(const Value: IBizInforme);
|
||
begin
|
||
FInforme := Value;
|
||
frViewColumnas1.Refresh;
|
||
frViewAgrupaciones1.Refresh;
|
||
|
||
// <20>Es modificable el Informe?
|
||
// Self.Modificable := FInforme.EsModificable;
|
||
end;
|
||
|
||
procedure TfrViewInforme.actSumariosExecute(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
ActivarTarea(SUMARIOS);
|
||
frViewSumarios1.Refresh;
|
||
end;
|
||
|
||
procedure TfrViewInforme.actFiltrosExecute(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
ActivarTarea(FILTROS);
|
||
frViewFiltros1.Refresh;
|
||
end;
|
||
|
||
procedure TfrViewInforme.actAgrupacionesExecute(Sender: TObject);
|
||
begin
|
||
inherited;
|
||
ActivarTarea(AGRUPACIONES);
|
||
frViewAgrupaciones1.Refresh;
|
||
end;
|
||
|
||
function TfrViewInforme.GetOnViewChanged: TNotifyEvent;
|
||
begin
|
||
Result := FOnViewChanged;
|
||
end;
|
||
|
||
procedure TfrViewInforme.SetOnViewChanged(const Value: TNotifyEvent);
|
||
begin
|
||
FOnViewChanged := Value;
|
||
end;
|
||
|
||
constructor TfrViewInforme.Create(AOwner: TComponent);
|
||
begin
|
||
inherited;
|
||
FModificable := False;
|
||
pcParametros.ActivePage := tsColumnas;
|
||
pcTareas.ActivePage := tsSumarios;
|
||
FOnViewChanged := nil;
|
||
end;
|
||
|
||
function TfrViewInforme.GetModificable: Boolean;
|
||
begin
|
||
Result := FModificable;
|
||
end;
|
||
|
||
procedure TfrViewInforme.SetModificable(const Value: Boolean);
|
||
begin
|
||
FModificable := Value;
|
||
|
||
frViewColumnas1.Modificable := FModificable;
|
||
frViewAgrupaciones1.Modificable := FModificable;
|
||
end;
|
||
|
||
end.
|