Arbeitsverzeichnis beim PDF Export angeben

Hallo,
in einer unseren Anwendungen nutzen wir den PDF Export, in dem wir ein FileRepository (DB-Basiert) und eine DataSource (XML Datei) setzen und für den Druck schließlich ListLabel.Print aufrufen.

In dem XML, das als Datenquelle verwendet wird können in manchen Fällen auch Pfade zu Bilddateien vorkommen. Diese haben einen relativen Pfad und wir setzen in unserer Anwendung das “CurrentDirectory”, damit die Dateien gefunden werden.

Nun möchten wir die Dateien für die PDF Export-Jobs in je einem Ordner pro Job ablegen. Da es mehrere Export gleichzeitig geben kann, stößt man mit dem “CurrentDirectory” hier an seine Grenzen.

Man könnte für die Bilder natürlich den relativen Pfad von einem Root-Verzeichnis angeben, dass wie bisher immer identisch ist.

Mich würde aber trotzdem interessieren, ob es eine Möglichkeit gibt der ListLabel Instanz das zu nutzende Verzeichnis mitzugeben - oder evtl. auch eine andere Option?
Ich habe z.B. auch von ProjectPath$() gelesen - aber da die Projekte bei uns aus der DB kommen bezweifel ich, dass das in unserem Fall funktioniert.

Stark komprimiert sieht unser Code in etwa so aus:

var ll = new ListLabel();
ll.FileRepository = ...;
ll.DataSource = CreateDataProviderFromXml(xmlFile);
ll.DataMember = ...;
// ...

ll.ExportOptions.Add(LlExportOption.ExportTarget, "PDF");
ll.ExportOptions.Add(LlExportOption.ExportFile, "datei.pdf");
// ...

ll.Print();

Wenn es keine Möglichkeit gibt, ist das ok - nur wenn es doch eine gibt, würden wir sie gerne kennen und nutzen :slight_smile:

Danke vorab,
Marius

Ich glaube, die Idee mit der richtigen Angabe im XML ist die beste. Es gäbe zwar noch die Option LL_OPTIONSTR_ORIGINALPROJECTFILENAME mit der man angeben kann, dass das File, das aktuell im Designer geladen ist eigentlich ganz wo anders liegt als es aussieht, die ist aber an sich nicht dafür gedacht, ich kann die Seiteneffekte schlecht abschätzen. Zudem wirkt sich diese Option zwar auch auf ProjectPath$() aus, nicht aber auf das Laden von Bildern, solange diese nicht ProjectPath$() verwenden um mit Relativpfaden zu arbeiten.

Von daher würde ich das in der Datenquelle lösen, das ist sicher und skaliert dann auch bei mehreren gleichzeitigen Drucken/Exporten.

Guten Morgen,

vielen Dank für die aufklärende Antwort! Dann werden wir das auch so angehen.