Native XFA Scalar Value Properties
Host zdarzeń tworzy rzeczywiste natywne kontenery wartości formularza i liście skalarne przez dostęp do właściwości albo getElement; właściwości wartości pól, związane wartości danych i odczyty widgetów dzielą tę samą bieżącą wartość
Scalar creation
Obsługiwane skalarne potomki to boolean, date, dateTime, decimal, float, integer, text i time, z jednym wystąpieniem jednej wybranej klasy wartości
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");
Czytanie brakującej skalarnej właściwości materializuje jej natywny węzeł formularza i inicjalizuje zawartość z bieżącej efektywnej wartości pola; powtórny dostęp zwraca ten sam żywy obiekt właściwości
Value ma wspólne atrybuty prototypu, override=0 i pusty atrybut relevant domyślnie; obsługiwane skalarne klasy odsłaniają wspólne atrybuty prototypu i pustą nazwę
Sprawdzenie one-of obejmuje wszystkie standardowe wybory wartości, więc skalarnego nie można utworzyć obok istniejącego wyboru wartości image, exData albo graphic
Immediate and native synchronization
Aksesory value i rawValue liścia skalarnego proxy'ują posiadające pole; związany dataValue.value jest zapisywalnym aliasem swojego akcesora rawValue
Zapisy pól, skalarnych i danych aktualizują nawzajem swoje odczyty w tym samym skrypcie, łącznie z innymi polami dzielącymi tę samą związaną wartość danych
Natywna publikacja aktualizuje wartość dataset i istniejące zmaterializowane skalarne liście formularza; interaktywne commity widgetów i wyniki obliczeń też synchronizują zmaterializowane właściwości value dla związanych pól, łącznie z aliasami hidden i invisible
Typowana skalarna zawartość jest zachowywana jako dostarczony tekst, łącznie z kanonicznymi ciągami daty, czasu i liczb; ten etap nie wprowadza automatycznej koercji numerycznej ani nowego formatowania picture
Synchronizacja ukrytych aliasów podąża za rzeczywistymi powtarzalnymi zakresami danych i zachowuje niezmaterializowane właściwości
Instances, identity and transactions
Tworzenie i edycja właściwości value w jednym powtarzalnym wystąpieniu zachowuje inne wystąpienia; obiekty skryptowe mogą zachować referencję skalarnej właściwości na późniejsze zdarzenie
Nowe powtarzalne wystąpienia dostają niezależnych natywnych węzłów value; zapisy danych do nowo utworzonego wystąpienia aktualizują jego rzeczywisty zmaterializowany skalarne liść przed zapisaniem transakcji
Błędy silnika, natywne awarie budżetu wartości i sprzeczne wybory wartości przywracają dokładne natywne bajty XDP, łącznie z danymi pól, zmaterializowanymi liśćmi wartości i współdzielonymi aliasami
Natywne skany synchronizacji uczestniczą w budżetach operacji i upływu czasu zdarzenia; nadmierna praca odrzuca transakcję i przywraca jej snapshot
Saved PDF output
Konwersja XFA AcroForm konsumuje utrwalone skalarne wartości dla natywnych wartości pól i generowanych wyglądów; wartości powtarzalnych pierwszych wystąpień pozostają niezmienione
Fiksowany producer zapisu ponownie otwiera natywne XDP przed konwersją, a niezależne sprawdzenia pypdf i MuPDF przeglądają typowane liście formularzy, wartości dataset, natywne pola i rzeczywisty widoczny tekst wyglądów
Remaining integration targets
Natywny XML exData wspiera tworzenie brakujących wartości, rzeczywisty import XML obcego, natychmiastową serializację skryptową i utrwaloną konsumpcję drawów rich
Skalarne konsumenci draw i podpisów wspierają utworzone per-instance wartości i jawne puste nadpisania
Tworzenie wartości obrazów i grafiki wspiera natywnych potomków obrazów, łuków, linii i prostokątów z rzeczywistymi konsumentami draw
Kompletna walidacja formatu skalarnego, wyglądy rich widgetów i osadzanie Unicode wyglądów pozostają odrębnymi celami implementacji
Related APIs
Native Data DOM, Native Field Defaults, Absent Property Creation i Interactive XFA Runtime