[]
리포트 시트에서는 정적인 값 대신 동적 매개변수를 사용하여 데이터를 재생성할 수 있도록 필터링된 값을 지정하는 매개변수를 지원합니다.
매개변수를 사용할 경우, 매개변수에 지정된 값에 따라 생성된 데이터가 필터링됩니다. 또한, 리포트 시트의 parameterUI를 통해 런타임 UI 상에서 매개변수 값을 변경하고 필터를 수행할 수 있습니다.
참고: 필터 조건을 설정할 때 매개변수를 설정할 수 있습니다.
동적으로 데이터를 재생성하기 위해 매개변수를 정렬하고 사용하려면, SpreadJS는 GC.Spread.Sheets.IParameter 인터페이스를 제공합니다.
다음 코드 샘플은 리포트 시트에 대한 매개변수를 정의하는 방법을 보여줍니다.
const reportSheet = spread.getActiveSheetTab();
const templateSheet = reportSheet.getTemplate();
// 템플릿에 대한 값과 바인딩 설정
templateSheet.setTemplateCell(2, 0, { // A3
binding: "Orders[OrderId]",
type: "Group",
filter: {
condition: {
and: [
{
"parameter": "startDate", // 파라미터
"column": "orderDate",
"operator": "GreaterThan"
},
{
"parameter": "endDate", // 파라미터
"column": "orderDate",
"operator": "LessThan"
},
{
"parameter": "customerId", // 파라미터
"column": "customerId",
"operator": "Equal"
}
]
}
}
});
let columns = ["CustomerId", "orderDate", "freight", "shipName", "shipCity"];
columns.forEach((item, index) => {
templateSheet.setTemplateCell(2, index + 1, {
type: "Group",
binding: `Orders[${item}]`
})
});
// 리포트 파라미터 설정
reportSheet.parameter({
startDate: new Date("1997-01-01"),
endDate: new Date("1998-01-01"),
customerId: "VINET"
});
reportSheet.refresh();
리포트 시트에서 매개변수를 생성하고 사용하는 방법은 아래와 같습니다:
리본 메뉴에서 삽입(INSERT) > 리포트시트(ReportSheet) 선택
리포트 시트 디자인(REPORT SHEET DESIGN) 리본에서 매개변수(Parameter) 선택
추가, 제거 편집 매개변수(Parameter) 대화상자의 지정된 섹션에서 매개변수 값을 추가(Add) / 제거(Remove) / 수정(Edit) 할 수 있습니다.
Parameter 값은 String, Number, Boolean, Date와 같은 데이터 타입을 지원합니다.
리포트 셀(Report Cell) > 필터(Filter) 설정에서 템플릿 셀의 매개변수를 필터 조건에 사용합니다.
리포트 시트 미리보기에서 매개변수 값에 따라 필터링된 결과 확인 가능합니다.