Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com

Home

 
4D v19.8
SET PRINT OPTION

SET PRINT OPTION 


 

SET PRINT OPTION ( Option ; Wert1 {; Wert2} ) 
Parameter Typ   Beschreibung
Option  Lange Ganzzahl in Optionsnummer oder PDF Optionscode
Wert1  Lange Ganzzahl, Text in Wert 1 der Option
Wert2  Lange Ganzzahl, Text in Wert 2 der Option

Der Befehl SET PRINT OPTION verändert per Programmierung den Wert der Druckoption. Jede über diesen Befehl definierte Option gilt für die gesamte Datenbank und die Dauer der Sitzung, solange kein anderer Befehl aufgerufen wird, der die Druckparameter verändert, z.B. PRINT SETTINGS, PRINT SELECTION ohne den Parameter >. Wurde ein Druckauftrag geöffnet, z.B. mit OPEN PRINTING JOB, wird die Option gesetzt und kann erst nach Beenden des Druckauftrags verändert werden (außer für die Konstante Orientation option, siehe unten).

Der Parameter Option gibt die zu verändernde Option an. Sie können eine vordefinierte Konstante unter dem Thema Druckoptionen übergeben oder den Code einer PDF Option (nur mit dem Treiber PDFCreator unter Windows).

In Wert1 und optional Wert2 übergeben Sie den bzw. die neuen Werte der definierten Option. Die Anzahl und Art der zu übergebenden Werte richtet sich nach der Art der angegebenen Option.

Nachfolgende Liste zeigt die Optionen und ihre möglichen Werte:

Konstante Typ Wert Kommentar
Paper option Lange Ganzzahl 1 Verwenden Sie nur Wert1, enthält er den Namen des Papierformats. Verwenden Sie beide Parameter, enthält Wert1 die Papierbreite und Wert2 die Papierhöhe. Breite und Höhe werden in Pixel auf dem Bildschirm angegeben. Über den Befehl PRINT OPTION VALUES erhalten Sie Name, Höhe und Breite aller Papierformate, die der Drucker anbietet.
Orientation option Lange Ganzzahl 2

Nur Wert1: 1=Hochformat, 2=Querformat. Bei einer anderen Ausrichtung gibt GET PRINT OPTION 0 in Wert1 zurück. Diese Option lässt sich im Druckauftrag aufrufen, d.h. Sie können im gleichen Auftrag zwischen Hoch- und Querformat wechseln.

Scale option Lange Ganzzahl 3 nur Wert1: Skalierungswert in Prozent. Bedenken Sie jedoch, dass einige Drucker keine Skalierung zulassen. Übergeben Sie einen ungültigen Wert, wird die Eigenschaft beim Drucken auf 100% gesetzt.
Number of copies option Lange Ganzzahl 4 nur Wert1: Anzahl der Kopien zum Drucken
Paper source option Lange Ganzzahl 5 (nur Windows) nur Wert1: Nummer, die dem Index des zu verwendenden Papierschachts entspricht. Über den Befehl PRINT OPTION VALUES erhalten Sie das Array mit den Namen. Diese Option ist nur unter Windows verwendbar.
Destination option Lange Ganzzahl 9

Wert1: Code für Druckausgabe: 1=Drucker, 2=Datei (PS auf Mac), 3=PDF Datei, 5=Bildschirm (OS X Treiber).
Ist Wert1 ungleich 1 oder 5, enthält Wert2 den Pfadnamen des Ergebnisdokuments. Dieser Pfad wird benützt, bis ein anderer Pfad angegeben wird. Gibt es bereits eine gleichnamige Datei am Zielort, wird sie ersetzt. Ist der aktuelle Wert nicht in der vordefinierten Liste, enthält Wert1 mit GET PRINT OPTION -1 und die Systemvariable OK wird auf 1 gesetzt. Tritt ein Fehler auf, werden Wert1 und die Systemvariable OK auf 0 gesetzt.
Hinweis (Windows):
Zum Drucken als PDF unter Windows müssen Sie SET CURRENT PRINTER(Generic PDF driver) aufrufen und das Druckziel auf 2 (Datei) oder 3 (PDF-Datei) setzen: Mit Option 3 können Sie Multiplattform Code schreiben. Ist der Treiber PDF Creator installiert und ein regulärer Drucker ausgewählt, wenn die Werte (9;3;Pfad) übergeben wurden, startet 4D außerdem automatisch ein "stilles" PDF Drucken, das alle übergebenen Codes für Option berücksichtigt. Übergeben Sie in Wert2 einen leeren String oder lassen diesen Parameter weg, erscheint beim Drucken ein Sichern-Dialog. Nach dem Drucken wird wieder auf die aktuellen Einstellungen zurückgesetzt.

Double sided option Lange Ganzzahl 11

