Propiedades de valores escalares XFA nativas
El host de eventos crea contenedores reales de valores de formulario y hojas escalares nativas a través del acceso a propiedades o de getElement; las propiedades de valor de campos, los valores de datos enlazados y las lecturas de widgets comparten el mismo valor actual
Creación escalar
Los hijos escalares soportados son boolean, date, dateTime, decimal, float, integer, text y time, con una ocurrencia de una clase de valor seleccionada
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");
Leer una propiedad escalar ausente materializa su nodo nativo de formulario e inicializa su contenido a partir del valor efectivo actual del campo; el acceso repetido devuelve el mismo objeto de propiedad en vivo
Value tiene atributos comunes del prototipo, override=0 y un atributo relevant vacío por defecto; las clases escalares soportadas exponen atributos comunes del prototipo y un name vacío
La verificación de uno-solo incluye todas las opciones estándar de valor, de modo que un escalar no puede crearse junto a una opción de valor image, exData o gráfica existente
Sincronización inmediata y nativa
Los accessors value y rawValue de la hoja escalar hacen de proxy del campo propietario; el dataValue.value enlazado es un alias escribible de su accessor rawValue
Las escrituras de campos, escalares y datos actualizan las lecturas de los demás durante el mismo script, incluidos otros campos que comparten el mismo valor de datos enlazado
La publicación nativa actualiza el valor del dataset y las hojas escalares de formulario materializadas existentes; los commits de widgets interactivos y los resultados de cálculo también sincronizan las propiedades de valor materializadas de los campos enlazados, incluidos los aliases hidden e invisible
El contenido escalar tipado se retiene como texto suministrado, incluidos los strings canónicos de fecha, hora y números; esta etapa no introduce coerción numérica automática ni formateo nuevo de pictures
La sincronización de aliases ocultos sigue los ámbitos reales de datos repetidos y preserva las propiedades no materializadas
Instancias, identidad y transacciones
Crear y editar una propiedad de valor en una ocurrencia repetida preserva las demás ocurrencias; los script objects pueden retener una referencia de propiedad escalar para un evento posterior
Las nuevas instancias repetidas reciben nodos nativos de valores independientes; las escrituras de datos a una instancia recién creada actualizan su hoja escalar materializada real antes de que la transacción se guarde
Los errores del engine, los fallos nativos de presupuesto de valores y las opciones de valor en conflicto restauran los bytes nativos exactos del XDP, incluidos los datos de campos, las hojas de valores materializadas y los aliases compartidos
Los escaneos nativos de sincronización participan en los presupuestos de operaciones y tiempo transcurrido del evento; el trabajo excesivo rechaza la transacción y restaura su snapshot
Salida PDF guardada
La conversión XFA a AcroForm consume los valores escalares persistidos para los valores nativos de campos y las apariencias generadas; los valores de la primera instancia repetida permanecen sin cambios
El productor guardado enfocado reabre el XDP nativo antes de la conversión, y checks independientes de pypdf y MuPDF inspeccionan las hojas de formulario tipadas, los valores del dataset, los campos nativos y el texto real de apariencia visible
Objetivos de integración restantes
El XML exData nativo soporta la creación de valores ausentes, la importación real de XML externo, la serialización inmediata de scripts y el consumo persistido de draws enriquecidos
Los consumidores escalares de draw y caption soportan valores creados por instancia y overrides vacíos explícitos
La creación de valores de imagen y gráficos soporta hijos nativos de image, arc, line y rectangle con consumidores reales de draw
La validación completa de formatos escalares, las apariencias enriquecidas de widgets y el embebido de apariencias Unicode siguen siendo objetivos de implementación separados
APIs relacionadas
Data DOM nativo, Valores por defecto nativos de campos, Creación de propiedades ausentes y Runtime XFA interactivo