Drucken von mehreren Seiten per Skript / EPLAN Electric P8
dekol 01. Aug. 2014, 14:49

Hallo zusammen,

eine Frage an die Skript-Experten unter euch:

Ist es möglich der Print-Action über den Parameter "PAGENAME" mehrere Seiten zu übergeben?

Ich habe es derzeit über eine Foreach-Schleife gelöst (wie in den meisten zu findenden Beispielen im Netz), welche allerdings (selbstverständlich) pro Seite einen eigenen Druckauftrag auslöst.

Das ist allerdings bei u.u. mehreren Hundert Seiten und einem Drucker, welcher Zwischen jedem Druckauftrag das Blatt in der Ausgabe versetzt ausgibt, ziemlich lästig...

Man könnte ja die zu druckenden Seiten (z.B. die im Seiten-Navi markierten) über eine Schleife einlesen und zunächst in einer Variable sichern, um diese danach an den Drucker zu übergeben.
Nur habe ich das bislang nicht geschafft und bin mir auch unsicher, ob man über den Parameter "PAGENAME" überhaupt mehrere Seiten (z.B. getrennt durch ";") in einem Rutsch übertragen kann. Diverse Tests waren da leider erfolglos... 

Wäre klasse wenn ihr mir da Weiterhelfen könntet... 

Grüße Dennis

[Diese Nachricht wurde von dekol am 01. Aug. 2014 editiert.]

DanielPa 05. Aug. 2014, 13:19

Hi,
also der Parameter PAGENAME nimmt nur eine Seite an. Aber mit einem kleinen Trick kannst du die Seiten die du selektiert hast in einen Druckauftrag packen. Möglich macht es die Funktion "Liste mit Vorauswahl" die du über das Kontextmenü im Seitennavi erreichst. Die Action die ausgeführt wird ist "GfDlgMgrActionIGfWind" mit dem Parameter "function:SwitchToList". Die Funktion erstellt einen Seitenfilter mit der aktuellen Auswahl und setzt ihn auch gleich aktiv. Das Ganze könnte dann z.B. so aussehen:

Code:
public class Script
{
[Start]
public void Start()
{
CommandLineInterpreter oCli = new CommandLineInterpreter();
ActionCallingContext acc = new ActionCallingContext();
acc.AddParameter("TYPE", "PAGES");
acc.AddParameter("USEPAGEFILTER", "1");
oCli.Execute("GfDlgMgrActionIGfWind /function:SwitchToList");
oCli.Execute("print", acc);
}
}


MfG Daniel

dekol 05. Aug. 2014, 15:04

Sehr interessanter Ansatz, werde ich mir morgen mal in ruhe anschauen, wenn ich wieder ein wenig Luft hab...

Aber vielen Dank schon mal!