Wert1: 0=Einseitig oder Standard), 1=Doppelseitig. Ist Wert1=1, enthält Wert2 die Bindung: 0=Bindung links (Standard), 1=Bindung oben.

Spooler document name option Lange Ganzzahl 12 nur Wert1: Namen des aktuellen Druckdokuments, das in der Dokumentenliste des Druck-Servers erscheint. Der hier definierte Name wird für alle Druckdokumente der Sitzung verwendet, solange kein neuer Name oder ein leerer String übergeben wird. Um die Standardoperation wiederherzustellen (Methodenname statt Methode, Tabellenname für Datensatz, etc.), übergeben Sie in Wert1 einen leeren String.
Page range option Lange Ganzzahl 15 Wert1=erste Seite zum Drucken (Standardwert ist 1) und optional Wert2=letzte Seite zum Drucken (Standardwert -1 = Dokumentende)
Legacy printing layer option Lange Ganzzahl 16

(nur Windows) nur Wert1: 1=auf GDI basierende bisherige Druckebene für nachfolgende Druckaufträge auswählen. 0=die D2D Druckerebene verwenden (Standard) Dieser Selector dient hauptsächlich zum Drucken für bisherige Plug-Ins in 4D Druckaufträgen in 4D Anwendungen.

Die hier definierte Druckoption gilt für alle Druckdokumente und wird für die Dauer der Sitzung und für die komplette 4D Anwendung beibehalten. Sie wird von den Befehlen PRINT SELECTION, PRINT RECORD, Print form und QR REPORT verwendet und für alle Druckvorgänge in 4D, inkl. Designmodus.

Hinweise:

  • Bei den Befehlen PRINT SELECTION, PRINT RECORD und PAGE BREAK müssen Sie den optionalen Parameter “>” verwenden. Nur so können Sie verhindern, dass die mit SET PRINT OPTION definierten Druckeinstellungen neu gesetzt werden.
  • Der Befehl SET PRINT OPTION unterstützt hauptsächlich PostScript Drucker. Sie können ihn auch mit anderen Druckertypen, wie PCL oder Ink verwenden, dann sind jedoch u.U. einige Optionen nicht verfügbar.

Damit Sie im Parameter Option einen PDF Optionscode verwenden können, müssen Sie in Ihrer 4D Umgebung den Treiber PDFCreator installiert haben. Weitere Informationen dazu finden Sie im Abschnitt Integration des Treibers PDF Creator unter Windows. Darüberhinaus müssen Sie über folgende Anweisung die Steuerung zum Drucken von PDF für 4D aktivieren:

 SET PRINT OPTION(Destination option;3;fileName)

Andernfalls werden die Optionscodes ignoriert.

Der Parameter Option ist ein Wert vom Typ Text, der aus zwei miteinander kombinierten Teilen besteht: "OptionTyp:OptionName". Dieser Code wird nachfolgend beschrieben:

  • OptionTyp gibt an, ob Sie eine native PDF Creator Option oder eine 4D PDF Administration Option spezifizieren. Es gibt zwei Werte:
    • PDFOptions = native Option
    • PDFInfo = interne Option
  • OptionName gibt die zu setzende Option an (abhängig vom Wert OptionTyp)
    • Ist OptionTyp = PDFOptions, können Sie in OptionName eine der native Optionen von PDFCreator übergeben. Die Option UseAutosave betrifft z.B. das automatische Backup. Um diese Option ändern zu können, übergeben Sie im Parameter Option "PDFOptions:UseAutosave" und im Parameter Wert1 den Wert, der verwendet werden soll. Eine ausführliche Beschreibung der native Optionen von PDFCreator finden Sie in der Dokumentation zum Treiber PDFCreator.
    • Ist OptionTyp = PDFInfo, können Sie in OptionName einen der nachfolgenden Selektoren übergeben:
      • Reset print setzt den internen Wartestatus zurück, insbesondere, um aus einer unendlichen Schleife herauszukommen. In diesem Fall wird Wert1 nicht verwendet.
      • Reset standard options setzt alle Optionen von PDFCreator auf ihre Standardwerte zurück. Läuft gerade ein Druckvorgang, werden die Einstellungen nach Beenden des Druckens angewandt. In diesem Fall wird Wert1 nicht verwendet.
      • Start startet oder stoppt den Spooler von PDFCreator. Zum Stoppen übergeben Sie 0 (Null) in Wert1, zum Starten 1.
      • Reset options setzt alle Optionen, die seit Beginn der Sitzung über den Befehl SET PRINT OPTION und den Selektor PDFOptions verändert wurden, wieder zurück.
      • Version liest die aktuelle Versionsnummer des Treibers PDFCreator. Dieser Selektor ist nur mit dem Befehl GET PRINT OPTION verwendbar. Die Nummer wird im Parameter Wert1 zurückgegeben.
      • Last error liest den zuletzt vom Treiber PDFCreator zurückgegebenen Fehler. Dieser Selektor ist nur mit dem Befehl GET PRINT OPTION verwendbar. Die Fehlernummer wird im Parameter Wert1 zurückgegeben.
      • Print in progress stellt fest, ob 4D auf den Druck mit PDFCreator wartet. Dieser Selektor ist nur mit dem Befehl GET PRINT OPTION verwendbar. Wert1 gibt 1 zurück, wenn 4D auf PDFCreator wartet, sonst 0.
      • Job count findet die Anzahl der Aufträge, die in der Druckerschleife warten, heraus. Dieser Selektor ist nur mit dem Befehl GET PRINT OPTION verwendbar. Die Anzahl der Aufträge wird in Wert1 zurückgegeben.
      • Synchronous Mode setzt den Synchronisierungsmodus zwischen den von 4D gesendeten Druckanfragen und dem Treiber PDFCreator. Da 4D keine Information über den aktuellen Status eines Druckauftrags erhalten kann, der sich in der Warteschleife befindet, können Sie über diese Option die Druckausführung besser steuern, indem Sie Aufträge nur senden, wenn der Status des Treibers PDFCreator "frei" ist. In diesem Fall wird 4D mit dem Treiber synchronisiert. Übergeben Sie 0 (Null) in Wert1, wenn 4D Druckanfragen sofort senden soll (Standardeinstellung) und 1, wenn 4D synchronisiert werden und warten soll, bis der Treiber den gerade laufenden Auftrag beendet hat, ehe es einen anderen sendet.

