Zawartość oraz układ wydruku definiowany jest w pliku Layout.xml. Głównym elementem w pliku jest document. Musi zawierać on co najmniej element body, który zawiera główną część wydruku. Dodatkowo w elemencie document może zostać umieszczony element title oraz wiele elementów header oraz footer. Zawartość elementów body, header oraz footer może zostać skomponowana z innych elementów opisanych poniżej. Elementy te mogą być zagnieżdżane.
Elementy
Wszystkie dostępne elementy, które mogą zostać zastosowane podczas tworzenia układu wydruku zostały opisane poniżej. Opis każdego elementu zawiera następujące sekcje:
- Zawartość – opisuje jakie elementy podrzędne można umieścić wewnątrz danego elementu.
- Parametry – opisuje wszystkie dostępne atrybuty jakie można dodać do elementu i co oznaczają.
- Elementy stylujące – zawiera listę selektorów, które dopasowują dany element w pliku Styles.xml
- Elementy podrzędne – opcjonalna sekcja opisująca elementy, które mogą wystąpić tylko wewnątrz danego elementu. Dla każdego elementu podrzędnego zachowany jest układ opisu taki sam jak dla głównego elementu.
- Przykład – zawiera fragment kodu z przykładowym wykorzystanie opisywanego elementu.
| Nazwa | Barcode |
| Opis | Kod kreskowy |
| Zawartość | Wewnątrz elementu barcode umieszczane są dane tekstowe, które mają być przez ten kod zakodowane |
| Parametry |
|
| Elementy stylujące |
|
| Nazwa | Body |
| Opis | Główna sekcja wydruku |
| Zawartość | Dowolny element nietekstowy. |
| Parametry | Brak |
| Elementy stylujące |
|
<document>
<title><data set=”DocumentHeader” var=”NumberString” /></title>
<body>
[zawartość wydruku]
</body>
</document>
| Nazwa | Br |
| Opis | Złamanie linii w tekście |
| Zawartość | Element nie może zawierać żadnych elementów |
| Parametry | Brak |
| Elementy stylujące | Brak |
| Nazwa | Data |
| Opis | Element zwracający dane ze źródła danych w postaci tekstowej |
| Zawartość | Element nie może zawierać żadnych elementów |
| Parametry |
|
| Elementy stylujące | Brak |
| Nazwa | Footer |
| Opis | Stopka wydruku |
| Zawartość | Dowolny element nietekstowy. |
| Parametry |
|
| Elementy stylujące |
|
<document>
<footer page=”last”>
<p>Stopka ostatniej strony</p>
</footer>
<footer>
<p class=”footer”>Strona <pageNumber/> z <numOfPages/></p>
</footer>
<body>
[…]
| Nazwa | Header |
| Opis | Nagłówek wydruku |
| Zawartość | Dowolny element nietekstowy |
| Parametry |
|
| Elementy stylujące |
|
<document>
<header>
<p>Nagłówek</p>
</header>
<body>
[…]
| Nazwa | Horizontal |
| Opis | Podział na sekcje ułożone poziomo |
| Zawartość | Jeden lub więcej elementów section |
| Parametry | Brak |
| Elementy stylujące | Brak |
| Elementy podrzędne |
|
| Nazwa | Horizontal: Section |
| Opis | Sekcja |
| Zawartość | Dowolne elementy nietekstowe |
| Parametry |
|
| Elementy stylujące |
|
<section><p class=”sign”>Dokument wystawił</p></section>
<section weight=”0,1″></section>
<section><p class=”sign”>Towar wydał</p></section>
<section weight=”0,1″></section>
<section><p class=”sign”>Data odbioru</p></section>
<section weight=”0,1″></section>
<section><p class=”sign”>Towar odebrał</p><p class=”footer”>Strona <pageNumber/> z <numOfPages/></p></section>
</horizontal>
| Nazwa | Hr |
| Opis | Linia pozioma |
| Zawartość | Element nie może zawierać żadnych elementów |
| Parametry | Brak |
| Elementy stylujące |
|
<hr />
<p>tekst2</p>
| Nazwa | If |
| Opis | Element testowy pozwalający na układ wydruku zależny od dowolnych warunków |
| Zawartość | Element test oraz co najmniej jeden z elementów true i false |
| Parametry | Brak |
| Elementy stylujące | Brak |
| Elementy podrzędne |
|
| Nazwa | If: Test |
| Opis | Element zawierający warunek decydujący o tym czy do wydruku zostaną dodane elementy z sekcji true czy false . Warunek może być dowolnym wyrażeniem logicznym zawierającym podstawowe operacje matematyczne, porównania. Może on także zawierać nawiasy. |
| Zawartość | Dowolne elementy tekstowe |
| Parametry | Brak |
| Elementy stylujące | Brak |
| Nazwa | If: True |
| Opis | Element zawierający elementy, które zostaną w przypadku kiedy warunek z sekcji test zostanie spełniony. |
| Zawartość | Dowolne elementy, które mogą zostać umieszone w rodzicu elementu test |
| Parametry | Brak |
| Elementy stylujące | Brak |
| Nazwa | If: False |
| Opis | Element zawierający elementy, które zostaną w przypadku kiedy warunek z sekcji test nie zostanie spełniony. |
| Zawartość | Dowolne elementy, które mogą zostać umieszone w rodzicu elementu test |
| Parametry | Brak |
| Elementy stylujące | Brak |
<test><data set=”DocumentsPositions” var=”Id” /> < 3123</test>
<true>
<horizontal>
<section weight=”2″>
<p><data set=”DocumentsPositions” var=”Name” /></p>
<p><data set=”DocumentsPositions” var=”Barcode” /></p>
</section>
<section weight=”3″>
<p><data set=”DocumentsPositions” var=”Name” /></p>
<p><data set=”DocumentsPositions” var=”Barcode” /></p>
</section>
</horizontal>
</true>
<false>
<p><data set=”Header” var=”CompanyName” /></p>
</false>
</if>
| Nazwa | Image |
| Opis | Obraz z bazy lub z dysku. |
| Zawartość | Element nie może zawierać żadnych elementów. |
| Parametry |
|
| Elementy stylujące |
|
<image set=”Header” var=”Logo” />
| Nazwa | PageNumber |
| Opis | Numer aktualnej strony. |
| Zawartość | Element nie może zawierać żadnych elementów. |
| Parametry | Brak |
| Elementy stylujące | Brak |
<p class=”footer”>Strona <pageNumber/> z <numOfPages/></p>
</footer>
| Nazwa | P |
| Opis | Paragraf |
| Zawartość | Dowolny element tekstowy |
| Parametry | Brak |
| Elementy stylujące | P |
| Nazwa | RowNumber |
| Opis | Numer aktualnego wiersza tabeli |
| Zawartość | Element nie może zawierać żadnych elementów |
| Parametry | Brak |
| Elementy stylujące | Brak |
<column weight=”2″ description=”Lp.” class=”number”>
<rowNumber />
</column>
<column weight=”12″ description=”[Kod] Nazwa towaru”>
[<tableData var=”Code” />] <tableData var=”Name” />
</column>
</table>
| Nazwa | StaticTable |
| Opis | Tabela statyczna o ustalonej liczbie kolumn oraz wierszy |
| Zawartość | Element head oraz jeden lub więcej elementów row |
| Parametry | Brak |
| Elementy stylujące |
|
| Elementy podrzędne |
|
| Nazwa | StaticTable: Head |
| Opis | Element definiujący nagłówek tabeli. |
| Zawartość | Jeden lub więcej elementów column |
| Parametry | Brak |
| Elementy stylujące | Brak |
| Nazwa | StaticTable: Column |
| Opis | Element definiujący pojedynczą kolumnę tabeli. |
| Zawartość | Dowolne elementy nietekstowe |
| Parametry |
|
| Elementy stylujące |
|
| Nazwa | StaticTable: Row |
| Opis | Element definiujący pojedyńczy wiersz tabeli |
| Zawartość | Jeden lub więcej elementów cell |
| Parametry | Brak |
| Elementy stylujące | Brak |
| Nazwa | StaticTable: Cell |
| Opis | Element definiujący pojedynczą komórkę wiersza tabeli. |
| Zawartość | Dowolne elementy nietekstowe. |
| Parametry |
|
| Elementy stylujące |
|
<head>
<column weight=”1″><p class=”tableHead”>Odbiorca</p></column>
<column weight=”1″><p class=”tableHead”>Nabywca</p></column>
</head>
<row>
<cell>
<p class=”customer”><data set=”DocumentHeader” var=”CustomerName” /><br/>
<data set=”DocumentHeader” var=”Street” /><br/>
<data set=”DocumentHeader” var=”ZipCode” /> <data set=”DocumentHeader” var=”City” /><br/>
NIP: <data set=”DocumentHeader” var=”Tin” /><br/>
</p>
</cell>
<cell>
<p class=”customer”><data set=”DocumentHeader2″ var=”CustomerName” /><br/>
<data set=”DocumentHeader2″ var=”Street” /><br/>
<data set=”DocumentHeader2″ var=”ZipCode” /> <data set=”DocumentHeader2″ var=”City” /><br/>
NIP: <data set=”DocumentHeader2″ var=”Tin” /><br/>
</p>
</cell>
</row>
<row>
<cell collspan=”2″>
<p>…</p>
</cell>
</row>
</staticTable>
| Nazwa | Table |
| Opis | Tabela dynamiczna o ustalonej liczbie kolumn. |
| Zawartość | Jeden lub więcej elementów column |
| Parametry |
|
| Elementy stylujące |
|
| Elementy podrzędne |
|
| Nazwa | Table: Column |
| Opis | Element definiujący kolumnę tabeli. |
| Zawartość | Dowolne elementy tekstowe |
| Parametry |
|
| Elementy stylujące |
|
| Nazwa | Table: TableData |
| Opis | Element zwracający wartość tekstową ze zbioru danych bazującą na zbiorze danych tabeli, kolumnie podanej w parametrze var oraz aktualnym wierszu tabeli. |
| Zawartość | Element nie może zawierać żadnych elementów. |
| Parametry |
|
| Elementy stylujące | Brak |
<column weight=”2″ description=”Lp.” class=”number”>
<rowNumber />
</column>
<column weight=”12″ description=”[Kod] Nazwa towaru”>
[<tableData var=”Code” />] <tableData var=”Name” />
</column>
<column weight=”4″ description=”Ilość” class=”number”>
<tableData var=”RealizedQuantity” />
</column>
<column weight=”4″ description=”Jm. (podstawowa)”>
<tableData var=”BasicUnitSymbol” />
</column>
<column weight=”4″ description=”Ilość” class=”number”>
<tableData var=”SecondaryQuantityRealized” />
</column>
<column weight=”4″ description=”Jm. (pomocnicza)”>
<tableData var=”SecondaryUnitSymbol” />
</column>
</table>
| Nazwa | Title |
| Opis | Tytuł dokumentu używany do nazwania pliku PDF. |
| Zawartość | Dowolny element tekstowy. |
| Parametry | Brak |
| Elementy stylujące | Brak |


