Class: TCWReport

TScrollBox ----+
            |
        TCWReport

Description:

Unit:
UCWReport (UCWReport.pas)

Constructors:

constructor Create(AOwner: TComponent); override;

Propertys:

property PaperValue[Index: Integer]: Integer read GetPaperValue write SetPaperValue;
property StrPages: TStrings read FAccess write SetStrPages stored False;
property ActivePage: string read GetActivePage write SetActivePage stored False;
property ActiveReportPage: TCustomReportPage read GetActiveReportPage;
property ReportPages[Index: Integer]: TCustomReportPage read GetReportPages;
property NavShow: Boolean read GetNavShow write SetNavShow;
property Align;
property Color;
property Ctl3D;
property DragCursor;
property DragMode;
property Font;
property Enabled;
property ReportPageIndex: Integer read FReportPageIndex write SetReportPageIndex default 0;
property ReportPageColl: TPageCollection read GetPageCollection write SetPageCollection stored False;
property ParentColor;
property ParentCtl3D;
property ParentFont;
property ParentShowHint;
property PopupMenu;
property ShowHint;
property PageIndex : Integer read GetPageIndex write SetPageIndex stored false;
property TabOrder;
property TabStop;
property Visible;
property Zoom: Integer read GetZoom write SetZoom;
property SwitchOn: Boolean read FSwitchOn write SetSwitchOn;
property ShowBounds: Boolean read GetShowBounds write SetShowBounds;
property ReportPageItem: TReportPageItem read GetReportPageItem write SetReportPageItem;
property ShowMargins: Boolean read FShowMargins write SetShowMargins;
property OnClick;
property OnDblClick;
property OnDragDrop;
property OnDragOver;
property OnEndDrag;
property OnEnter;
property OnExit;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
property OnPageChanged: TNotifyEvent read FOnPageChanged write FOnPageChanged;
property OnReportPageRefresh: TCWReportPageEvent read FOnReportPageRefresh write FOnReportPageRefresh;
property OnStartDrag;

Methods:

procedure AlignControls(AControl: TControl; var Rect: TRect); override;
procedure CreateParams(var Params: TCreateParams); override;
procedure WMMouseMove(var Message: TWMMouseMove); message WM_MOUSEMOVE;
procedure CMDesignHitTest(var Msg: TCMDesignHitTest); message CM_DESIGNHITTEST;
function GetChildOwner: TComponent; override;
procedure GetChildren(Proc: TGetChildProc; Root: TComponent); override;
procedure ReadState(Reader: TReader); override;
procedure ShowControl(AControl: TControl); override;
procedure SetRange( C: TControl);
procedure Loaded;Override;
procedure SetPageIndex(Value: Integer);
function GetPageIndex: Integer;
procedure ControlsChanged(Sender: TControl; var Message: TMessage);
procedure WriteState(Writer: TWriter); override;
procedure DefineProperties(Filer: TFiler); override;
procedure ReadZoom(Reader: TReader);
procedure WriteZoom(Writer: TWriter);
function GetPageFromPageIndex(Value: Integer): TCustomReportPage;
function GetOutPutChanged(AReportPage: TCustomReportPage; AIndex: Integer): Boolean;
destructor Destroy; override;
procedure Print(FromPage,ToPage: Integer);
function PageCount: Integer;
function ReportPageCount: Integer;
procedure MakePagesNew;

constructor Create(AOwner: TComponent); override;


property PaperValue[Index: Integer]: Integer read GetPaperValue write SetPaperValue;


property StrPages: TStrings read FAccess write SetStrPages stored False;

  To create new ReportPages use the add method of TStrings.

  For example : StrPages.Add('PagesX');


property ActivePage: string read GetActivePage write SetActivePage stored False;

 


