Risoluzione dei problemi relativi agli errori di precisione nei calcoli su un numero elevato mediante Adaptive Forms in Adobe Experience Manager 6.5
Se Forms adattivo in AEM 6.5 non produce risultati accurati per calcoli su numeri elevati con precisione a quattro decimali, è consigliabile utilizzare librerie JavaScript open source come decimal.js o bignumber.js. Queste librerie consentono di garantire la conformità e l'accuratezza nei casi di utilizzo critici, ad esempio i moduli finanziari.
Descrizione description
Ambiente
- Prodotto: Adobe Experience Manager (AEM) Forms
- Versione: AEM 6.5 (on-premise) (Foundation + componenti core)
Problema/Sintomi
I Forms adattivi non calcolano accuratamente i numeri elevati (in genere 7-10 cifre) con precisione a quattro decimali. Ciò può influire sui moduli finanziari o di conformità, in cui sono richiesti valori esatti senza errori di arrotondamento. Questo comportamento è causato da una perdita di precisione a virgola mobile nell’implementazione corrente del prodotto.
Esempi:
-
Moltiplicazione:
Previsto:
7384921.1234 × 84275931.56 = 622,347,918,234,567.7890Effettivo:
622347918234567.78 -
Sottrazione:
Previsto:
$193,847,562,983,745.4321 - $6,789.1234 = $193,847,562,976,956.3087Effettivo:
$193,847,562,976,956.3100
La funzionalità predefinita di Adaptive Forms non supporta questo livello di precisione.
Risoluzione resolution
Per risolvere il problema:
-
Utilizzare le librerie JavaScript open source come
decimal.jsobignumber.jsper l'aritmetica ad alta precisione. Per ulteriori informazioni, consulta archivio GitHub decimal.js e archivio GitHub bignumber.js. -
Includi la libreria nel progetto. Crea una funzione personalizzata utilizzando la libreria per eseguire calcoli con precisione al quarto decimale.
- Nota: Adobe non fornisce o supporta queste librerie di terze parti pronte all'uso e non è responsabile della loro implementazione o delle loro prestazioni. Quando si includono librerie di terze parti, anche note, è sempre necessario verificare i rischi per la sicurezza, l'impatto sull'ingombro del client e garantire test approfonditi in tutti gli ambienti rilevanti.
Per una personalizzazione o un’integrazione avanzata, rivolgiti a uno sviluppatore con esperienza in aritmetica ad alta precisione e AEM Forms.
Lettura correlata
Introduzione alle funzioni personalizzate per Forms adattivo basato sui componenti core nelle esercitazioni WKND di AEM Sites.