Осы бетте
PDF пішімі — қосымша құжат деректерін қоятын HTML үлгісі. PDF Android құрылғысында жасалады. Оны ашып көруге немесе басқа қосымша арқылы жіберуге болады.
Деректер Chunk Templates үлгі тілі арқылы қойылады. Нұсқаулықта өрістер, сүзгілер, шарттар, циклдер және есептеулер сипатталған.
Дайын мысал
Тапсырыс үшін PDF пішімінің мысалы бар архивті пайдаланыңыз.
| Файл | Мақсаты |
|---|---|
pdf_forms.xml | «Тапсырыс» пішімі бар PDF пішімдер тізімі. |
order_summary_kk.html | Тауарлар, жеңілдіктер мен қорытынды сомалар көрсетілетін HTML үлгісі. |
exchange-profile.xml | exchange.xml файлына қосылатын профиль. |
README.txt | Орнату қадамдары. |
Жүктелген HTML файлындағы тегтер қосымша PDF жасаған кезде нақты мәндермен ауыстырылады.
Пішімдер тізімі — pdf_forms.xml
<?xml version="1.0" encoding="utf-8"?>
<pdf-forms>
<document name="order">
<forms>
<form>
<presentation>Тапсырыс</presentation>
<file>order_summary_kk.html</file>
</form>
</forms>
</document>
</pdf-forms>
| Элемент немесе атрибут | Мақсаты |
|---|---|
<document name="…"> | Пішім қолжетімді құжат. Тапсырыс үшін order, төлем үшін invoice, стор-чек үшін storecheck көрсетіледі. |
<forms> | Осы құжатқа арналған пішімдер тізімі. |
<form> | Бір пішім. |
lang | Қосымша интерфейсінің тіл коды. Мысалы, ағылшын тілі үшін en, украин тілі үшін uk. Міндетті емес. |
<presentation> | Пайдаланушы таңдау кезінде көретін пішім атауы. |
<file> | HTML файлының кеңейтімімен бірге жазылған нақты атауы. |
Бірнеше пішім үшін <forms> ішіне жеке <form> жазбаларын қосыңыз. pdf_forms.xml толық тізімді анықтайды. Жоғарыдағы мысалда бір тапсырыс пішімі бар. Басқа пішімдерді сақтау үшін олардың жазбаларын сол файлға қосып, тиісті үлгілерді де жіберіңіз.
Қосымша алдымен lang мәні интерфейстің ағымдағы тіліне сәйкес пішімдерді таңдайды. Ондай пішімдер болмаса, lang көрсетілмеген пішімдер алынады. Олар да болмаса, осы құжаттың барлық пішімі көрсетіледі. Бір пішім болса, бірден қолданылады. Бірнешеу болса, қосымша таңдау ұсынады.
Қазақша үлгіде lang көрсетілмеген. Сондықтан оны қазақша мәтінді құжат жасау үшін басқа тілдегі интерфейспен де пайдалануға болады. Тізімде интерфейс тіліне сәйкес пішімдер болса, солар бірінші таңдалады.
HTML үлгісі
HTML үлгісін UTF-8 кодтауымен сақтаңыз. Стильдерді файлдың ішінде қалдырыңыз. Үлгіні құрылғыда pdf_forms.xml файлының қасына орналастырыңыз. <file> элементіне қалта жолынсыз файл атауын жазыңыз.
Тегтер мәндерді құжатқа қояды.
<h1>№ {$doc.number|html} тапсырыс</h1>
<p>Күні: {$doc.date_localized|html}</p>
<p>Клиент: {$doc.customer_name|html}</p>
| Тапсырыс деректерінің тобы | Мысалдар |
|---|---|
doc | {$doc.number}, {$doc.date_localized}, {$doc.customer_name}, {$doc.sum}, {$doc.discount}. |
doc.customer | Клиент анықтамалығының өрістері. Мысалы, {$doc.customer.code} немесе қосымша мекенжай өрісі. |
we | Компания деректемелері. {$we.company}, {$we.address}, {$we.registration}, {$we.billing}, {$we.comment}. |
table | Циклде оқылатын құжат жолдары. |
row.product | Ағымдағы жолдағы тауардың анықтамалық өрістері. Мысалы, {$row.product.measure_unit}. |
Өріс атаулары құжат схемасына және анықтамалықтарға сәйкес келуі керек. Мысалы, клиенттің қосымша мекенжайы анықтамалықта тиісті өріс болса ғана қолжетімді.
Құжат жолдары
<table>
<thead>
<tr>
<th>Тауар</th>
<th>Саны</th>
<th>Коэффициент</th>
<th>Бағасы</th>
<th>Сомасы</th>
</tr>
</thead>
<tbody>
{% loop in $table as $row %}
<tr>
<td>{$row.name|html}</td>
<td>{$row.count|number}</td>
<td>{$row.koef|number}</td>
<td>{$row.price|decimal}</td>
<td>{$row.sum|decimal}</td>
</tr>
{% onEmpty %}
<tr>
<td colspan="5">Тапсырыста тауарлар жоқ</td>
</tr>
{% endloop %}
</tbody>
</table>
count — енгізілген сан. koef — бір енгізілген өлшем бірлігіндегі негізгі бірліктер саны. price — негізгі бірліктің бағасы. Мысалы, әрқайсысында алты данасы бар екі қаптама count=2 және koef=6 болып беріледі.
html мәтінді HTML-ге дайындайды. number санның соңындағы артық нөлдерді алып тастайды, ал decimal соманы үтірден кейін екі таңбамен көрсетеді. Сүзгілер, бос деректемелерді тексеру және жолдарды нөмірлеу Үлгі тілі — Chunk бетінде түсіндірілген.
Жіберу және тексеру
-
Мысал архивін ашыңыз.
-
pdf_forms.xmlжәнеorder_summary_kk.htmlфайлдарын тікелей құрылғыға арналғанoutboxқалтасына орналастырыңыз. Басқа пішімдер қолданылса, олардың жазбаларын алдыменpdf_forms.xmlфайлына біріктіріңіз. -
exchange-profile.xmlмазмұнын өзexchange.xmlфайлыңыздағы<palm-client>элементінің ішіне қосыңыз.<exchange name="pdf_forms" view="PDF пішімдерін жүктеу"> <get> <files> <file name="pdf_forms" files="pdf_forms.xml"/> <file name="order_summary_pdf" files="order_summary_kk.html"/> </files> </get> </exchange> -
Құрылғыда Download exchange file, содан кейін PDF пішімдерін жүктеу әрекетін орындаңыз. Алмасу журналын тексеріңіз.
-
Компания деректемелерін толтырып, тауарлары бар тапсырысты ашыңыз. Құжат мәзірінен Preview таңдаңыз.
-
Өрістерді, санды, бағаларды, жеңілдіктерді және қорытынды сомаларды тексеріңіз. Ұзын атаулары мен жолдары көп құжаттың беттерге бөлінуін де қарап шығыңыз.
-
Share арқылы PDF файлын қажетті қосымшамен жіберіп көріңіз.
PDF файлында құжатты жасау сәтіндегі мәндер сақталады. Құжатты өңдегеннен кейін файлды қайта жасаңыз. Қосымша әрекеттерінің атаулары ағылшын интерфейсіндегі қалпында берілген.
PDF жасалмаса
| Белгісі | Нені тексеру керек |
|---|---|
| Preview және Share қолжетімсіз | pdf_forms.xml жүктелді ме, XML дұрыс па және осы құжаттың пішімі бар ма. |
| Қажетті пішім тізімде жоқ | Құжаттың name мәні, <form> жазбалары және lang бойынша таңдау тәртібі. |
| Пішімді дайындау қатесі немесе мазмұны бос | HTML файлы жүктелді ме, атауы <file> мәніне сәйкес пе және кеңейтімі .html ме. |
Өрістер бос немесе {$…} тегтері қалып қойған | Тег атаулары, құжат деректері, деректемелер және жүктелген анықтамалық өрістері. Міндетті емес өрістердің әдепкі мәнін немесе шартын тексеріңіз. |
| PDF жасалды, бірақ ашылмайды | Құрылғыда PDF көруге арналған қосымша бар ма. |
| Санның дәлдігі дұрыс емес | number сүзгісі немесе _display тегі қолданылса, тиісті баған баптауы. |
