Zur Erstellung des Lieferanten-Bestellscheins für die Nachbestellung bei Lieferanten wird die Shopware Standard Komponente zur PDF-Belegerstellung verwendet. Die zugehörige Konfiguration findest du unter Einstellungen → Grundeinstellungen → Shopeinstellungen → PDF-Belegerstellung. Hier kannst du den Bestellschein frei nach deinen individuellen Anforderungen gestalten, indem du das Bestellschein Dokumententemplate anpasst.
Die grundlegenden Einstellungen werden in diesem Video erklärt:
Eine detaillierte Anleitung von Shopware zur PDF-Belegerstellung findest du hier. Unter diesem Link findest du außerdem weitere Informationen von Shopware, wie Änderungen an Templates vorgenommen werden können.
Artikelpreise anzeigen
Im folgenden Abschnitt findest du eine Anleitung, wie du das Dokumententemplate anpassen und erweitern kannst, um z. B. die Artikelpreise anzuzeigen.
Die Anpassung des bestehenden Templates funktioniert analog zur Anpassung der anderen Dokumente, wie z. B. der Rechnung:
- Erstelle eine .tpl Datei im Ordner themes/Frontend/Bare/documents mit folgendem Inhalt:
{namespace name=backend/viison_pickware_erp_supplier_orders/document}
{extends file="documents/supplier_order.tpl"} - Nun können nach der Shopware Standardlogik zur Dokumentenerweiterung eigene Felder hinzugefügt werden. Für eigene Felder pro Position auf dem Dokument sind extra_fields Blöcke vorgesehen. Weiter unten in diesem Beitrag findest du verschiedene Beispiele.
- Anschließend muss in der PDF-Belegerstellung nur noch der Name des Templates durch den Namen der neuen .tpl Datei ersetzt werden.
Wichtig: Die erstellte Datei darf NICHT "supplier_orders.tpl" heißen. - Bitte beachte, dass nach erfolgreicher Anpassung des Dokumententemplates die Vorschau-Funktion in der PDF Belegerstellung von Shopware für die Lieferantenbestellung u. U. nicht korrekt funktioniert. Die PDF wird im Bestellwesen dennoch korrekt erzeugt.
Einkaufspreis auf dem Lieferantendokument anzeigen
Um den Einkaufspreis auf dem Lieferantendokument anzuzeigen, kann der folgende Block in die erstellte .tpl Datei eingefügt werden:
{block name="document_index_head_extra_fields" append}
<td align="right" width="10%" class="head"><strong>{s name=purchasePrice}{/s}</strong></td>
{/block}
{block name="document_index_table_each_extra_fields" append}
<td align="right">
{if $currency.symbolOnLeft}
{$currency.symbol}
{/if}
{$position.article->getPrice()}
{if !$currency.symbolOnLeft}
{$currency.symbol}
{/if}
</td>
{/block}
Gesamtbetrag einer Bestellung anzeigen
Innerhalb des Blocks
(block name="document_index_table_each")
kann auf Artikelinformationen zugegriffen werden, welche wiederum den Zugriff auf die allgemeinen Bestellungsinformationen ermöglichen. Um diese Informationen an anderer Stelle im Template wieder auszugeben, kann die Smarty-Funktion {assign} innerhalb des oben genannten Blocks genutzt werden um einer neuen Variabel einen Wert zuzuweisen, beispielsweise wie folgt:
{assign var="totalValue" value={$position.article->getSupplierOrder()->getTotal()}}
Nun kannst du mithilfe von {$totalValue} den Gesamtbetrag der Bestellung an einer beliebigen Stellen im Template einfügen.