목차

그리드 소계행 다단 소계 가이드

그리드 컴포넌트 소계행 다단 소계 예시 화면이다.

소계 정보는 멀티로 지정이 가능하며, 정의된 순서대로 소계 데이터를 계산하여 표시된다.

소계 정보는 멀티로 지정이 가능하며, 각 소계행은 소계 데이터 계산 기준 소계 정보 인덱스(zero-based) 정보를 가지고 있다.

관련 API로는 deletestatmid, deleteallstatmid, addstatmid, getstatmidcount, getstatmidindex가 있다.

예시

템플릿 위치: /HTML5/COMPONENT/GRID/grid_midstat_multi

템플릿 파일

화면 스크립트

// "deletestatmid" 버튼 이벤트
function btn_deletestatmid_on_click(objInst)
{
	var midstat_index;

	// 소계 정보중 마지막 인덱스를 구하여 삭제
	midstat_index = grdList.getstatmidcount() - 1;
	if (midstat_index >= 0) {
		// 특정 소계 정보 및 특정 소계 정보 기준 소계 데이터 삭제
		grdList.deletestatmid(midstat_index);
	}
}

// "deleteallstatmid" 버튼 이벤트
function btn_deleteallstatmid_on_click(objInst)
{
	// 전체 소계 정보 및 소계 데이터 삭제
	grdList.deleteallstatmid();
}

// "addstatmid" 버튼 이벤트
function btn_addstatmid_on_click(objInst)
{
	var midstat_index;

	// 다중소계
	// 첫번째 보일 소계는 0, 1번 컬럼 데이터를 기준으로 소계를 보여줌
	midstat_index = this.grdList.addstatmid(XFD_GRID_MIDSTAT_SUM, "0,1", "시별 소계(합계)", 1,
		factory.rgb(0, 0, 0), factory.rgb(239, 249, 188));
	factory.consoleprint("midstat_index = " + midstat_index);

	// 두번째 보일 소계는 0번 컬럼 데이터를 기준으로 소계를 보여줌
	midstat_index = this.grdList.addstatmid(XFD_GRID_MIDSTAT_SUM, "0", "지역별 소계(합계)", 0,
		factory.rgb(0, 0, 0), factory.rgb(254, 240, 201));
	factory.consoleprint("midstat_index = " + midstat_index);

	// 추가된 소계 정보로 소계가 나타나도록 refresh호출
	// 만약 초기 데이터가 없고 조회시에 그리드에 데이터 추가 되는 경우에는 굳이 지금 시점에 refresh할 필요없음.
	this.grdList.refresh();
}

// "getstatmidcount" 버튼 이벤트
function btn_getstatmidcount_on_click(objInst)
{
	screen.alert("소계 정보 수 = " + grdList.getstatmidcount());
}

// "getstatmidindex" 버튼 이벤트
function btn_getstatmidindex_on_click(objInst)
{
	var midstat_info_index, row_index, row_count;

	row_count = grdList.getrowcount();
	if (row_count == 0) { return; }

	row_index = row_count - 1;
	midstat_info_index = grdList.getstatmidindex(row_index);
	screen.alert(row_index + "행은 소계행입니다. 소계행 정보 인덱스 = " + midstat_info_index);
}