FormCalc Locale and Picture Functions

Włącz TXFAWidgetRuntimeOptions.ScriptOptions.EnableJavaScript, by używać tych funkcji w ogólnych zdarzeniach FormCalc, skryptach calculate i validate przez dostarczany silnik QuickJS

Wybór locale

Wykonujące pole dziedziczy najbliższy niepusty atrybut locale od swoich przodków; pusty łańcuch wybiera skonfigurowane natywne locale ICU Windows albo Linux

Wpis localeSet dokumentu nadpisuje natywne symbole liczb/walut, nazwy miesięcy/dni/meridiemów i wzorce daty/czasu/liczby; brakujące wartości dziedziczą dane systemowe, z fallbackiem en_US dla własnych nazw locale

Identyfikatory locale przyjmują zapisy z podkreślnikiem i dywizem niewrażliwie na wielkość liter; wyliczone nazwy takie jak Concat("de", "_DE") rozwiązują się w czasie wykonania

Wewnętrzne żądania locale współdzielą deadline zdarzenia i dopuszczają 64 nazwane wyszukiwania, 256 jednostek kodu UTF-16 na identyfikator i 2 MiB zagregowanych metadanych; ponowienia przywracają checkpoint JavaScript, a zatwierdzony replay sesji konsumuje nagrane metadane bez kolejnego wywołania dostawcy

Funkcje obrazów

FunctionBehavior
Format(picture, value, ...)Formatuje wartości klauzulami date, time, datetime, num albo text; standardowe klauzule złożone formatują tę samą wartość, z opcjonalnym rozszerzeniem przyjmującym odpowiadające argumenty wartości
Parse(picture, text)Parsuje klauzule typowane, złożone albo alternatywy do tekstu ISO date/time, tekstu numerycznego dziesiętnego albo tekstu z usuniętymi literałami

Użyj date(de_DE){D. MMMM YYYY} dla jawnego locale, num.currency dla stylu locale i pionowej kreski dla alternatyw; cytowane literały i podwójne apostrofy zachowują znaki literałowe

Style daty, czasu i datetime używają rozwiązanych wzorców default, short, medium, long albo full; standardowy wzorzec numeryczny localeSet dostarcza zarówno num.decimal, jak i jego część całkowitą dla num.integer

Obrazy daty/czasu wspierają rok, miesiąc, dzień, nazwy dni tygodnia, zegary 12/24-godzinne, minuty, sekundy, ułamkowe milisekundy, meridiemy i jawne offsety GMT/UTC; niepoprawne daty, takie jak 30 lutego, zwracają pusty tekst

Obrazy numeryczne wspierają obowiązkowe 9, opcjonalne z, Z dopełniane spacjami, separatory dziesiętne/grup, symbole walut i kody walut ISO, procenty, znaki, nawiasy, sufiksy credit/debit i niejawny przecinek dziesiętny

Obrazy tekstu wspierają A dla liter Unicode, O albo 0 dla znaków alfanumerycznych Unicode, 9 dla cyfr i X dla punktów kodu Unicode, włącznie ze znakami z płaszczyzny uzupełniającej

Zaawansowane klauzule picture dodają numeryczną notację naukową i zachowaną precyzję ułamkową, daty porządkowe i tygodniowe, dodatkowe zegary, globalne symbole znaków/białych znaków i złożone parsowanie wejścia

Parametry null zwracają null; niepoprawne obrazy, niepoprawne wartości albo niedostępne locale zwracają pusty tekst

target = Format("num(de_DE){z,zz9.99}", 1234.5)
target = Parse("date{MMM D, YYYY}", "Sep 1, 2002")
target = Format("date{YYYY-MM-DD} 'at' time{HH:MM}", "2024-03-15T13:45:09")

Funkcje daty i czasu

FunctionParameters and result
DateFmt(style=0, locale), TimeFmt(style=0, locale)Zwracają wzorce XFA dla default 0, short 1, medium 2, long 3 albo full 4; niepoprawne style wybierają default
Date2Num(text, picture, locale)Zwraca dni seryjne z 1900-01-01 jako dniem 1; pominięty obraz używa domyślnego locale i także przyjmuje daty ISO
Num2Date(serial, picture, locale)Formatuje dni seryjne dostarczonym albo domyślnym obrazem daty locale
IsoDate2Num(text)Parsuje daty ISO kompaktowe albo z dywizami, włącznie z opcjonalnymi sufiksami czasu
IsoTime2Num(text), Time2Num(text, picture, locale)Zwracają milisekundy od północy GMT plus 1; jawne offsety są stosowane, a nieobecne offsety używają bieżącej strefy czasowej
Num2GMTime(serial, picture, locale), Num2Time(serial, picture, locale)Formatuj serialy czasu 1 do 86400000 w GMT albo bieżącej strefie czasowej
Date(), Time()Zwracają bieżące serialy daty/czasu z nagranymi wejściami zegara podczas replayu sesji

Pominięte obrazy Num2Date produkują teraz wyjście zlokalizowane; przeprowadź wywołujących wymagających wyjścia ISO na Num2Date(serial, "YYYY-MM-DD")

Jednostki, kodowanie i narzędzia tekstu

FunctionParameters and result
UnitType(measurement)Rozpoznaje aliasy in, cm, mm, pt, pc i mp; nierozpoznane jednostki domyślnie cale
UnitValue(measurement, targetUnit="in")Konwertuje miary z 72 punktami na cal, 12 punktami na cykler i 1000 milipunktami na punkt
Encode(text, encoding="url"), Decode(text, encoding="url")Wspiera eskapy URL, encje XML i encje HTML nazwane/numeryczne z walidacją skalarów Unicode
Uuid(style=0)Zwraca 32 cyfry szesnastkowe albo styl 1 z dywizami, z wersją 4 i bitami wariantu; replay używa nagranych wejść losowych
WordNum(value, style=0, locale)Produkuje angielskie słowa liczbowe, kwoty w dolarach stylu 1 albo dolary i centy stylu 2; niepoprawne dziedziny numeryczne zwracają gwiazdkę

Bieżące granice obrazów

Alternatywne ery, reprezentacje ideograficzne albo pełnowymiarowe, zlokalizowane alfabety cyfr, zlokalizowane symbole wzorców tylko wyświetlane i kompletne polityki grupowania pozostają osobnymi celami; WordNum emituje słowa angielskie

Natywny ewaluator skalarny zachowuje swoje istniejące funkcje ISO i finansowe; funkcje locale/picture wymagają ogólnego wykonania

API niższego poziomu

TXFALocaleData, HPDFXFALoadLocale, HPDFXFALoadDocumentLocale i HPDFXFALocaleJavaScript wystawiają metadane locale Unicode i bezpieczną serializację silnika

HPDFXFAExecuteJavaScriptEvent przyjmuje TXFALocaleDataProvider dla własnego wyszukiwania metadanych tylko do odczytu