gleiche LST unterschiedliche LSP mit LL15

Hallo Allerseits,

ich bin über die Suche leider nicht ganz fündig geworden über folgenden Sachverhalt in LL15:

Ziel ist es:
Formulareintrag1: Name: Angebot ohne Logo, Datei: angebot.lst, Druckerdatei .\verz1\angebot.lsp

  1. Seite: Drucker1, Schacht1 (Briefpapier)
    Folgeseiten: Drucker1, Schacht2 (Normalpapier)

Formulareintrag2: Name: Angebot mit Logo, Datei: angebot.lst, Druckerdatei .\verz2\angebot.lsp
Alle Seiten: Drucker1, Schacht2 (Normalpapier)

Formular3: Name: Angebot Kopie, Datei: angebot.lst, Druckerdatei: keine/Windowssstandarddrucker
Alle Seiten: auf Standarddrucker, auf Standardschacht

Nun ist es ja so, dass in der LST im Feld SourceTray leider die Papierquelle/Schacht gespeichert wird, d.h. bei jedem Öffnen und Speichern eine der obigen Formular, wird dieses in der LST gespeichert und ist somit für die anderen beide Formular verstellt.

  1. Lösung: eigenständige LST-DAteien verwenden (gr. Mehraufwand bei der Formularpflege, oder kompliziertes Vorgehen für den Admin, wenn er nach einer Änderung die Datei über die anderen kopieren muss.

  2. Lösung: Druckerdateien schreibschützen. Hilft zwar beim Ausdruck, ändert aber nichts daran, dass im L&L-Generator die eigentlichen echten Einstellungen falsch angezeigt werden.

Mich würde interessieren, wie jemand anderes vorgehen würde, um das Problem zu lösen.

MfG,
Lars Vietense

Hallo Herr Vietense,

vielen Dank für Ihren Beitrag.

Bei derartigen Szenarien können Sie mit der DOM-API die jeweilige Schächte setzen. Hier wären folgende Schritte notwendig:

  • das Projekt öffnen
  • den Schacht setzen (SourceTray)
  • das Projekt speichern (Save)
  • das Projekt schließen (Close)
  • das Projekt wieder freigeben (Dispose)

Der Code hierfür würde wie folgt aussehen (C#):

ProjectList project = new ProjectList(this.LL);
project.Open("C:\\temp\\mylist.lst", LlDomFileMode.Open, LlDomAccessMode.ReadWrite, true);
project.Regions[0].SourceTray = "2";
project.Regions[1].SourceTray = "4";
project.Save();
project.Close();
project.Dispose();

Alternativ hierzu könnte auch via LlSetPrinterInPrinterFile() ein entsprechendes P-File mitgegeben werden.

Mit freundlichen Grüßen

Christian Rauchfuß
Technischer Support
combit GmbH