DocToPdf - wbudowane funkcje: Różnice pomiędzy wersjami
Nie podano opisu zmian |
Nie podano opisu zmian |
||
| Linia 469: | Linia 469: | ||
# format( recordset (kapital, ‘harmonogram’) + recordset (finans, ‘harmonogram’), ‘pl’) | # format( recordset (kapital, ‘harmonogram’) + recordset (finans, ‘harmonogram’), ‘pl’) | ||
# | # | ||
|} | |} | ||
Wersja z 11 mar 2021, 15:05
1. Wstawienie zmiennej
| Opis funkcji | Celem funkcji jest bezpośrednie wstawienie wartości zmiennej z danych wejściowych do dokumentu. |
| Format funkcji | ${pole}
gdzie pole - nazwa pola z danych wejściowych. W przypadku excela jest to nazwa kolumny. |
| Przykład wywołania | ${adres } → ul. wielka 13/5 |
2. Zamiana liczby na wartość kwotową (inwords)
| Nazwa funkcji | inwords | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Opis funkcji | Funkcja zamienia wartość typu float na słowną wartość kwoty z dopisaniem walut.
Język ustalany z poziomu wywołania job w api. (tylko język polski, pozostałe języki wymagają dodania parametru do funkcji w docx) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Format funkcji | ${inwords(number, language, currency)}
gdzie number - liczba zapisana zgodnie z standardem ISO 4217. Parametr może być zmienną pobraną z danych wejściowych, np. ${inwords(brutto)} language (parametr opcjonalny) - język tłumaczenia, domyślna wartość en (parametr opcjonalny) currency (parametr opcjonalny) - waluta tłumaczenia, domyślna wartość USD (parametr opcjonalny) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Przykład wywołania | ${inwords('21,20')} → dwadzieścia jeden złotych dwadzieścia groszy
${inwords(brutto)} → dwadzieścia jeden złotych dwadzieścia groszy ${inwords('21.20', ' en','USD' )} → twenty dollars twenty cents ${inwords('134,07', ‘pl’, ‘PLN’)} → sto trzydzieści cztery złote siedem groszy | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Obsługiwane lokalizacje | Funkcja konwertuje kwotę zapisaną liczbą na zapis słowny. Funkcja wspiera poniższe lokalizacje.
|
3. Formatowanie liczby (format)
| Nazwa funkcji | format |
| Opis funkcji | Funkcja przekształca liczbę zmiennoprzecinkową na format waluty określonej lokalizacji. |
| Format funkcji | ${format(liczba, lokalizacja)}
gdzie: liczba - liczba zmiennoprzecinkowa, która podlega formatowaniu. Może być to zmienna pobrana z danych wejściowych, np. ${format(brutto)} lokalizacja (parametr opcjonalny) - parametr odpowiedzialny za format wyjściowy przekształcenia zmiennej liczbowej na wartość walutową. Parametr ten musi być zgodny z "Powszechnym repozytorium danych lokalizacji" (CLDR - Unicode Common Locale Data Repository) wykorzystywanych przez International Components for Unicode (ICU). Obsługiwane formaty dostępne na http://www.localeplanet.com/icu/ , np. pl, pl_PL, en, en_GB, en_US. Domyślna wartość en_US. Domyślnie formatowanie: do dwóch miejsc po przecinku |
| Przykład wywołania | ${format(3000.000)} → 3,000.00
${format(brutto,'pl_PL'} → 3 000,00 ${format(100000000,'hi_IN')} → 10,00,00,000.00 |
4. Kod kreskowy, kod QR (barcode)
| Nazwa funkcji | barcode |
| Opis funkcji | Funkcja wstawia obraz z kodem kreskowym podanym w parametrze. |
| Format funkcji | ${barcode(parametr, typ kodu, szerokość, wysokość)}
gdzie: parametr - wartość tekstową lub liczbowa. Parametr może być zmienną pobraną z danych wejściowych. typ kodu - typ kodu kreskowego. Typ kodu zgodny z jest listą podaną poniżej. szerokość - szerokość obrazu, który ma zawierać kod kreskowy. Szerokość podawana jest pikselach (px). wysokość - wysokość obrazu, który ma zawierać kod kreskowy. Wysokość podawana jest pikselach (px). Lista obsługiwanych typów kodów kreskowych:
|
| Przykład wywołania | ${barcode(wartość kodu kreskowego, typ kodu, szerokość, wysokość)}
${barcode(CodeCode128, 'code128', '80px', '80px')} ${barcode(CodeEan13, 'ean13', '80px', '80px')} ${barcode(CodeInterleaved2of5, 'interleaved2of5', '210px', '210px')} ${barcode(CodeQrcode, 'qrcode', '210px', '210px')} |
5. Obraz z zewnętrznego źródła (image)
| Nazwa funkcji | image |
| Opis funkcji | Funkcja wstawia obraz z podanego źródła (adres url) |
| Format funkcji | ${image(url, szerokość, wysokość, ratio)}
gdzie: url - adres url wstawianego obrazu. Parametr może być zmienną pobraną z danych wejściowych. szerokość - szerokość wstawianego obrazu. Szerokość podawana jest miarach: cm, mm, in, pt, pc, px, %, em, ex. wysokość - wysokość wstawianego obrazu. Wysokość podawana jest pikselach cm, mm, in, pt, pc, px, %, em, ex. ratio - przyjmuje wartości true/false służy do włączenia obsugi proporcji obrazu. Domyślnie parametr ustawiony na false. Lista obsługiwanych typów obrazów:
|
| Przykład wywołania | ${image(UserLogo1)}
${image(UserLogo2, '200')} ${image(UserLogo3, '100px', '100px')} ${image('https://www.google.pl/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png', '100px', '100px')} ${image(UserLogo3, '100px', '800px', 'true')} |
6. Instrukcje warunkowe (if)
| Nazwa funkcji | if |
| Opis funkcji | Funkcja wykonuję podaną instrukcję warunkową. Jeśli instrukcja kończy się wynikiem true, to objęty funkcją
fragment tekstu jest wstawiany do dokumentu. W przeciwnym wypadku fragment jest usuwany. |
| Format funkcji | ${if(warunek)} tekst, który ma się wyświetlić w przypadku gdy parametr = true ${endif}
gdzie: warunek - instrukcja warunkową zgodną z biblioteką Symfony Expression Language. Składnia opisana jest na stronie: https://symfony.com/doc/current/components/expression_language/syntax.html. W instrukcja warunkowych można wykorzystywać zmienne pobrane z danych wejściowych |
| Przykład wywołania | ${if(Recipient_ZIP_Code=='60-650')}
Treść dla adresatów posiadających kod 60-650 ${endif} |
7. Tworzenie tabel w dokumencie (RECORDSET)
8. Funkcje arytmetyczne
| Opis funkcji | Funkcja umożliwia wykonywanie wyrażeń za pomocą expression language |
| Format funkcji | ${wyrażenie}
gdzie: wyrażenie - podstawowa operacja arytmetyczna, np. ${brutto * vat } |
| Przykład wywołania | ${1 + 2} → 3
${1 – 2} → -1 ${2 * 2)} → 4 ${4 / 2)} → 2 ${4.2 + 1.2)} → 5.4 ${4,2 + 1,2)} → 5.4 ${evaluate((4 + 2) * 3)} → 18 ${ZmiennaA} = 12 ${ZmiennaA + ZmiennaB * 3} → 72 |
9. Funkcja Teraz
| Nazwa funkcji | now |
| Opis funkcji | Funkcja zwraca obecną datę i czas w którym dokument jest generowany w formacie "Y-m-d H:i:s". |
| Format funkcji | ${now( )} |
| Przykład wywołania | ${now()} |
10. Funkcja formatowania czasu
| Nazwa funkcji | dateformat |
| Opis funkcji | Funkcja umożliwia konwertowanie tekstu reprezentującego znacznik czasu z jednego formatu, na inny. |
| Format funkcji | ${dateformat(czas, format)}
gdzie: czas - tekst będący reprezentacją znacznika czasowego. Interpretuje znaczniki czasowe zapisane w formatach zrozumiałych dla klasy \DateTime format - formaty daty zgodny z wbudowanymi formatami dat dla PHP Wartości domyślne argumentów:
|
| Przykład wywołania | ${dateformat('2020-03-12 15:17:22' ,’Y-m-d H:i:sP’)} → 2020-03-12 15:17:22+00:00
${dateformat('03/12/2020 15:17:22', ’Y-m-d H:i:sP’)} → 2020-03-12 15:17:22+00:00 ${dateformat('12.05.2020 15:17', ’g:ia \o\n l jS F Y’)} → 3:17pm on Tuesday 12th May 2020 ${dateformat('2020-03-12 15:17:22', ’Y-m-d H:i:sP’)} → 2020-03-12 15:17:22+00:00 ${dateformat(now(),’m-d-Y’)} → 07-03-2020 |
11. Zagnieżdżanie funkcji
| Opis funkcji | Podane powyżej funkcji można dowolnie zagnieżdżać, np.:
${format( recordset (kapital, ‘harmonogram’) + recordset (finans, ‘harmonogram’), ‘pl’)} gdzie funkcje realizowane są w następującej kolejności:
|