> ## Documentation Index
> Fetch the complete documentation index at: https://dokumentation.websale.de/llms.txt
> Use this file to discover all available pages before exploring further.

# PDF-Anzeige der Produkt-Detailansicht

> Wie Sie in WEBSALE V8s dem Käufer die Produktdaten als PDF-Datei zum Herunterladen anbieten, über ein eigenes Template.

Auf der Produktdetailansicht können Sie dem Käufer anbieten, die Produktdaten als PDF-Datei herunterzuladen. Erzeugt wird die Datei aus einem eigenen Template, das unabhängig von der Produktseite gestaltet ist. So entsteht beispielsweise ein Datenblatt mit eigenem Layout und optionalen persönlichen Notizen.

Der Käufer erhält das Ergebnis als Download, nicht als Seitenansicht im Browser.

## Shopkonfiguration ergänzen

Drei Abschnitte der `shop.config` sind beteiligt. Legen Sie fehlende Abschnitte und Parameter an.

### Template zuweisen

Der Parameter `ProductPDF` im Abschnitt `<Templates>` benennt das Template, aus dem die PDF-Datei erzeugt wird.

```ini theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
<Templates>
   ...
   ProductPDF   = ws_product_pdf.htm
   ...
</Templates>
```

### Dateiname festlegen

Der Abschnitt `<PDFGenerator>` bestimmt, unter welchem Namen die Datei beim Käufer ankommt.

```ini theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
<PDFGenerator>
   ProductPDFFilename   = product_~ProductNumber~.pdf
</PDFGenerator>
```

Derselbe Abschnitt trägt auch die Dateinamen der übrigen PDF-Funktionen des Shops, beispielsweise für den Warenkorb und die Bestellbestätigung. `ProductPDFFilename` ist der Eintrag für die Produktdetailansicht.

Referenz: [Abschnitt PDFGenerator](https://dokumentation.websale.de/v8s/referenz/konfigurationen/shopkonfiguration-shop-config/grundlagen-und-technik.md#pdfgenerator)

### Fehlermeldung hinterlegen

Schlägt die Erzeugung fehl, zeigt der Shop die Notify-Seite mit diesem Text. Hinterlegen Sie ihn im Abschnitt `<NotifyMessages-Txt>`.

```ini theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
<NotifyMessages-Txt>
   ...
   PDFGeneratorError   = Die PDF-Datei konnte leider nicht erzeugt werden.
   ...
</NotifyMessages-Txt>
```

Referenz: [Abschnitt NotifyMessages-Txt](https://dokumentation.websale.de/v8s/referenz/konfigurationen/shopkonfiguration-shop-config/texte-und-meldungen.md#notifymessages-txt)

## Button auf der Produktdetailansicht einbauen

Der Button gehört in das Produktformular, weil die Erzeugung über dessen Absenden ausgelöst wird.

```html theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
...
<form action="~FORM-Product~" method="post" name="product" id="productform">
   ...
   <input type="submit" name="~BT-GeneratePDF~" value="PDF erzeugen">
   ...
</form>
...
```

## Fehlerursache ermitteln

Bei einem Fehler landet der Käufer auf der Notify-Seite mit dem oben hinterlegten Text. Die technische Ursache steht in `MSG-InternalErrorMessage`. Ergänzen Sie das Notify-Template um diesen Block, falls er noch fehlt.

```html theme={"theme":{"light":"github-light","dark":"github-dark"},"languages":{"custom":["/languages/websale.json"]}}
...
<!--
{MSG-InternalErrorMessage}
Fehler: ~MSG-InternalErrorMessage~
{/MSG-InternalErrorMessage}
-->
...
```

> [!WARNING]
>
> Binden Sie dieses Tag ausschließlich innerhalb eines HTML-Kommentars ein. Interne Fehlermeldungen dürfen dem Käufer nicht im Klartext erscheinen. Über die Quelltextanzeige des Browsers lesen Sie die Meldung dann trotzdem aus, falls ein Fehler vorliegt.

Referenz: [MSG-InternalErrorMessage](https://dokumentation.websale.de/v8s/referenz/tags/msg-meldungen.md#weitere-meldungen)

Zu den möglichen Ursachen zählt auch eine Zeitüberschreitung bei der Erzeugung. Für den Käufer sieht das genauso aus wie ein inhaltlicher Fehler, im Quelltext lässt es sich unterscheiden.

## Verwandte Themen

* Wegweiser: [Gewähltes Produkt anzeigen](https://dokumentation.websale.de/v8s/produkte/gewaehltes-produkt-anzeigen.md)
* Wegweiser: Wiederverwendung mit Includes, um Inhalte zwischen Produktseite und PDF-Template zu teilen


## Related topics

- [PDF-Anzeige des Warenkorbs](https://dokumentation.websale.de/v8s/warenkorb/pdf-anzeige-des-warenkorbs.md)
- [Produkte auf alternativem Template anzeigen](https://dokumentation.websale.de/v8s/produkte/produkte-auf-alternativem-template-anzeigen.md)
- [Template-Typen](https://dokumentation.websale.de/v8s/grundlagen-templates/template-typen.md)
- [Grundlagen und Technik](https://dokumentation.websale.de/v8s/referenz/konfigurationen/shopkonfiguration-shop-config/grundlagen-und-technik.md)
- [Schaltflächen auf Produkt- und Warenkorbseite](https://dokumentation.websale.de/v8s/referenz/tags/bt/produkt-und-warenkorb.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.