wky0113 님, 안녕하세요.
그레이프시티입니다.
1. 날짜 타입 데이터 입력 시, mm/dd/yyyy 형식으로 입력되는 현상
SpreadJS는 글로벌 제품으로, 기본적으로 영어 문화권을 따르고 있어 날짜가 "mm/dd/yyyy" 형식으로 표기됩니다.
따라서 날짜 입력 시 "yyyy-mm-dd" 형식으로 표시하고 싶으신 경우, "한국어 문화권" 설정이 적용되어야 합니다.
한국어 문화권 설정이 필요하신 경우, 아래 링크된 방법에 따라 설정해주시기 바랍니다.
만일 컨텍스트 메뉴의 텍스트 등은 영어로 유지하면서 데이터 표기 방법만 한국 설정을 따라 표기하고 싶으신 경우, 한국어 리소스 파일 추가 없이 CultureManager.culture 메소드를 사용하여 데이터 표현 방식만 특정 문화권에 맞게 설정하실 수 있습니다.
2. 엑셀에서 서식이 텍스트로 설정된 데이터 복사 후 SpreadJS에 붙여넣기 했을 때, 앞에 0이 지워지는 현상
현재 첨부해주신 이미지에서 숫자가 왼쪽 정렬된 것은, 해당 데이터를 텍스트로 인식했기 때문이 아니라, 엑셀에서 왼쪽 정렬된 데이터를 복사하여 붙여 넣었기 때문으로 보여집니다.
Excel에서 값을 복사하여 SpreadJS에 붙여넣을 때, 엑셀에서 적용한 셀 서식은 유지되지 않으며, 각각의 값을 읽어 숫자가 들어있으면 숫자로 인식하고 SpreadJS에 표기하게 됩니다. 이때 숫자 값 앞에 불필요하게 0이 붙어있을 경우 0을 제외하고 유효한 숫자만 표기하기 때문에, 말씀하신 현상이 발생하게 됩니다.
아쉽게도 엑셀의 데이터를 복사/붙여넣기 할 때 셀 서식까지 함께 유지하는 것은 웹에서 사용되는 제품 특성상, 지원할 수 없는 부분입니다. 다만 데이터를 붙여넣기 하기 전에, 미리 해당 데이터를 붙여넣을 영역의 셀 서식을 "텍스트"로 설정해주시면, 붙여넣었을 때에도 앞의 0이 유지되므로, 값을 붙여넣을 영역의 셀 서식을 먼저 지정해주시기 바랍니다.
아래 샘플에서는 검은색 테두리로 표시한 [B2:D5] 영역의 셀 서식을 텍스트 형식으로 지정하였습니다. 엑셀의 데이터를 복사하여, 테두리 안/밖에 붙여넣었을 때 표시 형식이 어떻게 달라지는지 확인해보시기 바랍니다.
다른 궁금한 점이 생기면, 문의 주시기 바랍니다.
감사합니다.
그레이프시티 드림