IBSheet는 날짜 컬럼(Type:"Date")에 대해 다양한 달력 및 다이얼로그를 제공합니다.
날짜 컬럼은 다양한 Format 설정에 따라 상황별 데이터 형식을 설정할 수 있습니다.
날짜 컬럼 설정에 필요한 Format은 아래와 같습니다.
- (Col)Format : 원본 데이터에 대한 마스킹된 데이터를 정의
- (Col)DataFormat : 날짜 타입의 열에서 로딩할 데이터의 포맷을 설정
- (Col)EditFormat : 사용자가 셀을 더블클릭하여 편집모드로 들어갔을 때 보여 줄 포맷을 설정
날짜의 Format은 y(년), M(월), d(일), H(시간), m(분), s(초)등의 예약어와 예약어를 제외한 문자를 조합해서 사용 가능하며,
포맷이 비어있는 경우 yyyy/MM/dd 형식을 기본값으로 사용합니다.
options.Cols = [
{
Name:"sDate_YmdHms",
Type:"Date",
Format:"yyyy.MM.dd", //화면에 보이는 데이터의 형식
EditFormat:"dd-MM-yyyy", //편집시 사용자에게 보여질 데이터 형식
DataFormat: "yyyyMMddHHmmss" //DB에서 받아온 데이터의 형식
}
...
]
...
'data': [{
"sDate_YmdHms": "20130423091020",
...
}
위 예제의 경우, DB에서 불러온 데이터는 '20130423091020' 입니다.
이를 날짜 타입의 열에서 로딩하기 위해서 DataFormat 설정이 필요합니다.
▼ Format : 시트에 조회되는 값(yyyy.MM.dd)
▼ EditFormat : 편집 시 보여지는 값(dd-MM-yyyy)
날짜 컬럼의 값을 메소드로 값을 확인하는 경우, 메소드 별로 값이 다를 수 있습니다.
▼ 메소드 별로 값이 다름
- getValue 는 특정 셀의 값을 구분자를 제거하고 가져오기 때문에 Format이 제거된 원본 데이터를 가져옵니다.
- getString 은 포맷이 적용된 문자열을 가져옵니다.
- getFirstRow 와 같은 행 객체에는 실제 내부값인 타임스탬프를 가져옵니다.
Date타입과 그에 따른 포맷을 Extend 속성을 통해 한번에 정의할 수 있습니다.
ALSO
Date Type 이용 시, 캘린더에서 특정일 혹은 특정 기간만 사용하는 방법