Hinweis: Nach jedem Drucken stellt 4D automatisch wieder die vorige Einstellungen des Treibers PDFCreator her, um Überschneidungen mit anderen Programmen zu vermeiden.

Nachfolgende Methode konfiguriert den PDF Treiber, so dass alle Datensätze der Tabelle an der Stelle C:\Test_PDF_X gedruckt werden, wobei X die Sequenznummer des Datensatzes ist:

 SET CURRENT PRINTER(PDFCreator Printer Name)
  // Verwenden Sie unter Windows den von PDFCreator installierten virtuellen Drucker
 If(OK=1) // ist PDFCreator derzeit installiert
 
    ALL RECORDS([Table_1])
    For($i;1;Records in selection([Table_1]))
       SET PRINT OPTION(Destination option;3;"C:\\Test\\Test_PDF_"+String($i))
  // Zieloption 3 startet einen PDFCreator Druckauftrag
       PRINT RECORD([Table_1];*)
       NEXT RECORD([Table_1])
    End for
  // Optionen des Treibers PDFCreator zurücksetzen
    SET PRINT OPTION("PDFInfo:Reset standard options";0)
 End if

Der Wert von Orientation option  lässt sich innerhalb des gleichen Druckauftrags verändern (Sonderfall). Beachten Sie, dass die Option vor dem Befehl PAGE BREAK gesetzt werden muss:

 ALL RECORDS([People])
 PRINT SETTINGS
 If(OK=1)
    OPEN PRINTING JOB
    SET PRINT OPTION(Orientation option;1) //Hochformat
    Print form([People];"Vertical_Form")
 
    SET PRINT OPTION(Orientation option;2) //Querformat
    PAGE BREAK //muss zwingend NACH der Option aufgerufen werden
    Print form([People];"Horiz_Form")
    CLOSE PRINTING JOB
 End if

Wurde der Befehl korrekt ausgeführt, wird die Systemvariable OK auf 1 gesetzt, sonst auf 0 (Null).

Übergeben Sie einen ungültigen Optionscode, z.B. einen Code, der vom PDFCreator nicht erkannt wird, wird OK auf 0 gesetzt.

Ist der für eine Option übergebene Wert ungültig oder ist Option für den Drucker nicht verfügbar, gibt der Befehl einen Fehler zurück. Sie können ihn ausfindig machen mit einer Fehlerverwaltungsmethode, die der Befehl ON ERR CALL aufruft. Der aktuelle Wert der Option bleibt dann unverändert.



Siehe auch 

Druckoptionen
GET PRINT OPTION
PRINT OPTION VALUES
SET CURRENT PRINTER

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Drucken
Nummer: 733

Dieser Befehl ändert die Systemvariable OKDieser Befehl ändert die Systemvariable Errorspezifisches Verhalten auf macOS spezifisches Verhalten unter Windows

 
SEITENINHALT 
 
GESCHICHTE 

Geändert: 4D 2004.3
Geändert: 4D v12
Geändert: 4D v12.2
Geändert: 4D v15 R5
Geändert: 4D v16

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v19)
4D Programmiersprache ( 4D v19.1)
4D Programmiersprache ( 4D v19.4)
4D Programmiersprache ( 4D v19.5)
4D Programmiersprache ( 4D v19.6)
4D Programmiersprache ( 4D v19.7)
4D Programmiersprache ( 4D v19.8)