Funzioni FormCalc di Stringhe, Date e Finanza

Gli script calculate XFA supportano le famiglie di funzioni implementate oltre l'aritmetica: funzioni di stringhe, conversione delle date e la libreria finanziaria, con valori letterali di stringa ed espressioni a tipo misto

Funzioni di stringhe

Valori e riferimenti documenta Ref, la semantica di copia dei valori, l'assegnazione di riferimenti, il distacco di null, gli argomenti delle funzioni, i confronti di identit\u00e0 degli oggetti e gli handle trattenuti nel movimento di istanze ripetute

Eval dinamico esegue testo sorgente attraverso il compilatore nativo e il runtime generale, comprese variabili dichiarate localmente, funzioni, cicli, mutazioni di campi, richieste di locale e risposte registrate del trasporto host

Concat, Len, Left, Right, Substr, Replace, Lower, Upper, Trim e Space operano su valori letterali tra virgolette e riferimenti a campi; le sottoespressioni numeriche vengono convertite automaticamente in testo

Funzioni di date

Il valutatore scalare nativo converte il testo ISO YYYY-MM-DD con Date2Num e Num2Date; i giorni seriali FormCalc usano il 1900-01-01 come giorno 1, e Date() restituisce il seriale odierno

L'esecuzione generale con EnableJavaScript supporta anche le picture di locale attraverso Date2Num(value, picture, locale), Num2Date(serial, picture, locale), DateFmt, TimeFmt, IsoTime2Num, Time2Num, Num2Time, Num2GMTime e Time

Nell'esecuzione generale le picture Num2Date omesse usano ora il pattern predefinito della locale ambiente; passate "YYYY-MM-DD" esplicitamente per preservare l'output ISO precedente, e usate IsoDate2Num per input ISO rigoroso

Funzioni di Locale e Picture di FormCalc documenta parametri, selezione della locale ereditata, override localeSet incorporati, picture numeriche/testuali, unit\u00e0, codifica e numeri in parole

Clausole Picture avanzate documenta notazione scientifica, precisione frazionaria espressa, date ordinali e settimana ISO, varianti di orologio, simboli globali e parsing composto in eventi generali, calcoli e validazione

Funzioni finanziarie

Le funzioni finanziarie ora seguono la semantica dei parametri XFA FormCalc nel valutatore calculate nativo e nel compilatore di eventi generali

FunzioneParametri e risultato
Pmt(principal, rate, periods)rata periodica positiva del prestito; tutti gli argomenti devono essere positivi
FV(payment, rate, periods)valore futuro di pagamenti uguali; tasso zero restituisce il pagamento per i periodi
PV(payment, rate, periods)valore attuale di pagamenti uguali; tasso zero restituisce il pagamento per i periodi
Rate(future, present, periods)tasso composto richiesto per far crescere il valore attuale fino al valore futuro
CTerm(rate, future, initial)periodi richiesti per un investimento iniziale composto
Term(payment, rate, future)periodi richiesti a pagamenti uguali per raggiungere il valore futuro
Apr(principal, monthlyPayment, periods)tasso annuo percentuale trovato da un solver limitato del tasso mensile
NPV(rate, cashFlow1, ...)flussi di cassa scontati a fine periodo nell'ordine degli argomenti
IPmt e PPmtinteressi o capitale pagati per (principal, annualRate, monthlyPayment, firstMonth, months); gli indici dei mesi partono da 1 e 0 seleziona comunque il primo mese

Questo corregge il precedente ordinamento degli argomenti in stile foglio di calcolo e la gestione dei segni: migrate Pmt(rate, periods, principal) in Pmt(principal, rate, periods) e aspettatevi un risultato positivo; FV e PV ora operano su pagamenti periodici invece che su un singolo importo iniziale o finale

Rate ora calcola la crescita composta; NPer(rate, payment, future) resta un'estensione non standard equivalente a Term(payment, rate, future)

Dominii finanziari non validi respingono atomicamente gli eventi generali; il valutatore calculate nativo riporta un'espressione fallita, e l'iterazione consuma i budget di operazioni e tempo configurati

Libreria di eventi generali

Il compilatore di eventi generali FormCalc supporta nomi integrati case-insensitive, valori letterali decimali iniziali, Null, funzioni trigonometriche scientifiche, Pi, conversione gradi/radianti, Stuff e Str; Count include il testo vuoto e omette i valori null, e gli aggregati tutti-null restituiscono null

Mod conserva il segno del dividendo in entrambi i percorsi di valutazione; Mod(-13, 3) restituisce -1

Tipizzazione

La valutazione numerica resta tipizzata come Double: una formula il cui capo \u00e8 una funzione di stringhe si risolve testualmente, e i risultati finanziari si riconvertono in espressioni numeriche cos\u00ec che Round(Pmt(...), 2) funzioni; qualsiasi disallineamento di tipo degrada ancora a un valore vuoto

Logica condizionale e array ripetuti

I confronti, And, Or, Not, i booleani e le espressioni lazy If(condition, whenTrue, whenFalse) forniscono un controllo di flusso condizionale con limiti

Sum, Avg, Min, Max e Count accettano selettori numerici ripetuti come rows[*].amount, mentre le loro forme ordinarie con lista di argomenti continuano ad aggregare espressioni scalari

Richieste dynamic di istanze

InstanceAdd(name, count) e InstanceRemove(name, index) invocano il callback di istanza validato configurato dal chiamante e restituiscono il conteggio di istanze risultante

Vedi Scripting XFA FormCalc e JavaScript limitato per il percorso QuickJS opzionale, gli array tipizzati, l'isolamento del runtime, i budget e la telemetria

Trasporto HTTP esplicito

Gli script di eventi generali supportano Get, Post e Put case-insensitive attraverso il trasporto host esplicito dell'applicazione; gli argomenti vengono inoltrati in ordine e l'applicazione fornisce la risposta

Queste funzioni richiedono EnableJavaScript e un callback HostTransport configurato nel runtime dei widget; il valutatore scalare nativo non esegue richieste di rete