TXFAEventBinding
Unit: HPDFXFAEventScript
Declaración
TXFAEventBinding= record
Name, ClassName: AnsiString;
ParentIndex: Integer;
Value, Presence, Access: AnsiString;
InstanceCount, InstanceGroup: Integer;
MinInstances, MaxInstances: Integer;
DefaultValue, DefaultPresence, DefaultAccess: AnsiString;
Repeated: Boolean;
Identity, ScriptSource, Locale, EventActivity: AnsiString;
Domain: TXFAEventBindingDomain;
DataIdentity: AnsiString;
DataBindingEnabled: Boolean;
Attributes, DefaultAttributes: TXFAEventAttributes;
PropertyPath: AnsiString;
PropertyOwnerIndex: Integer;
XML, DefaultXML: AnsiString;
DataBindingRef, DataContextIdentity: AnsiString;
DataBindingExplicit: Boolean;
end;
Comportamiento
Describe un nodo host virtual de evento; cada ocurrencia repetida real de un subform recibe un binding y unos hijos separados
ParentIndex selecciona su binding padre, o -1 para la raíz; Value, Presence y Access describen el estado actual de la ocurrencia
InstanceGroup identifica los bindings gestionados por el mismo instance manager, mientras que InstanceCount y los límites de ocurrencias describen los topes del manager
Los valores por defecto de la plantilla inicializan las instancias nuevas; Repeated identifica los nodos con una declaración occur
TXFAWidgetRuntime construye estos records a partir de la plantilla y del contexto actual de datasets antes de la ejecución del engine
Identity es la identidad host estable de esta ocurrencia; ScriptSource contiene el JavaScript de un script object declarado dentro de variables
Un Identity vacío usa una identidad única basada en el índice del binding; suministra identidades explícitas estables cuando el orden de binding pueda cambiar, para que las referencias retenidas sigan apuntando a la misma ocurrencia
Locale transporta el atributo locale opcional del nodo como texto UTF-8; el nodo en ejecución hereda el valor de ancestro no vacío más cercano, y una cadena vacía selecciona el locale del usuario
EventActivity suministra xfa.event.name para el binding en ejecución; TXFAWidgetRuntime establece las actividades de evento y los nombres de contexto calculate o validate, mientras que los bindings de nivel inferior vacíos usan event
Domain distingue los nodos de formulario de los nodos nativos datasets, dataGroup y dataValue; su valor por defecto xebdForm preserva a los llamadores existentes
DataIdentity referencia la identidad estable de otro binding para conectar un campo o subform del formulario a su nodo de datos; las lecturas de campo y de valor de datos comparten entonces un único valor en vivo
DataBindingEnabled permite la creación implícita de nodos de datos cuando un prototipo repetido de formulario no tiene un binding de datos existente; los campos de runtime con bind match=none lo dejan en False y no exponen ningún nodo de datos sintético
Los InstanceGroup del dominio de datos registran la ocurrencia hermana homónima para la publicación del objetivo virtual nativo; los bindings de datos no exponen instance managers del formulario
Attributes contiene los atributos de propiedades efectivos actuales; DefaultAttributes contiene los atributos de plantilla usados para un nodo de propiedades recién clonado
El Name del dominio de propiedades conserva el atributo name real, normalmente vacío; su ClassName aporta el componente SOM y sus índices de padre preservan la jerarquía de propiedades y las ocurrencias hermanas locales
PropertyPath y PropertyOwnerIndex identifican una propiedad exclusiva del formulario ausente en la plantilla; la ruta usa componentes de ocurrencia de clase, y el índice del propietario selecciona la ocurrencia nativa del formulario en el mismo array de bindings
Los bindings de formulario exclusivos del runtime exponen los atributos nativos actuales mientras sus DefaultAttributes usan los valores por defecto del schema, de modo que clonar un prototipo repetido crea valores de propiedad por defecto en vez de heredar el override de otra instancia
Deja PropertyPath vacío en los bindings de propiedades ya declaradas; su índice de propietario asociado queda entonces sin uso
Para exData, XML es el elemento UTF-8 serializado actual y DefaultXML aporta el contenido de plantilla para una instancia repetida nueva
Un binding exData con XML vacío parte de un elemento exData nativo vacío; el DefaultXML exclusivo de formulario se mantiene vacío para que una ocurrencia nueva no herede el contenido externo importado de otra instancia
Las cadenas de entrada XML participan en el presupuesto de bytes del contexto del evento; saveXML y loadXML usan repetición validada de respuestas nativas y publican mediante xeakLoadXML
El XML del dominio de datos transporta los metadatos nativos shallow acotados del runtime: nombre de elemento, namespace, valor, atributos, declaraciones de namespace, contenido de no texto ordenado y posiciones de hijos; DefaultXML no se usa para los nodos de datos
Los metadatos contienen un nodo y sus hijos directos de texto, comentario e instrucción de procesamiento, evitando duplicar el subárbol descendiente en cada binding de datos
DataBindingRef es el selector dataRef recortado; DataBindingExplicit distingue un dataRef vacío explícito de un binding implícito por nombre de campo
DataContextIdentity identifica el ámbito nativo real de los datos del campo con independencia de DataIdentity, que identifica su hoja seleccionada
Estos campos permiten que las importaciones XML reevalúen los bindings contra el Data DOM recién actualizado de inmediato, incluidos los objetivos recién disponibles y las selecciones descendientes, con comodines, de clase e indexadas
Las aplicaciones normales usan TXFAWidgetRuntime para construir los bindings nativos; los llamadores de nivel inferior pueden omitir los metadatos XML para nodos de datos de solo escalares y dejar los campos nuevos del binding en sus valores por defecto
APIs relacionadas
Interactive Dynamic XFA Widget Runtime, FormCalc Functions y XFA Packet DOM