[]
내보내기 시 수식 유지 기능을 사용하면 데이터를 Excel로 내보낼 때 수식을 그대로 유지할 수 있습니다.
보고서를 내보낼 때, 개발자들은 계산된 필드나 수식이 정적인 값으로 변환되는 문제를 자주 겪습니다. 이로 인해 결과 Excel 파일에서 동적인 동작이 깨지고, 사용자가 수식을 다시 입력하거나 재구성해야 하는 번거로움이 발생합니다.
내보내기 시 수식 유지 기능을 사용하면 이러한 문제를 피할 수 있습니다.
계산 유지: 데이터셋, 템플릿 또는 계산 필드에 정의된 수식이 내보낸 후에도 그대로 유지되어, Excel 사용자가 고정된 숫자가 아닌 실시간 계산을 계속 사용할 수 있습니다.
편집 가능한 Excel 출력: 내보낸 워크북에서 최종 사용자는 셀 값이나 범위를 조정할 수 있으며, 종속된 수식은 원래 환경과 동일하게 자동으로 업데이트됩니다.
이 기능은 GC.Spread.Report.TemplateSheet.setTemplateCell 메서드를 통해 설정합니다.
StaticCell에 설정할 경우 preserveFormulaInExport 속성을 사용합니다.
export type StaticCell = {
type: 'Static',
preserveFormulaInExport?: boolean;
// 다른 속성은 API 참조를 확인하세요
};참고 사항:
수식 유지는 미리보기 모드에서만 사용할 수 있습니다.
이 기능은 관련 옵션이 올바르게 설정된 경우에만 적용됩니다.
수식 유형 | 조건 | 내보내기 동작 | 예시 |
|---|---|---|---|
표준 Excel 함수 | 확장된 셀 범위가 연속적인 경우 | 참조가 단일 범위로 내보내집니다. |
|
확장된 셀 범위가 비연속적인 경우 | 지원되는 함수( |
| |
R.V 수식 | 미리보기 모드에서 해석 가능한 경우 | 실제 셀 참조로 변환됩니다. |
|
해석할 수 없는 경우 | 빈 셀로 내보내집니다. |
| |
표현식 내에서 부분적으로만 해석 가능한 경우 | 'SJS.EMPTY_CELL' (값 = 0)으로 대체됩니다. |
| |
SpreadJS 리포트시트 전용 수식 |
|
|
|
const templateSheet = reportSheet.getTemplate();
templateSheet.setFormula(3, 3, '=SUM(D2)');
// preserveFormulaInExport를 true로 설정
templateSheet.setTemplateCell(3, 3, {
type: 'Static',
preserveFormulaInExport: true,
});SpreadJS 디자이너의 Report Cell 속성 패널에 있는 내보내기 시 수식 유지(Preserve Formula In Export) 옵션을 사용하여 템플릿 셀의 preserveFormulaInExport 속성을 설정할 수도 있습니다.
