주소 지정
주소 지정 스킴은 계층 구조의 트리 형식 구조이며 이 안에서 루트는 표시된 페이지의 맨 위에
/로 정의됩니다. 주소 지정 스킴의 구조는 디렉토리에 사용된 것과 비슷합니다. 트리의 후속 노드는 페이지가 로드될 때 추가됩니다.
일반적으로 일부 보기에서 사용되는 보기 이벤트 또는 공식에 의해 호출되는 함수가 있는 경우 UI 보기에서 주소 지정을 사용합니다. 함수는 페이지에 있는 사용자 정의 HTML의 JavaScript 스크립트 블록 또는 보기의 동작 특성에 있는 인라인 JavaScript 섹션에서와 같이 인라인으로 지정할 수 있습니다.
주소 지정 스타일
상대 및 절대 주소 지정 스타일이 지원됩니다. /를 사용하여 참조를 시작하는 것은 절대 참조를 의미합니다. 예를 들어, 보기 트리의 루트 레벨에서 시작합니다. 경로의 시작 부분에서 /를 생략하는 것은 "from where I
am"을 의미합니다. 참조에서 ..를 사용하면 파일 디렉토리 트리가 작동하는 방식과 동일하게 한 레벨 위로 되돌아가게 됩니다.
- 현재 레벨과 동일한 레벨의 필드는 필드 이름을 사용하여 참조됩니다(참조의 시작 부분에
/를 사용하지 않음). - 한 레벨 위에 있는 필드는
../FieldOneLevelAboveMe로 참조될 수 있습니다. - 두 레벨 위에 있는 필드는
../../FieldOneLevelAboveMe등으로 참조됩니다. ../를 사용한 상대 주소 지정이 일부 경우에 편리할 수 있습니다.
보기에 액세스하기 위한 JavaScript 메소드
- 사용자 정의 HTML에서
- JavaScript 블록에서 보기에 액세스하려면 페이지 글로벌 보기 및 해당
page.ui.get(ControlId path)메소드를 사용하십시오. 예를 들어, Text1이라는 이름의 텍스트 보기가 있고 유효성 검증을 목적으로 단추의 On click 이벤트에서 호출되는 함수로 이 보기에 액세스하려는 것으로 가정합니다. 이를 수행하려면 다음 예와 비슷한 코드를 사용하십시오.var myTextField = page.ui.get("/Text1"); myTextField.getValue() // returns the value in the text field myTextField.focus() // would set the focus to the text field.
- 보기의 인라인 JavaScript에서
- 컨테이너 보기에 포함된 함수에서 보기에 액세스하려면 다음 옵션 중 하나를 사용하십시오.
bpmEventHelper.ui.getView(ControlId [, thisview]) thisview.ui.get(ControlId)
- 공식에서
- 다음 구문을 사용하여 보기를 공식에서 참조할 수 있습니다.
${FieldName}은control id = FieldName인 보기를 참조합니다.@{FieldName}은control id = FieldName인 보기의 값을 참조합니다.${FieldName).getValue()및@{FieldName}은 동등합니다.
주소 지정 불가 레이아웃 보기
/VerticalLayout/FirstName가 아닌 /FirstName 주소를 사용하여 VerticalLayout 보기에 중첩된 FirstName 보기의 주소를 지정할 수 있습니다.load 함수에서 다음 특성을 true 로 설정하십시오.this.constructor.prototype.IS_ADDRESS_INVISIBLE = true;주소 지정 가능 사용자 정의 보기
load 메소드에서 다음 함수를 호출하십시오.bpmEventHelper.ui.loadView(this)
bpmEventHelper.ui.loadContainer(this)unload 함수에서 다음 중 적절한 함수를 호출하십시오.bpmEventHelper.ui.unloadView(this)또는bpmEventHelper.ui.unloadContainer(this)테이블의 피어 필드에 대한 참조
=가 있는 구문을 사용하여
my 행의 필드에 액세스할 수 있습니다. 예를 들어, 테이블에서 Quantity(Integer), Cost(Decimal) 및 Total(Decimal) 보기를 정의한 것으로 가정합니다. 다음 공식을 사용하여 Total 보기의 값을 지정할 수 있습니다.@{Quantity=} * @{Cost=}Total 보기에는 데이터 바인딩이 필요하지 않음을 참고하십시오. 즉, 테이블에 총계 데이터 필드가 필요하지 않음을 의미합니다.헬퍼 기능
예를 들어, bpmext.ui.View 네임스페이스 내에서 헬퍼 함수 getParent 및 getSibling 을 사용할 수 있습니다. 예에서는 전체 계층 구조를 알지 못해도 컨테이너 보기 또는 피어 보기에 쉽게 도달할 수 있습니다.
예를 들어, Button1 및 Button2라는 이름의 두 보기가 포함된 CV라는 이름의 컨테이너 보기가 있다고 가정합니다. btn1View 가 Button1에 대한 bpmext.ui.View 오브젝트라고 가정하면 btn1View.ui.get(“CV”) 또는 btn1View.ui.getParent();를 사용하여 CV 에 도달할 수 있습니다. bt1View.ui.getSibling(“Button2”)를 사용하여 Button2 에 도달할 수 있습니다.