Přeskočit obsah

Tisk metadat

Tisk metadat umožňuje otevřít data formuláře v novém okně prohlížeče jako formátovaný, tisknutelný HTML dokument. Tiskové šablony používají Handlebars syntaxi pro vykreslení hodnot polí do HTML.

Konfigurace

Tisk metadat se spouští z Custom Script pomocí funkce tisa.utils.showPrintTemplate(). Tlačítko pro tisk se přidává jako akční tlačítko.

Příklad: Konfigurace tlačítka pro tisk

{
  "ActionButtons": [
    {
      "Title": "Tisk",
      "ID": "PrintMetadata",
      "CommandFunction": "btnPrint",
      "Icon": {
        "Icon": "regular/fileInvoice"
      }
    }
  ],
  "CustomScript": "async function btnPrint() {\n  await tisa.utils.showPrintTemplate('InvoiceTemplate');\n}"
}

Parametry showPrintTemplate

Parametr Popis
templateName Název tiskové šablony. [Povinné]
debug Zapne debug box v šabloně zobrazující předaná data formuláře. Výchozí: false.

Tiskové šablony

Tiskové šablony se ukládají v Cosmos DB a obsahují lokalizovaný titulek a tělo. Tělo šablony je HTML s Handlebars výrazy pro vložení hodnot polí.

Handlebars výrazy

Hodnoty polí formuláře se vkládají pomocí dvojitých složených závorek:

<h1>{{Title}}</h1>
<p>Status: {{Status}}</p>
<p>Datum: {{formatDate Created format="dd.MM.yyyy"}}</p>

Dostupné helpery

Helper Popis Příklad
formatDate Formátování data. Podporuje pojmenované parametry format, locale, includeTime, use24Hour, includeSeconds. {{formatDate Created format="dd.MM.yyyy"}}
json Výpis hodnoty jako JSON. {{json AdvancedTableData}}
eq Porovnání dvou hodnot. {{#if (eq Status "Active")}}...{{/if}}
parseJson Parsování JSON řetězce. {{#each (parseJson JsonField)}}...{{/each}}
lookupValue Získání hodnoty z lookup pole. Formát hodnoty: id#;value. {{lookupValue Category}}
lookupId Získání ID z lookup pole. Formát hodnoty: id#;value. {{lookupId Category}}

Parametry formatDate

Parametr Popis Výchozí
format Formátovací vzor (tokeny: dd, MM, yyyy, HH, hh, mm, ss). Pokud je zadán, má přednost před ostatními parametry.
locale BCP47 kód lokálu, např. cs-CZ. lokál prohlížeče
includeTime Zobrazit čas. false
use24Hour 24hodinový formát času. true
includeSeconds Zobrazit sekundy. false

Příklad šablony

<html>
<head>
  <title>{{Title}}</title>
  <style>
    body { font-family: Arial, sans-serif; }
    table { border-collapse: collapse; width: 100%; }
    td, th { border: 1px solid #ddd; padding: 8px; }
  </style>
</head>
<body>
  <h1>{{Title}}</h1>
  <table>
    <tr><th>Dodavatel</th><td>{{SupplierName}}</td></tr>
    <tr><th>IČO</th><td>{{SupplierICO}}</td></tr>
    <tr><th>Částka</th><td>{{Amount}} Kč</td></tr>
    <tr><th>Datum</th><td>{{formatDate Created format="dd.MM.yyyy"}}</td></tr>
  </table>
</body>
</html>