Razor Export-Schnittstelle
Modulbeschreibung¶
Einrichtung
Wenn der ConfigValue RAZOR_EXPORT_PATH
gesetzt ist, wird der Export in den angegebenen Ordner aktivert.
Um zu bestimmen welches Template dafür verwendet wird, wird im List & Label Report eine Benutzervariable namens @ARCHIVE_TEMPLATE
hinterlegt.
Diese enthält den relativen Pfad zum Template im Ordner \Reports\Templates\
, bspw. \Kundenname\angebot.cshtml
.
Ein Template ist wie folgt aufgebaut:
In der ersten Zeile muss der Verweis auf die Datenquelle im Octoflex stehen, dieser lautet immer
@inherits Nancy.ViewEngines.Razor.NancyRazorViewBase<ListLabelHelper.ExportDataSource>
Danach kann der Aufbau der Datei beliebig gestaltet werden.
Über @Model
kann auf die Datenquelle im Octoflex zugegriffen werden.
Dabei sind folgende Konstanten verfügbar:
* LL_AutoProjectFile
: Der Pfad zur List & Label Projektdatei (z.B. Angebot mit G-Papier.lst
)
* LL_AutoProjectType
: Der List & Label Projekttyp (z.B. List
)
* LL_AutoDialogTitle
: Der Titel des List & Label Reports (z.B. Angebot
)
* LL_OutputDevice
: Das Druckziel (z.B. PDF
oder PRN
für Vorschau)
* LL_ArchiveFileName
: Der Pfad zur archivierten Datei (bspw. \\server\octoflex\archiv\AU123.pdf
)
* LL_Recipients
: Die Empfänger beim Mail-Versand (bspw. mitarbeiter@firma.de
)
Um einzelne Felder der Datenquelle abzufragen, wird folgender Ausdruck verwendet: @Model.EvaluateExpression(<Ausdruck>)
Für <Ausdruck>
wird die Syntax aus den List & Label Reports verwendet.
Der Zugriff auf die Belegnr im Auftrag würde dann so aussehen: @Model.EvaluateExpression("tblAuftrag.belegnr")
Ein Beispiel für ein Template:
<?xml version="1.0" encoding="UTF-8" ?>
<daten>
<typ value="Angebot"/>
<datum value="@DateTime.Now"/>
<belegnummer value="@Model.EvaluateExpression("tblAuftrag.belegnr")"/>
<summe value="@Model.EvaluateExpression("tblAuftrag.summe")"/>
<archivdatei value="@Model.LL_ArchiveFileName"/>
</daten>
<?xml version="1.0" encoding="UTF-8" ?>
<daten>
<typ value="Angebot"/>
<datum value="20.10.2020"/>
<belegnummer value="AU202010/1"/>
<summe value="99,95"/>
<archivdatei value="\\server\octoflex\archiv\AU202010-1.pdf"/>
</daten>
Bedienung
Beim Druck im Octoflex wird die Export-Datei automatisch in den Export-Ordner geschrieben.