Przejdź do głównej zawartości
Wersja: 2023 R2

Tworzenie szablonów HTML i PDF

Szablon

Plik szablonu musi być poprawnie zbudowanym plikiem w formacie .html. Dodatkowo plik może zawierać obsługiwane zmienne.

Przykład

Przykładowy plik szablonu jest domyślnie dołączany do obiegu („Szablon HTML”), a jego zawartość jest następująca:

<!DOCTYPE html>
<html>
<head id="Head1">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Drukowanie Reklamacji</title>
</head>

<body>
<form id="form1">
<table border="1" width="760" style="border-color: gray;" cellpadding="4px" cellspacing="0px">
<tr>
<td colspan="4">
Nagłówek
</td>
</tr>
<tr>
<td colspan="2">
Informacje podstawowe.
</td>
<td colspan="2">
Informacje dodatkowe.
</td>
</tr>
<tr>
<td></td>
<td></td>
<td>
{BARCODE1D}
</td>
<td>
{BARCODE2D}
</td>
</tr>
<tr>
<td>
Numer dokumentu:
</td>
<td>
{WFD_ID}
</td>
<td colspan="2" rowspan="4"
</tr>
<tr>
<td>
Sygnatura:
</td>
<td>
{SIGNATURE}
</td>
</tr>
<tr>
<td>
Autor:
</td>
<td>
{I:WFD_CreatedBy}
</td>
</tr>
<tr>
<td>
Osoba przypisana:
</td>
<td>
{I:ASSIGNEDPERSONFULL}
</td>
</tr>
</table>
</form>
</body>
</html>

W celu dodania kodów kreskowych należy w wybranym miejscu źródła umieścić tagi {BARCODE2D} lub {BARCODE1D}.

Przygotowany plik należy dodać jako szablon do Procesu szablonów dokumentów.

Tagi

Tworząc szablon wydruku HTML istnieje możliwość stosowania standardowych tagów oraz tagów do wyświetlania zawartości Listy pozycji oraz Tabeli danych.

Poniżej omówiono obsługę wartości pól z tabeli „WFElementsDetails” powiązanych z elementem.

Przykład

Przykładowa konfiguracja wyświetlania elementów w szablonie HTML:

<table>
{SUBELEMHEADERTEMPLATE:816129ca-3fc5-4894-9b48-ee396592389f}
<tr>
<td>LP</td>
<td>MPK</td>
<td>Netto</td>
<td>Zaakceptował</td>
</tr>
{/SUBELEMHEADERTEMPLATE} {SUBELEMROWTEMPLATE:816129ca-3fc5-4894-9b48-ee396592389f}
<tr>
<td>{DET_LP}</td>
<td>{DET_Att1}</td>
<td>{DET_Value1}</td>
<td>{DET_Att4}</td>
</tr>
{/SUBELEMROWTEMPLATE} {SUBELEMFOOTERTEMPLATE:816129ca-3fc5-4894-9b48-ee396592389f}
<tr>
<td></td>
<td>Suma: {DET_Value1}</td>
<td></td>
</tr>
{/SUBELEMFOOTERTEMPLATE}
</table>

Dobrą praktyką jest umieszczanie konfiguracji w całości wewnątrz tabeli HTML.

W przypadku zdefiniowanego powyżej przykładowego szablonu:

  • utworzony zostanie nagłówek {SUBELEMHEADERTEMPLATE:816129ca-3fc5-4894-9b48-ee396592389f},
  • dla wszystkich elementów utworzone zostaną kolumny: „DET_Att1”, „DET_Value1”, „DET_Att4” {SUBELEMROWTEMPLATE:816129ca-3fc5-4894-9b48-ee396592389f},
  • możliwe jest użycie nazw „L:DET_Value1”, „L:DET_Att4”, dzięki czemu formatowanie nazw będzie odpowiadać ustawieniom języka przeglądarki użytkownika,
  • utworzony zostanie wiersz podsumowania, w którym dla kolumn typu Liczba zmiennoprzecinkowa może być wpisana suma – w przykładzie „DET_Value1” {SUBELEMFOOTERTEMPLATE:816129ca-3fc5-4894-9b48-ee396592389f}.

Numer GUID „816129ca-3fc5-4894-9b48-ee396592389f” to identyfikator atrybutu (tabela „WFConfigurations”) definiującego Listę pozycji lub Tabelę danych.

informacja

Szczegółowe informacje na temat stosowanie identyfikatora GUID w szablonach HTML dostępne są w ARTYKULE na naszym blogu technicznym.

