Propriétés de valeurs scalaires XFA natives
L'hôte d'événements crée de véritables conteneurs de valeurs de formulaires natifs et des feuilles scalaires via l'accès aux propriétés ou getElement ; les propriétés de valeurs de champs, les valeurs de données liées et les lectures de widgets partagent la même valeur courante
Création scalaire
Les enfants scalaires pris en charge sont boolean, date, dateTime, decimal, float, integer, text et time, avec une occurrence d'une classe de valeur sélectionnée
const field = xfa.form.resolveNode("main.row[1].input");
const leaf = field.value.getElement("text", 0);
leaf.value = "updated";
field.dataNode.value = "from-data";
if (leaf.value !== "from-data") throw new Error("Value synchronization failed");
Lire une propriété scalaire manquante matérialise son nœud de formulaire natif et initialise son contenu depuis la valeur effective courante du champ ; un accès répété retourne le même objet de propriété dynamique
Value a des attributs de prototype communs, override=0 et un attribut relevant vide par défaut ; les classes scalaires prises en charge exposent des attributs de prototype communs et un name vide
La vérification one-of inclut tous les choix de valeurs standard, si bien qu'un scalaire ne peut pas être créé à côté d'un choix de valeur image, exData ou graphique existant
Synchronisation immédiate et native
Les accesseurs value et rawValue des feuilles scalaires servent de proxy au champ propriétaire ; le dataValue.value lié est un alias inscriptible de son accesseur rawValue
Les écritures de champs, de scalaires et de données mettent à jour mutuellement leurs lectures pendant le même script, y compris les autres champs qui partagent la même valeur de données liée
La publication native met à jour la valeur du dataset et les feuilles de formulaires scalaires matérialisées existantes ; les validations de widgets interactifs et les résultats de calcul synchronisent aussi les propriétés de valeurs matérialisées pour les champs liés, y compris les alias hidden et invisible
Le contenu scalaire typé est conservé comme texte fourni, y compris les chaînes canoniques de dates, d'heures et numériques ; ce stade n'introduit pas de coercition numérique automatique ni de nouveau formatage de picture
La synchronisation des alias masqués suit les scopes de données répétées réels et préserve les propriétés non matérialisées
Instances, identité et transactions
Créer et éditer une propriété de valeur dans une occurrence répétée préserve les autres occurrences ; les script objects peuvent conserver une référence de propriété scalaire pour un événement ultérieur
Les nouvelles instances répétées reçoivent des nœuds de valeurs natifs indépendants ; les écritures de données vers une instance nouvellement créée mettent à jour sa véritable feuille scalaire matérialisée avant l'enregistrement de la transaction
Les erreurs du moteur, les échecs natifs de budget de valeurs et les choix de valeurs conflictuels restaurent les octets XDP natifs exacts, y compris les données de champs, les feuilles de valeurs matérialisées et les alias partagés
Les scans de synchronisation natifs participent aux budgets d'opérations et de temps écoulé des événements ; un travail excessif rejette la transaction et restaure son snapshot
Sortie PDF enregistrée
La conversion AcroForm XFA consomme les valeurs scalaires persistées pour les valeurs de champs natives et les apparences générées ; les valeurs de première instance répétées restent inchangées
Le producteur enregistré ciblé rouvre le XDP natif avant la conversion, et des vérifications pypdf et MuPDF indépendantes inspectent les feuilles de formulaires typées, les valeurs de datasets, les champs natifs et le texte d'apparence réellement visible
Cibles d'intégration restantes
Le XML exData natif prend en charge la création de valeurs absentes, l'import réel de XML étranger, la sérialisation immédiate de scripts et la consommation persistée de draws riches
Les consommateurs scalaires de draws et de captions prennent en charge les valeurs créées par instance et les overrides vides explicites
La création de valeurs d'images et de graphiques prend en charge les enfants image, arc, line et rectangle natifs avec de véritables consommateurs draw
La validation complète du format scalaire, les apparences de widgets riches et l'embarquement d'apparences Unicode restent des cibles d'implémentation séparées
APIs associées
Data DOM natif, Valeurs par défaut de champs natives, Création de propriétés absentes et Runtime XFA interactif