property ActiveReportPage: TCustomReportPage read GetActiveReportPage;

  Current visible Page - TCustomReportPage.

                                                    There are ReportPages like Pages of TNoteBook.

                                                   Each Page has further internal pages.

                                                   Example the report has 3 ReportPages with  2, 3 and 4 internal pages.

                                                  Therefore there are 9 pages.

                                                   Reportpage 1 internal page 1  -> ReportPageIndex = 0 -> PageIndex = 1 !!!! start at 1

                                                   Reportpage 2  internal page 1 -> ReportPageIndex = 1 -> PageIndex = 2

                                                   Reportpage 3  internal page 1 -> ReportPageIndex = 2 -> PageIndex = 3

                                                   Reportpage 1  internal page 2 -> ReportPageIndex = 0 -> PageIndex = 4

                                                   Reportpage 2  internal page 2 -> ReportPageIndex = 1 -> PageIndex = 5

                                                   Reportpage 3  internal page 2 -> ReportPageIndex = 2 -> PageIndex = 6

                                                   Reportpage 2  internal page 3 -> ReportPageIndex = 1 -> PageIndex = 7

                                                   Reportpage 3  internal page 3 -> ReportPageIndex = 2 -> PageIndex = 8

                                                   Reportpage 3  internal page 4 -> ReportPageIndex = 2 -> PageIndex = 9

 


property ReportPages[Index: Integer]: TCustomReportPage read GetReportPages;


property NavShow: Boolean read GetNavShow write SetNavShow;

  Shows the navigatorBar.


property Align;


property Color;


property Ctl3D;


property DragCursor;


property DragMode;


property Font;


property Enabled;


property ReportPageIndex: Integer read FReportPageIndex write SetReportPageIndex default 0;


property ReportPageColl: TPageCollection read GetPageCollection write SetPageCollection stored False;


property ParentColor;


property ParentCtl3D;


property ParentFont;


property ParentShowHint;


property PopupMenu;


property ShowHint;


property PageIndex : Integer read GetPageIndex write SetPageIndex stored false;


property TabOrder;


property TabStop;


property Visible;


property Zoom: Integer read GetZoom write SetZoom;


property SwitchOn: Boolean read FSwitchOn write SetSwitchOn;

  switch on or switch off


property ShowBounds: Boolean read GetShowBounds write SetShowBounds;


property ReportPageItem: TReportPageItem read GetReportPageItem write SetReportPageItem;

  Set the pageproperties.


property ShowMargins: Boolean read FShowMargins write SetShowMargins;


property OnClick;


property OnDblClick;


property OnDragDrop;


property OnDragOver;


property OnEndDrag;


property OnEnter;


property OnExit;


property OnMouseDown;


property OnMouseMove;


property OnMouseUp;


property OnPageChanged: TNotifyEvent read FOnPageChanged write FOnPageChanged;

  Called if pageindex was changed


property OnReportPageRefresh: TCWReportPageEvent read FOnReportPageRefresh write FOnReportPageRefresh;

Called on recalculate the report


property OnStartDrag;


procedure AlignControls(AControl: TControl; var Rect: TRect); override;


procedure CreateParams(var Params: TCreateParams); override;


procedure WMMouseMove(var Message: TWMMouseMove); message WM_MOUSEMOVE;


procedure CMDesignHitTest(var Msg: TCMDesignHitTest); message CM_DESIGNHITTEST;


function GetChildOwner: TComponent; override;


procedure GetChildren(Proc: TGetChildProc; Root: TComponent); override;


procedure ReadState(Reader: TReader); override;


procedure ShowControl(AControl: TControl); override;


procedure SetRange( C: TControl);


procedure Loaded;Override;


procedure SetPageIndex(Value: Integer);


function GetPageIndex: Integer;


procedure ControlsChanged(Sender: TControl; var Message: TMessage);


procedure WriteState(Writer: TWriter); override;


procedure DefineProperties(Filer: TFiler); override;


procedure ReadZoom(Reader: TReader);


procedure WriteZoom(Writer: TWriter);


function GetPageFromPageIndex(Value: Integer): TCustomReportPage;


function GetOutPutChanged(AReportPage: TCustomReportPage; AIndex: Integer): Boolean;


destructor Destroy; override;


procedure Print(FromPage,ToPage: Integer);

 Print the report.


function PageCount: Integer;

  Number of pages.


function ReportPageCount: Integer;


procedure MakePagesNew;

  Recalculate the report.