[]
리포트 시트에는 템플릿 시트를 로드하고 데이터 매니저의 데이터와 결합하여 해당 보고서를 생성하는 설정이 있습니다.
리포트 시트의 다양한 메서드와 속성을 사용하여 보고서 시트에 대한 설정을 구성할 수 있습니다.
다음 코드 샘플은 기본 설정으로 리포트 시트를 생성하는 방법을 보여줍니다:
// 원격에서 데이터 로드
ordersTable.fetch().then(() => {
const reportSheet = spread.addSheetTab(0, 'report1', GC.Spread.Sheets.SheetType.reportSheet);
const templateSheet = reportSheet.getTemplate();
// 템플릿 스타일 설정
const headerStyle = new GC.Spread.Sheets.Style();
headerStyle.backColor = '#80CBC4';
headerStyle.foreColor = '#424242';
headerStyle.hAlign = GC.Spread.Sheets.HorizontalAlign.right;
headerStyle.font = '12px Maine';
const dataStyle = new GC.Spread.Sheets.Style();
dataStyle.foreColor = '#424242';
dataStyle.hAlign = GC.Spread.Sheets.HorizontalAlign.right;
dataStyle.font = '12px Maine';
const border = new GC.Spread.Sheets.LineBorder('#E0E0E0', 1);
dataStyle.borderBottom = border;
dataStyle.borderTop = border;
dataStyle.borderLeft = border;
dataStyle.borderRight = border;
const colWidthArray = [90, 90, 90, 80, 220, 150, 110];
colWidthArray.forEach((width, i) => {
templateSheet.setColumnWidth(i, width);
});
templateSheet.getRange('A1:G1').setStyle(headerStyle);
templateSheet.getRange('A2:G2').setStyle(dataStyle);
templateSheet.setFormatter(1, 2, 'yyyy-MM-dd');
// 템플릿에 대한 값과 바인딩 설정
const columns = ['orderId', 'customerId', 'orderDate', 'freight', 'shipName', 'shipCity', 'shipCountry'];
columns.forEach((columnName, i) => {
templateSheet.setValue(0, i, `${columnName[0].toUpperCase()}${columnName.substring(1)}`);
templateSheet.setTemplateCell(1, i, {
type: 'List',
binding: `Orders[${columnName}]`,
});
});
reportSheet.refresh();