해당 화면을 modal로 변환시키는 API이다.
| Type | Description | 
|---|---|
| short | unloadpopup 시 넘긴 파라미터값 | 
async/await 문법을 사용하여 동기 방식으로 처리하는 함수이며, IE 브라우저는 지원하지 않는다.
domodal API 호출시 on_popupdestroy 이벤트는 발생하지 않는다.
async function btn_loadportletpopup_sync_on_mouseup(objInst)
{
	var fld_in_popup_screen, popup_screen, ret, popup_ret;
	
	factory.consoleprint("btn_loadportletpopup_sync_on_mouseup> start");
	
	factory.consoleprint("btn_loadportletpopup_sync_on_mouseup> before call loadportletpopupsync");
	
	// 팝업 화면을 ASYNC 방식으로 로드를 시작함.
	// factory.loadportletpopupsync API가 리턴시 포틀릿 팝업 화면 로드가 완료된 것을 의미함
	// (팝업 화면 로드 완료시, screen_on_popupload 이벤트는 발생하지 않음)
	// extra_data 옵션 파라미터를 통해서 팝업 화면으로 값을 전달할 수 있음. 
	// (포틀릿 팝업 화면에서는 this.screen.getextradata API 호출을 통해서 전달된 값을 얻을 수 있음)
	// await의 동기화 처리는 async 함수내에서만 수행된다.
	ret = await screen.loadportletpopupsync("SYNC_MODAL_PORTLET_POPUP", "/TEMPLATE/HTML5/ASYNC_AWAIT/portlet_sample", "SYNC PORTLET POPUP", 
		false, XFD_BORDER_RAISED, 0, 0, 200, 500, true, true, false, "VALUE_FROM_LOADSCREEN_EXTRADATA");
	
	factory.consoleprint("btn_loadportletpopup_sync_on_mouseup> after call loadportletpopupsync, loadportletpopupsync return value = " + ret);
		
	// 동기 방식으로 호출된 포틀릿 팝업 화면 인스턴스를 팝업 이름을 기준으로 찾음
	popup_screen = screen.findportletpopup("SYNC_MODAL_PORTLET_POPUP");
	if (factory.isobject(popup_screen)) {
		// loadportletpopupsync API로 팝업을 로드했기 때문에, loadportletpopupsync 함수가 리턴되는 시점에는
		// 포틀릿 팝업 화면의 로드가 완료된 시점이기 때문에, 포틀릿 팝업 화면의 오브젝트 인스턴스를 구할 수 있다.
		fld_in_popup_screen = popup_screen.getinstancebyname("fld_value_from_parent_screen_settext");
		if (factory.isobject(fld_in_popup_screen)) {
			fld_in_popup_screen.settext("VALUE_FROM_PARENT_SCREEN_SETTEXT");
		}
		else {
			factory.consoleprint("btn_loadportletpopup_sync_on_mouseup> getinstancebyname() return null");
		}
		
		// domodal 호출 여부 옵션 검사
		if (chk_calldomodal.getcheck()) {
			factory.consoleprint("btn_loadpopup_modal_sync_on_mouseup> before call domodal");
			
			// 팝업 화면에 대해서 domodal API를 호출하여, 팝업 화면이 닫힐 때까지 대기한다.
			// 즉, 팝업 화면에서 unloadpopup 함수 호출시 전달된 파라미터 값이 리턴되기를 동기방식으로 대기함.
			// domodal API 호출시 on_popupdestroy 이벤트는 발생하지 않는다.
			// (domodal API를 호출하지 않으면, 
			// 팝업 화면에서 unloadpopup 함수 호출시 전달된 파라미터 값은 on_popupdestroy 이벤트를 통해서 전달된다.)
			// await의 동기화 처리는 async 함수내에서만 수행된다.
			popup_ret = await popup_screen.domodal();
			
			screen.alert("btn_loadportletpopup_sync_on_mouseup> after call domodal, domodal return value = " + popup_ret);
			factory.consoleprint("btn_loadportletpopup_sync_on_mouseup> after call domodal, domodal return value = " + popup_ret);
		}
	}
	else {
		factory.consoleprint("btn_loadportletpopup_sync_on_mouseup> findportletpopup() return null");
	}
	
	factory.consoleprint("btn_loadportletpopup_sync_on_mouseup> end");
}