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;

  Zum erzeugen einer neuen ReportPage benutzen Sie die AddFunktion von StrPages.

  Beispiel : StrPages.Add('PagesX');


property ActivePage: string read GetActivePage write SetActivePage stored False;

 


property ActiveReportPage: TCustomReportPage read GetActiveReportPage;

  Gibt die derzeit sichtbare Seite an - TCustomReportPage.

  Bemerkung zu den "Seiten" .  - Es gibt einmal die ReportPages das sind die Anzahl Berichtsseiten  wie die Pages in TNoteBook.

                                                   Jede dieser Seite hat in Abhängigkeit der beinhaltenden Bands eine Anzahl von Seiten.

                                                   Hat zum Beispiel der Bericht 3 Berichtsseiten und die erste Berichtseite hat 2 die 2 3 und die 3 4 Seiten

                                                   so hat der gesamte Bericht 9 Seiten. Beim durchblättern sehen Sie also

                                                   Berichtsseite 1 interne Seite 1  -> ReportPageIndex = 0 -> PageIndex = 1 !!!! beginnt bei 1

                                                   Berichtsseite 2 interne Seite 1 -> ReportPageIndex = 1 -> PageIndex = 2

                                                   Berichtseite 3 interne Seite 1 -> ReportPageIndex = 2 -> PageIndex = 3

                                                   Berichtsseite 1 interne Seite 2 -> ReportPageIndex = 0 -> PageIndex = 4

                                                   Berichtsseite 2 interne Seite 2 -> ReportPageIndex = 1 -> PageIndex = 5

                                                   Berichtsseite 3  interne Seite 2 -> ReportPageIndex = 2 -> PageIndex = 6

                                                   Berichtsseite 2 interne Seite 3 -> ReportPageIndex = 1 -> PageIndex = 7

                                                   Berichtsseite 3 interne Seite 3 -> ReportPageIndex = 2 -> PageIndex = 8

                                                   Berichtsseite 3 interne Seite 4 -> ReportPageIndex = 2 -> PageIndex = 9

 


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


property NavShow: Boolean read GetNavShow write SetNavShow;

  Zeigt den 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;

  "Schaltet "den Bericht ein oder aus.


property ShowBounds: Boolean read GetShowBounds write SetShowBounds;


property ReportPageItem: TReportPageItem read GetReportPageItem write SetReportPageItem;

  Zum setzen der Seitengröße etc.


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;

  Wird beim Ändern zu einer anderen ReportPage aufgerufen.


property OnReportPageRefresh: TCWReportPageEvent read FOnReportPageRefresh write FOnReportPageRefresh;

Wird bei Neuberechnung des Berichts aufgerufen.


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);

  Zum Drucken des Bericht wird diese Function mit StartSeite und EndSeite aufgerufen.


function PageCount: Integer;

  Anzahl der Gesamtseiten.


function ReportPageCount: Integer;


procedure MakePagesNew;

  Bewirkt Neuberechnung des Berichts.