모델 기반 앱의 양식 및 그리드 이벤트

폼 및 그리드의 이벤트는 모델 기반 앱에서 모든 클라이언트 쪽 코드를 시작합니다. 이벤트가 발생할 때 실행할 JavaScript 라이브러리(스크립트 웹 리소스)의 특정 함수를 연결합니다. 이 함수를 이벤트 처리기라고합니다. 각 이벤트 처리기는 JavaScript 라이브러리 내의 단일 함수와 함수에 전달할 수 있는 매개 변수를 지정합니다.

UI를 사용하여 이벤트 처리기를 일부 이벤트에만 연결할 수 있습니다. UI를 통해 연결할 수 없는 이벤트의 경우 클라이언트 API는 이벤트 처리기를 연결하는 데 사용할 수 있는 메서드를 제공합니다.

UI를 사용하여 양식에서 이벤트 처리기 함수 추가 또는 제거

새 통합 인터페이스에서 이벤트에 대한 이벤트 처리기 함수를 추가하거나 제거하려면 다음을 수행합니다.

  1. Power Apps으로 이동합니다.

  2. 왼쪽 탐색 창에서 데이터를선택한 다음 테이블을 선택합니다.

  3. 테이블 목록에서 이벤트 처리기를 추가할 테이블을 선택합니다.

  4. 명령 모음에서 양식 탭을 선택한 다음 이벤트 처리기를 추가할 양식을 선택합니다.

    Power Apps 테이블의 양식 목록을 보여 주는 양식 탭의 스크린샷

  5. 이벤트 탭을 선택합니다. On Save 및 On Load 이벤트 처리기가 모두 표시됩니다.

    On Save and On Load 양식 이벤트 처리기를 보여 주는 이벤트 탭의 스크린샷.

  6. 변경 이벤트에 대한 이벤트 처리기를 추가하려면 열을 선택한 다음 이벤트 탭을 선택합니다.

    On Change 이벤트 처리기 설정을 보여 주는 열 이벤트 탭의 스크린샷.

양식 대량 편집

기본적으로 이벤트 처리기는 폼이 대량 편집 모드일 때 실행되지 않습니다.

대량 편집 모드에서 이벤트 처리기를 사용하도록 설정하려면 관련 event 요소를 찾고 특성을 만들거나 설정하여 Form XML을 BehaviorInBulkEditForm 수정합니다 Enabled. 현재 이 동작은 OnLoad 이벤트에 대해서만 지원됩니다.

양식 XML 사용자 지정에 대한 자세한 내용은 사용자 지정 파일, 양식 사용자 지정 및 양식 XML 스키마를 편집할 때를 참조하세요.

대량 편집 모드에서 폼에서 이벤트 처리기가 실행되는 시기를 확인하려면 이 메서드를 getFormType 사용합니다.

클라이언트 API 코드를 사용하여 이벤트 처리기 함수 추가 또는 제거

다음 메서드를 사용하여 UI를 통해 연결할 수 없는 이벤트에 대한 이벤트 처리기를 추가하고 제거합니다.

Events 이벤트 처리기
특성 OnChange addOnChange 및 removeOnChange 메서드
양식 OnLoad formContext.ui addOnLoad 및 removeOnLoad 메서드
로드된 양식 formContext.ui addLoaded 및 removeLoaded 메서드
양식 데이터 OnLoad formContext.data addOnLoad 및 removeOnLoad 메서드
양식 온세이브 addOnSave 및 removeOnSave 메서드
조회 컨트롤 PreSearch addPreSearch 및 removePreSearch 메서드
kbsearch control OnResultOpened addOnResultOpened 및 removeOnResultOpened 메서드
kbsearch control OnSelection addOnSelection 및 removeOnSelection 메서드
kbsearch 컨트롤 PostSearch addOnPostSearch 및 removeOnPostSearch 메서드

중요합니다

실행 컨텍스트는 코드를 사용하여 설정한 함수에 첫 번째 매개 변수로 자동으로 전달됩니다. 자세한 내용은 클라이언트 API 실행 컨텍스트를 참조하세요.

양식 이벤트 파이프라인

각 이벤트에 대해 최대 50개의 이벤트 처리기를 정의할 수 있습니다. 폼 속성 대화 상자의 이벤트 탭에 있는 이벤트 처리기 섹션에는 이벤트 처리기의 순서가 표시되고 각 이벤트 처리기는 해당 순서로 실행됩니다.

setSharedVariable 및 getSharedVariable 메서드를 사용하여 이벤트 처리기(함수) 간에 공통 변수를 전달합니다. 실행 컨텍스트 getDepth 메서드를 사용하여 다른 이벤트 처리기를 기준으로 이벤트 처리기 실행 시퀀스를 이해합니다.

클라이언트 API 개체 모델 이해
클라이언트 API 실행 컨텍스트
이벤트(클라이언트 API 참조)