1. 부모페이지
/**
* @private
* 그리드 클릭 이벤트
*/
private function itemClickHandler(event:ListEvent):void
{
var item:SCObject = event.itemRenderer.data as SCObject;
var dataField:String = event.itemRenderer["dataField"];
switch (dataField)
{
case "btn_org" :
var popup:CCModulePopup = new CCModulePopup();
popup.popup("modules/bp/admin/org/EPPurcDeptTree.swf", "구매조직", 500, 500, this, true);
var param:Object = new Object();
param.comp_cd = item.comp_cd;
param.lim_level = 4; // 지정한 레벨까지 조회, null이면 전체 조회
param.sel_all = "N"; // Y:모든 레벨선택가능, N:leaf레벨만 선택가능
popup.parameter = param;
popup.addEventListener(SCModulePopupEvent.SELECTED_ITEM, function(event:SCModulePopupEvent):void
{
// Listener 제거 (arguments.callee는 함수 자신이다.)
event.currentTarget.removeEventListener(event.type, arguments.callee);
var selectedItem:SCObject = event.object as SCObject;
item.plt_cd = selectedItem.plt_cd;
item.dept_cd = selectedItem.dept_cd;
item.dept_nm = selectedItem.dept_nm;
});
break;
default :
break;
}
}
JavaScript
2. 팝업
<cc:EPBase xmlns:mx="http://www.adobe.com/2006/mxml"
xmlns:vc="http://www.emro.co.kr/volcano"
xmlns:cc="custom.uxcom.*"
creationComplete="creationCompleteHandler(event)">
....
/**
* @override
* 최초 1회 1st 자동 호출
*/
override protected function initializeHandler(event:FlexEvent):void
{
}
/**
*
* 최초 1회 3rd 자동 호출
*/
protected function creationCompleteHandler(event:FlexEvent):void
{
doSearch();
}
/**
* @override
* 최초 2nd 자동호출, 팝업 호출 시 setting된 parameter값 확인
*/
override protected function commitProperties():void
{
super.commitProperties();
if (parameterChanged && parameter)
{
_searchParam.comp_cd = parameter.comp_cd;
_searchParam.lim_level = parameter.lim_level; // 지정한 레벨까지 조회, null이면 전체 조회
_searchParam.sel_all = parameter.sel_all; // Y:모든 레벨선택가능, Y:leaf레벨만 선택가능
parameterChanged = false;
}
}
JavaScript