사용자 정의 함수인 expFunction 을 사용하여 직접 작성한 값을 출력한 모습입니다.
price, color, date 의 3개의 필드에 각각 개수, 합계, 평균을 사용자 정의하여 출력한 모습입니다.
원칙적으로 color 와 date 는 데이터 형식이 숫자가 아니기 때문에 소계의 대상필드로 설정할 수 없지만 사용자가 expFunction 을 활용하여 직접 계산식을 작성한다면 설정하고 사용 가능합니다.
합계, 개수, 평균 3개를 출력하고자 한다면 기본 기능으로는 3개의 소계행을 출력시켜서 출력 할 수 있습니다. 여기를 확인하세요.
조금 심플한 expFunction 에 대한 샘플을 원하세요? 여기를 클릭하세요
// 사용자 정의 계산 함수 // items (Array) : 소계의 대상이 되는 행들 // dataField (String) : 소계 대상 필드 (데모 상에서는 "price", "color", "date" 가 대상임) expFunction : function(items, dataField) { // 여기서 실제로 출력할 값을 계산해서 리턴시킴. var sum = 0; var count = 0; // 합계 필드 3개 설정했기에 3개를 나눠서 실행 switch(dataField){ case "price": // 합계 계산 items.forEach(function(item) { sum += Number(item.price); }); return "합계 : " + AUIGrid.formatNumber(sum, "#,##0"); case "color": // price 개수 계산 count = items.length; return "개수 : " + AUIGrid.formatNumber(count, "#,##0"); case "date": // price의 평균 계산 items.forEach(function(item) { sum += Number(item.price); count += 1; }); return "평균 : " + AUIGrid.formatNumber(sum/count, "#,##0.00"); } }
모든 데모는 각각 독립적인 단일 HTML 페이지입니다. 마우스 우클릭 후 "소스 보기" (또는 크롬 기준 단축키 Ctrl + U)로 어떻게 작성되었는지 쉽게 확인 할 수 있습니다.
Copyright © AUISoft Co., Ltd.