데이터 규격 (data structure)

조회 작업 시 서버에서 반환되는 조회 응답 규격의 형식을 정의합니다.

시트 생성시 데이터 형식

//IBSheet.create()에 data 속성을 통해 생성시 데이터 구조
IBSheet.create({
    id:"sheet", // 생성할 시트의 id
    el:"sheetDiv", // 시트를 생성할 Dom 객체 및 id
    options: options, // 생성될 시트의 속성
    // 생성될 시트의 데이터
    data: [
            {"sa_name":"홍길동","sa_no":"940154","sa_dept":"A021"},
            {"sa_name":"김지수","sa_no":"950757","sa_dept":"B022"}
        ]
});

기본 데이터 규격

// Data 속성안에 배열형태로 데이터 구성
{"Data":
    [
        {"sa_name":"홍길동","sa_no":"940154","sa_dept":"A021"},
        {"sa_name":"김지수","sa_no":"950757","sa_dept":"B022"}
    ]
}

조회 데이터 내에 Row property,Cell property 적용(중요)

// 조회 데이터 안에 Row property에 해당하는 내용을 데이터와 함께 적용
{"Data":
    [
        //1행의 색상을 붉은색으로 표시
        {"sa_name":"홍길동","sa_no":"940154",...      , Color:"#FF8888"},
        //2행을 편집 불가로 설정
        {"sa_name":"김지수","sa_no":"950757",...      , CanEdit:0}
    ]
}
// 조회 데이터 안에 "컬럼명+Cell Property" 형식으로 설정시 Cell 기능 부여
{"Data":
    [
        //1행의  sn_id cell에 글자색 설정
        {"sn_id":"209321","lot":"k0923123",  sn_idTextColor:"#FF0000"},
        //2행의 lot cell에 편집 불가
        {"sn_id":"209327","lot":"r2019283",   lotCanEdit:0},
        //3행의  pos 컬럼(Enum타입)에 item을 해당 셀만 다르게 설정
        {"pos":"A02", posEnum: "|성남시|부천시|광명시|화성시", posEnumKeys: "|A00|A01|A02|A03"}
    ]
}

조회 데이터 내에 JSON Event 적용

// 조회 데이터에 JSON 이벤트를 포함할수 있습니다.
{"Data":
    [
        //1행의 sa_name컬럼의 값 수정시 sawonPop() 함수 호출
        {"sa_name":"홍길동",sa_nameOnChange:"sawonPop"},
        //2행은 이벤트 없음
        {"sa_name":"홍길동"}
    ],
}

서버에서 반환된 조회 데이터는 onReceiveData, onBeforeDataLoad, onDataLoad 이벤트를 통해 확인할 수 있습니다.

데이터와 결과 규격

// Data 속성안에 배열형태로 데이터 구성
{"Data":
    [
        {"sa_name":"홍길동","sa_no":"940154","sa_dept":"A021"},
        {"sa_name":"김지수","sa_no":"950757","sa_dept":"B022"}
    ],
  "IO": {"Result": 0, "Message": "조회 성공"}
}
Result Description Message(ko, en.js)
0 조회 성공
-1 빈 URL (예: sheet.doSearch("")) 호출 시 Url의 값이 없습니다.
(ResultErrEmptyURL)
-3 요청 Url이 잘못된 경우나 네트워크 오류 등으로 결과를 받지 못한 경우(404,500등의 에러) Url의 값이 잘못됐습니다.
(ResultErrBadURL)
-5 응답 결과가 빈 값인 경우 Url에서 응답이 없습니다.
(ResultErrEmptyResponse)
-6 연결 시간 초과((cfg)Timeout 초과) 연결시간이 초과됐습니다.
(ResultErrRequestTimeout)
-7 잘못된 데이터 형식(데이터 이상) 데이터 형식이 잘못됐습니다.
(ResultErrBadDataFormat)
그외 사용자 정의 코드
IO에 정의된 내용을 onBeforeDataLoad, onDataLoadresultmessage파라미터에서 확인가능

Read More

Since

product version desc
core 8.0.0.0 기능 추가