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 >.
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:
Option (Konstante)
Wert1
Wert2
1 (Paper option)
Name
-
Breite
Höhe
2 (Orientation option)
1=Hochformat, 2=Querformat
-
3 (Scale option)
Zahl (%)
-
4 (Number of copies option)
Anzahl
-
5 (Paper source option)
Nur Windows
Index (Numerisch)
-
8 (Color option)
Nur Windows
1=S/W, 2=Farbe
-
9 (Destination option)
1=Drucker,
-
2=(PC)/PS Datei (Mac)
Zugriffspfad
3=PDF
Zugriffspfad
5=Bildschirm (Mac)
11 (Double sided option)
Nur Windows
0=Einseitig (Standard)
-
1=Doppelseitig
Bindung: 0=Links
(Standard), 1=Oben
12 (Spooler document name option)
Name des zu
-
druckenden Dokuments
13 (Mac spool file format option)
0=PDF Modus
1= PostScript Modus
14 (Hide printing progress option)
0=Einblenden
1=Ausblenden
Paper option (1): Die Liste der verfügbaren Papiernamen erhalten Sie über den Befehl PRINT OPTION VALUES. Sie können entweder in Wert1 den Papiernamen übergeben und Wert2 leer lassen, oder in Wert1 die Papierbreite und inWert2 die Höhe übergeben. Die Werte müssen in Pixel auf dem Bildschirm angegeben werden.
Orientation option (2): Übergeben Sie in Wert1 entweder 1 (Hochformat), oder 2 (Querformat).
Scale option (3): Übergeben Sie in Wert1 einen Prozentsatz. 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 (4): Übergeben Sie in Wert1 die Anzahl der zu druckenden Kopien.
Paper source option (5): Übergeben Sie die Nummer, die dem Index des zu verwendenden Papierschachts entspricht. Über den Befehl PRINT OPTION VALUES erhalten Sie das Array mit den Namen. Hinweis: Diese Option ist nur unter Windows verwendbar.
Color option (8): Übergeben Sie in Wert1 den Code für die Farbe: 1=schwarz/weiß (monochrome), 2=Farbe. Hinweis: Diese Option ist nur unter Windows verwendbar.
Destination option (9): Übergeben Sie in Wert1 den Code für die Druckausgabe: 1=Drucker, 2= (PC)/PS Datei (Mac), 3= PDF Datei, 5=Bildschirm (Mac OS X Treiber). Bei Wert1 ungleich 1 oder 5 übergeben Sie in Wert2 den vollständigen Pfad des sich ergebenden Dokuments. Dieser Pfad wird benützt, bis ein anderer Pfad angegeben wird. Gibt es bereits eine gleichnamige Datei am Zielort, wird sie ersetzt. Hinweis: Unter Windows können Sie das Druckziel auf 3 (PDF-Datei) setzen, wenn der Treiber PDF Creator installiert ist. Diese Einstellung ist ab 4D Version 12.2 zwingend, damit 4D das Drucken über PDF Creator unter Windows steuern kann. Werden die Werte (9;3;Pfad) übergeben, startet 4D 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. Das vereinfacht das Steuern von Drucken als PDF für 4D und ermöglicht das Schreiben von Multiplattform Code. Sind die Werte (9;3;Pfad) nicht übergeben, wird das Drucken nicht durch 4D gesteuert und alle für PDF Creator übergebenen Optionen werden ignoriert.
Double sided option (11): In Wert1 übergeben Sie 0 (Einseitig oder Standard) oder 1 (Doppelseitig). Ist Wert1 gleich 1, können Sie in Wert2 die Bindung angeben: 0=Bindung links (Standard), 1=Bindung oben. Hinweis: Diese Option ist nur unter Windows verwendbar.
Spooler document name option (12): In Wert1 übergeben Sie den Namen des Druckdokuments, das in der Dokumentenliste des Druck-Servers erscheinen muss. Um die Standardoperation wiederherzustellen (Methodenname statt Methode, Tabellenname für Datensatz, etc.), übergeben Sie in Wert1 einen leeren String.
Mac spool file format option (13): In Wert1 übergeben Sie 0 (Null), um den Druckauftrag im PDF-Modus (Standardwert) zu setzen; 1, um den Druckauftrag im PostScript Modus zu erzwingen. Diese Option verändert auch den Druckmodus der Plug-Ins 4D Write und 4D View. Auf Windows hat sie dagegen keine Auswirkung. Hinweis: Auf Mac OS X wird standardmäßig im PDF-Modus gedruckt. Der PDF-Treiber unterstützt jedoch keine PICT-Bilder mit eingebundener PostScript Information – diese Bilder werden über vektororientierte Programme erstellt. Um dieses Problem zu vermeiden, können Sie über diese Option den Druckmodus für die aktuelle Sitzung auf Mac OS X verändern. Bedenken Sie, dass das Drucken im PostScript Modus unerwünschte Nebenwirkungen haben kann.
Hide printing progress option (14): Übergeben Sie 1 in Wert1, um das Fenster mit dem Druckverlauf auszublenden, 0 (Null) um es wieder anzuzeigen (Standardeinstellung). Diese Option ist besonders hilfreich beim Drucken von PDF auf Mac OS X im Hintergrund. Hinweis: Es gibt bereits eine Option Druckverlauf im Dialogfenster Einstellungen (Seite Anwendung/Optionen). Diese gilt jedoch global für die Anwendung und blendet nicht alle Fenster unter Mac OS X aus.
Die hier definierte Druckoption gilt für alle Druckdokumente der Sitzung, bis ein neuer Name oder ein leerer String übergeben werden. Sie wird während der gesamten Sitzung und für die komplette 4D Anwendungbeibehalten. 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 funktioniert nur mit PostScript Druckern.
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:
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 OPTIONverwendbar. 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 OPTIONverwendbar. 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 OPTIONverwendbar. 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 eine 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
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.