Skip to main content
Skip table of contents

TCbReport

TCbReport

Dient zum Erstellen und Drucken von Reports.

Erstellen des Reports:

Ein TCbReport-Objekt wird im Codeblock mit der Funktion ReportInit() erzeugt. Es ist auch möglich, den Report mit der Funktion CreateObject('TCbReport') zu erzeugen, jedoch kann man dann keine Tabelle als Datenquelle übergeben.

Designen des Reports:

Vor dem Druck des Reports muss noch ein Layout erstellt werden, dies geschieht mit dem Aufruf von ReportPrint(), wobei als Modus rm_Print übergeben wird.

Drucken des Reports:

Gedruckt wird der Report ebenfalls mit der Funktion ReportPrint(), wobei als Modus rm_Print übergeben wird.

Unterschiede zu TBeCbArchive:

Anders als die TBeCbArchive-Klasse wird bei TCbReport kein Beleg aus dem Belegarchiv geladen sondern ein neuer Report erstellt. Außerdem gibt es hier keine Möglichkeit bereits im Codeblock einen E-Mail-Anhang oder den E-Mail-Text zu setzen. Dies muss dann alles an der Oberfläche durch den Benutzer geschehen.

Dummy-Reports:

Da man dem TBeCbArchive-Objekt nur den Papierschachtnamen übergeben kann, wird das TCbReport-Objekt als sogenannter "Dummy-Report" verwendet. Damit kann dann mithilfe der Liste aller vorhandenen Papierschächte (OrgBins bzw. CopyBins) und über die Druckerzuweisungen (DabR30) der passende Schachtname ermittelt werden.


Eigenschaften

Eigenschaft

Beschreibung

 RParams:U

Report-Parameter oder Array mit Parametern

 TestPrint:L

(default) False = Normaler Druck

 OrgPrinting:L

Gibt an, ob gerade ein Original oder eine Kopie gedruckt wird (Ist nur im OnSelectBin-Event valide)

 SaveSetupDlg:L

(default) False = Einstellungen, die auf dem Druck-Dialog gesetzt werden, nicht gespeichert

 CanFax:L

(default) False = Report kann nicht per Fax versandt werden

 CanMail:L

(default) False = Report kann nicht per E-Mail versandt werden

 AlwaysPrint:L

True = Führt einen zusätzlichen Druck mit dem normalen Drucker aus, auch wenn der Report bereits per E-Mail oder Fax versandt wird
(default) False

 UsePrintDlg:L

(default) True = Druck-Dialog wird angezeigt

 UseTransaction:L

(default) False = Der Druck wird nicht in einer Transaktion ausgeführt

 SelectLayout:L

(default) True = Das Report-Layout kann im Druck-Dialog gewählt werden

 OrgPrinterName:C

Name des Druckers für das Original

 OrgBinP1:N

Papierschacht für die erste Seite des Originals

 OrgBinPx:N

Papierschacht für die anderen Seiten des Originals

 OrgCount:N

Anzahl der Originale (default = 1)

 CopyPrinterName:C

Name des Druckers für die Kopie(n) (Standardmäßig OrgPrinterName)

 CopyBinP1:N

Papierschacht für die erste Seite der Kopie(n)

 CopyBinPx:N

Papierschacht für die anderen Seiten der Kopie(n)

 CopyCount:N

Anzahl der Kopien (default = 0)

 ReportNo:N

Nummer des Report-Layouts

 DocNo:U

Beleg-Nummer (frei zu vergeben)

 KeyNo:U

Auftrags- bzw. Vorgangs-Nummer. Wird beim Versand per E-Mail an das BatchMail-Objekt übergeben (frei zu vergeben werden)

 PersNo:N

Kunden-Nummer oder Vertreter-Nummer, etc. Wird beim Versand per E-Mail an das BatchMail-Objekt übergeben (frei zu vergeben werden)

 LockStr:C

Durch setzen dieser Eigenschaft wird beispielsweise beim Stapel-Druck verhindert, dass andere Benutzer auf die gleichen Datensätze zugreifen können und somit der Druck-Vorgang unterbrochen wird

 DefPrinterName:C

(readonly) Name des Standard-Druckers

 PrinterList:U

(readonly) Liste aller verfügbaren Drucker

 OrgBins:U

(readonly) Liste der Papierschächte für den Druck des Originals
Ein zweidimensionales Array aus Schachtname und Schachtnummer

 CopyBins:U

(readonly) Liste der Papierschächte für den Druck der Kopien(n)
Ein zweidimensionales Array aus Schachtname und Schachtnummer

 Done:L

(readonly) True = Druck wurde abgeschlossen

 Page:O

(readonly) Aktuelle Seite des Reports als Objekt (Ist nur im OnSelectBin-Event valide)


Verfügbare Ereignisse

Ereignis

Beschreibung

 OnNewDocNo

Beim Vergeben einer neuen Dokumenten-Nummer

 OnInitPrintValues

Beim Initialisieren der Print-Values

 OnFillPrintValues

Beim Füllen der Print-Values

 OnDetailPrinted

Nach dem Druck des Detail-Bereiches für einen Datensatz auf dem Report

 OnSetLocks

Beim Setzen der Sperren

 OnResetLocks

Beim Zurücksetzen der Sperren

 AfterPrint

Nach dem Druck

 OnProcessData

Beim Verarbeiten der Daten

 OnSelectBin

Beim Auswählen des Papierschachtes


Beispiel

CODE

//##############################################################################
//##############################################################################
// Beschreibung: Online-Hilfe Beispiel für die Klasse 'TCbReport'
//##############################################################################
//##############################################################################

| oReport, DAB010:DB:='waDab010, Dab011' |

oReport := ReportInit('Test-Report', DAB010),

startseq
   // Faxen und Mailen des Reports ermöglichen
   oReport.CanFax  := True,
   oReport.CanMail := True,

   if Jn('Report-Layout bearbeiten?', False) then
      ReportPrint(oReport, rm_Layout), // Report designen
   else
      ReportPrint(oReport, rm_Print),  // Report drucken
   endif,
always
   DestroyObject(oReport),
stopseq,


Weitere Verknüpfungen

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.