Skip to main content
Skip table of contents

DocumentPrint()

DocumentPrint() – Druck eines Individualbelegs

Die Funktion druckt einen Individual-Beleg, welcher dann im Belegarchiv abgelegt ist.

Hinweis

Es handelt sich hierbei um eine einfache Umsetzung des Belegdruckes, erweiterterte Möglichkeiten zum Belegdruck (z.B. Stapeldruck) bietet die Klasse "TBeIndiPrintData".
DocumentPrint() sollte nicht mehr für den Druck von Standardbelegen verwendet werden. Verwenden Sie stattdessen die jeweilige Druck-Klasse des Belegs (z.B. "TBeDelivData" für Lieferscheine).
Bei Verwendung eines Standard-Belegtyps haben alle Parameter nach nPersNo keine Bedeutung. Als nDocType sind folgende Standard-Belegtypen erlaubt:

  • 40 = Kommissionierschein (nicht in beas)
  • 60 = Lieferschein

ParameterBeschreibung

nPrintMode:N

Druckmodus entsprechend ReportPrint() RM_LAYOUT und RM_PRINT

nDocType:N

Indi.Dokument-Typ (entspr. Archiv-Belegart), 900-999,
muss definiert worden sein (im Fenster Druckerzuweisungen)

nDocNo:N

Dokument-Nr. frei zu vergeben

nPersNo:N

Pers.Nr. frei zu vergeben

aTables:A

Array mit Tabellen, die beim Belegdruck bzw. Design zur Verfügung stehen

oPrintConnect:O

ADS-Connection auf der die Belegverarbeitung laufen soll; default = Standard-Connection

dPrintDate:D

Druckdatum des Beleges; default = Buchungsdatum

lProcessDataOnly:L

Verarbeitung ohne Druck; default = false

evOnProcDataBefore:C

Event zur Datenverarbeitung vor Belegdruck; default = Leerstring

evOnProcDataAfter:C

Event zur Datenverarbeitung nach Belegdruck; default = Leerstring

Rückgabewert

Keiner

Beispiel

CODE
| oDab010, oConnect, oDM, arrArt, nDocNo, nMode |

// In diesem Beispiel wird ein einfacher Einzel-Belegdruck ausgeführt

// Events ----------------------------------------------------------------------

// Events zur Datenverarbeitung des Beleges

function ProcessDataBefore(aSender)
// Verarbeitung der Belegdaten (VOR dem Druck)
// Achtung ! Transaktion auf oConnect und somit oDab010 ist aktiv !
Meld('ProcessDataBefore'),
end,

function ProcessDataAfter(aSender)
// Verarbeitung der Belegdaten (NACH dem Druck)
// Achtung ! Transaktion auf oConnect und somit oDab010 ist aktiv !
Meld('ProcessDataAfter'),
end,

// Hauptprogramm ---------------------------------------------------------------

// WICHTIG: Folgende Zeilen erstellen ein TBeDBGet-Objekt, sowie  eine Tabelle
// welche auf der Connection des TBeDBGet-Objektes läuft !
// Die Connection wird an die DocumentPrint()-Funktion weitergegeben und somit
// kann die oDAb010 in den ProcessData-Events transaktionsgestützt(!) eingesetzt werden !!
oDM     := CreateObject("TBeDBGet"),
oDab010 := DbGetTable(oDM, waDAB010),

startseq,
   DBScope('A', 'A', oDab010),

   nMode := RM_LAYOUT,
   //nMode := RM_PRINT,

   DocumentPrint( nMode, 901, 6000, 4713, {oDab010}, oDM.AdsConnection,
                  DATE(), false, "ProcessDataBefore", "ProcessDataAfter"),
always,
   DestroyObject(oDab010),
   DestroyObject(oDM),
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.