Stosowanie nagłówka („HEADER”) i stopki („FOOTER”) jest opcjonalne.
Całość tekstu zawartego między {SUBELEMROWTEMPLATE:816129ca-3fc5-4894-9b48-ee396592389f} a {/SUBELEMROWTEMPLATE} zostanie powtórzona tyle razy, ile dostępnych jest elementów na Liście pozycji z tagami {DET_…} zamienionymi na wartości z kolumn tabeli („WFElementDetails”).

W analogiczny sposób obsługiwane są wartości pól atrybutu Tabela danych:

Przykład
<table>
{SQLGRIDHEADERTEMPLATE:6ba0813f-eebf-498a-a950-81db55177794}
<tr>
<td>{Opis}</td>
<td>{miasto}</td>
<td>Komentarz</td>
</tr>
{/SQLGRIDHEADERTEMPLATE} {SQLGRIDROWTEMPLATE:6ba0813f-eebf-498a-a950-81db55177794}
<tr>
<td>{Opis}</td>
<td>{miasto}</td>
<td>Tekst</td>
</tr>
{/SQLGRIDROWTEMPLATE} {SQLGRIDFOOTERTEMPLATE:6ba0813f-eebf-498a-a950-81db55177794}
<tr>
<td></td>
<td>Suma</td>
<td></td>
</tr>
{/SQLGRIDFOOTERTEMPLATE}
</table>

Przykłady wydruków

Niniejsza sekcja zawiera przykładowe zawartości szablonów HTML dla Listy pozycji i Tabeli danych wraz z wygenerowanymi na ich podstawie tabelami.

Wydruk dla Listy pozycji

Lista pozycji, dla której tworzony jest szablon HTML:

Lista pozycji

Przykładowy szablon HTML dla powyższej Listy pozycji:

<table>
{SUBELEMHEADERTEMPLATE:816129ca-3fc5-4894-9b48-ee396592389f}
<tr>
<td>ID</td>
<td>Nazwa</td>
<td>Ilość</td>
<td>Cena</td>
<td>Zamówiony przez</td>
<td>Opis</td>
<td>Koszt łącznie</td>
</tr>
{/SUBELEMHEADERTEMPLATE} {SUBELEMROWTEMPLATE:816129ca-3fc5-4894-9b48-ee396592389f}
<tr>
<td>{DET_ID}</td>
<td>{DET_Att1}</td>
<td>{DET_Value2}</td>
<td>{DET_Value1}</td>
<td>{DET_Att2}</td>
<td>{DET_LongText1}</td>
<td>{DET_Value3}</td>
</tr>
{/SUBELEMROWTEMPLATE} {SUBELEMFOOTERTEMPLATE:816129ca-3fc5-4894-9b48-ee396592389f}
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>Suma: {DET_Value3}</td>
</tr>
{/SUBELEMFOOTERTEMPLATE}
</table>

Oznaczenie „816129ca-3fc5-4894-9b48-ee396592389f” umieszczone we frazach {SUBELEMHEADERTEMPLATE:}, {SUBELEMROWTEMPLATE:} i {SUBELEMFOOTERTEMPLATE:} to identyfikator GUID Listy pozycji.

Dla powyższego szablonu (umieszczonego w bloku body) wygenerowana zostania następująca tabela:

Lista pozycji wynikowa

Wydruk dla Tabeli danych

Tabela danych, dla której tworzony jest szablon HTML:

Tabela danych

Przykładowy szablon HTML dla powyższej Tabeli danych:

<table>
{SQLGRIDHEADERTEMPLATE:6ba0813f-eebf-498a-a950-81db55177794}
<tr>
<td>Nazwa</td>
<td>Ilość</td>
<td>Cena</td>
<td>Zamówiony przez</td>
<td>Opis</td>
</tr>
{/SQLGRIDHEADERTEMPLATE} {SQLGRIDROWTEMPLATE:6ba0813f-eebf-498a-a950-81db55177794}
<tr>
<td>{ProductName}</td>
<td>{ProductCount}</td>
<td>{ProductPrice}</td>
<td>{OrderedBy}</td>
<td>{ProductDescription}</td>
</tr>
{/SQLGRIDROWTEMPLATE} {SQLGRIDFOOTERTEMPLATE:6ba0813f-eebf-498a-a950-81db55177794}
<tr>
<td></td>
<td></td>
<td>Suma: {ProductPrice}</td>
<td></td>
<td></td>
</tr>
{/SQLGRIDFOOTERTEMPLATE}
</table>

Oznaczenie „6ba0813f-eebf-498a-a950-81db55177794” umieszczone we frazach {/SQLGRIDHEADERTEMPLATE:}, {/SQLGRIDROWTEMPLATE:} i {/SQLGRIDROWTEMPLATE:} to identyfikator GUID Tabeli danych.

Dla powyższego szablonu (umieszczonego w bloku body) wygenerowana zostania następująca tabela:

Tabela danych wynikowa