그리드에 소계를 동적으로 추가하는 API이다.
Parameters | Type | Description |
---|---|---|
nStatType | short | 소계 타입 (Remark 참조) |
strGroupColumn | STRING | 소계계산시 그룹할 컬럼 (Remark 참조) |
strTitle | STRING | [옵션] 소계 제목 |
nTitleColumn | short | [옵션] 소계 제목을 보여줄 컬럼 |
clrForeColor | COLOR | [옵션] 소계 전경(텍스트) 색상 |
clrBackColor | COLOR | [옵션] 소계 배경 색상 |
nMidStatPos | short | [옵션] 소계 위치 (0:top, 1:bottom, 2:그리드 mid_statistics_pos 속성값(기본값)) |
objTitleFont | class | [옵션] 타이틀 폰트 정보 (기본값: null) |
objDataFont | class | [옵션] 데이터 폰트 정보 (기본값: null) |
Type | Description |
---|---|
short | 추가된 소계의 Index 또는 오류 발생시 -1 |
addstatmid 함수 호출을 통해서 소계에 대한 정보를 정의한 이후에, refresh 함수를 호출해야 소계에 대한 정보가 다시 계산되어 화면에 표시된다.
nStatType 파라미터의 값이 6(컬럼별 정의)인 경우에는, 각 칼럼 데이터부의 midstatistics_type 속성에 따라 소계가 계산된다. 각 칼럼의 midstatistics_type 속성은 setcolumnmidstattype 함수를 통해서 동적으로 설정할 수 있다.
strGroupColumn(소계계산시 그룹할 컬럼) 파라미터는 소계 계산시 기준이 되는 칼럼의 인덱스를 지정하며, 콤마로 구분하여 여러 칼럼을 지정할 수 있다.
* nStatType 상수값 XFD_GRID_MIDSTAT_SUM = 1 - 합계 XFD_GRID_MIDSTAT_AVER = 2 - 평균 XFD_GRID_MIDSTAT_COUNT = 3 - 건수 XFD_GRID_MIDSTAT_MIN = 4 - 최소값 XFD_GRID_MIDSTAT_MAX = 5 - 최대값 XFD_GRID_MIDSTAT_COLUMN = 6 - 컬럼별 정의
strTitle, nTitleColumn, clrForeColor, clrBackColor 파라미터는 옵션으로 값을 주지 않는경우 Default값이 반영됩니다.
소계 정보는 칼럼의 midstatistics_show 속성에 의해서 화면에 보이는 것이 결정된다.
소계 정보는 칼럼 데이터부의 data_type 속성이 0(숫자)인 경우에만 적용된다.
소계 정보는 deletestatmid 함수를 통해서 삭제할 수 있다.
* clrForeColor/clrBackColor 파라미터 소계 색상은 factory의 rgb API로 구할 수 있다.
* objTitleFont, objDataFont 파라미터 값 형식은 아래와 같다.
classFont = { szfontname: "굴림체", nfontsize: 9, bfontbold: false, bfontitalic: false, bfontunderline: false, bfontstrikeout: false };
// 그리드 이름 : grdNoraml
// 버튼 이름 : btnTestAddStatMid
// addstatmid 함수 호출을 호출하여 다단 소계를 표시한다.
// 그리드 칼럼은 시, 구, 동, 인구수 칼럼으로 구성되어 있다고 가정하고,
// 구별 소계, 시별 소계를 표시한다.
// 소계 정보 삭제 버튼 클릭 이벤트 처리
function btnTestAddStatMid_on_mouseup(objInst)
{
var colorFore = factory.rgb(0, 0, 0);
var colorBack = factory.rgb(255, 200, 200);
// 0번째 칼럼과 1번째 칼럼을 기준으로 구별 소계를 추가한다.
// 1번째 칼럼 인덱스에 소계 타이틀을 지정한다.
grdNormal.addstatmid(XFD_GRID_MIDSTAT_SUM, "0,1", "구별 소계", 1, colorFore, colorBack);
// 0번째 칼럼을 기준으로 시별 소계를 추가한다.
// 0번째 칼럼 인덱스에 소계 타이틀을 지정한다.
grdNormal.addstatmid(XFD_GRID_MIDSTAT_SUM, "0", "시별 인구 소계", 0, colorFore, colorBack);
// 추가된 소계 정보로 소계가 나타나도록 refresh 함수 호출
grdNormal.refresh();
}