TXFAEventAction

유닛: HPDFXFAEventScript

선언

TXFAEventAction= record
  Kind: TXFAEventActionKind;
  Target, Presence, Value: AnsiString;
  Argument, Argument2: Integer;
  VirtualPath: AnsiString;
  PropertyPath: AnsiString;
  DataPath: AnsiString;
end;

동작

일반 이벤트 호스트가 발행한 파싱된 literal 연산 또는 검증된 변경을 나타냅니다

Kind는 presence, raw 값, 접근, 인스턴스 연산 중 하나를 고르고, 인수는 인덱스와 인스턴스 설정을 담습니다

일반 호스트는 Target을 바인딩 참조로, VirtualPath를 같은 이벤트에서 만들어진 노드의 검증된 위치로 씁니다

액션 값은 UTF-8 텍스트입니다. 잘못된 Unicode, 액션 필드, 예산은 문서 발행 전에 이벤트를 거절합니다

검증된 리플레이와 롤백에는 레코드를 공유 문서에 곧장 적용하지 말고 TXFAWidgetRuntime.DispatchEvent를 쓰세요

아이덴티티 바인딩과 스크립트 결과는 검증된 텍스트에 Value를 쓰며 일반 폼 변경이 아니라 런타임이 해석합니다

호스트 상태 액션은 Value에 name|value 텍스트를 담고, focus 액션은 focus나 clear를 담으며, 편집 재설정 액션은 선택한 필드 타깃과 함께 빈 Value를 갖습니다

PropertyPath는 Target이 고른 폼 소유자 아래 속성을 주소하며 font[0]/fill[0]/color[0] 같은 class occurrence를 씁니다. 소유자가 현재 이벤트에서 삽입됐다면 VirtualPath와 조합할 수 있습니다

빈 PropertyPath는 기존 직접 바인딩 타깃을 유지합니다. 런타임은 생성이나 이후 쓰기를 적용하기 전에 경로 깊이, 스키마 카디널리티, choice 그룹, 네이티브 노드 예산을 검증합니다

DataPath는 Target이 고른 데이터 바인딩 아래 XML 임포트가 만든 새 Data DOM 자손을 식별하며 0/1 같은 0부터 시작하는 요소 자식 위치를 씁니다. 텍스트, 주석, 처리 명령은 요소 위치로 세지 않습니다

소유 데이터 그룹이 현재 이벤트에서 폼 인스턴스 매니저가 만들었다면 DataPath가 VirtualPath와 함께 올 수 있습니다

xeakLoadDataXML은 들어오는 UTF-8 XML을 Value에 담고, Argument는 ignoreRoot를, Argument2는 overwrite를 고릅니다. 네이티브 런타임은 선택한 타깃을 바꾸기 전에 소스를 파싱합니다

런타임은 새 자손 쓰기와 아이덴티티 발행을 실제 임포트된 네이티브 그래프에 대해 풀고, 일반 필드 변경과 같은 이벤트 트랜잭션·롤백을 적용합니다

관련 API

대화형 동적 XFA 위젯 런타임, FormCalc 함수, XFA Packet DOM