시트 전체 데이터를 JSON 형태로 뽑는 방법은 두가지가 있습니다.
1. getSaveJson 메소드 중 SaveMode:0 사용
getSaveJson 는 시트 내 변경된 데이터를 추출하기 위한 저장용 메소드입니다.
시트 데이터를 JSON 형태로 뽑을 수 있으며 아래와 같이 getSaveJson 의 SaveMode에 따라 상태별 데이터를 추출하는 용도로 사용할 수 있습니다.
// 전체 데이터 추출
sheet.getSaveJson({ saveMode: 0 });
// 특정 컬럼 기준 데이터 추출
sheet.getSaveJson({ saveMode: 0, col: "COL_NAME" });getSaveJson은 변경 데이터 저장(Added / Changed / Deleted) 목적의 메소드이기 때문에
Required 컬럼이나 Mask 설정에 따라 Validation 오류가 발생할 수 있습니다.
// 정상적인 처리시
{
"data":[
{"id":"AR1","ColName1":"12345","ColName2":"ABCDE" ...},
{"id":"AR4","ColName1":"76411","ColName2":"HIJKL" ...},
...
]
}
// validRequired 오류시
{
"Message":"RequiredError",
"Code":"IB010",
"row":오류 발생 행 객체,
"col":오류 발생 열 Name,
"data":[]
}
// rows에 입력한 행 객체가 유효하지 않을 경우
{
"Message":"InvalidRows",
"Code":"IB020",
"data":[]
}2. getSheetData 사용(ibsheet-excel.js 1.1.12 이상)
단순 데이터 추출만을 위한 목적으로 전체 데이터를 추출하려면 getSheetData 사용이 적합합니다.
// 시트 전체 데이터를 JSON으로 추출
sheet.getSheetData({ type: "json" });사용 시 주의사항
* getSheetData는 ibsheet-excel.js 1.1.12 이상부터 지원
* 해당 기능을 사용하려면 ibsheet-excel.js가 반드시 import 되어 있어야 함