HPDFXFAResolveFieldValueNode
Unit: HPDFXFA
Declaration
function HPDFXFAResolveFieldValueNode(Document: TXFADocument;
FieldNode, DataNode: TXFANode; CreateNode: Boolean= False;
MaxNodes: Integer= 65536): TXFANode; overload;
function HPDFXFAResolveFieldValueNode(Document: TXFADocument;
FieldNode, DataNode: TXFANode; CreateNode: Boolean;
MaxNodes: Integer; var RemainingOperations: Integer; Deadline: Int64;
DeadlineCheck: TXFABindingDeadlineCheck = nil): TXFANode; overload;
Parameters
| Parameter | Betekenis |
|---|---|
Document | Het native XFA-document dat eigenaar is van de veld-, data- en form-packets |
FieldNode | Het template-veld waarvan de effectieve waarde wordt gevraagd |
DataNode | De dataset-occurrence-context; herhaalde velden vragen hun eigen occurrence-context |
CreateNode | False lost leesbare data, een form-waarde of de template-default op; True geeft een schrijfbare instance-waarde terug |
MaxNodes | De occurrence-grens die wordt doorgegeven aan native form instance-creation |
Behavior
Een bestaande gebonden dataset-node wint, zelfs wanneer diens inhoud leeg is; een ontbrekende node valt terug op de bijbehorende native form-waarde en daarna op het eerste value-child in het template-veld
Een read-only opzoek maakt geen dataset- of form-node aan en geeft nil terug wanneer geen van deze waardebronnen bestaat
Met CreateNode True maakt normale data binding de schrijfbare dataset-node aan of geeft die terug; een niet-gebonden veld of een document zonder schrijfbare datasets gebruikt in plaats daarvan een aparte native form-waarde
Een nieuw aangemaakte dataset-node kan aanvankelijk leeg zijn; de aanroeper levert de committe waarde aan in plaats van toe te wijzen via een eerder teruggegeven template-default
De teruggegeven node hoort bij Document en blijft geldig tot dat document of die node wordt verwijderd; read-only opzoek kan een gedeelde template-node teruggeven, dus vraag met CreateNode True een schrijfbare node op voordat je diens inhoud wijzigt
Null Document of FieldNode geeft nil terug; excessieve native form-occurrence-indices of ancestor-diepte raisen EHPDFXFAError via de form-resolver
Consumers
De budget-overload deelt de operation-ruimte en deadline van de aanroeper met native binding resolution; nul RemainingOperations is uitgeput, negatief schakelt de caller-ruimte uit en een negatieve Deadline schakelt elapsed-time-checks uit
DeadlineCheck kan het klok-domein van de aanroeper aanleveren; nil gebruikt GetTickCount64-milliseconden, terwijl de interactieve runtime diens geconfigureerde monotone deadline-check aanlevert
Binding-scans behouden vaste segment-, traversal-diepte- en charged-step-limieten; budgetfalen raiset EHPDFXFAError en interactieve transacties herstellen hun native snapshot
Zie HPDFXFAResolveBoundDataNode en TXFABindingDeadlineCheck voor de binding-budget- en callback-contracten
De interactieve runtime en XFA AcroForm-conversie delen deze resolver, waardoor ontbrekende defaults, expliciet lege data en herhaalde occurrence-waarden consistent blijven
Interactieve edits en berekeningen verkerven opnieuw een schrijfbare instance-node vóór het committen, met behoud van de template-default voor andere instances
Related APIs
Native XFA Field Defaults, HPDFXFAResolveFormInstanceNode en Interactive Dynamic XFA Widget Runtime