100 lines
4.0 KiB
Plaintext
100 lines
4.0 KiB
Plaintext
= 엑셀 다운로드 및 업로드
|
|
|
|
== 개요
|
|
|
|
SDL 6.0은 사용자 관리, 외부 사용자 관리, 역할 관리, 메뉴 사용 이력, 파일 다운로드 이력, 코드 관리, 링크사이트 관리에서 엑셀 다운로드를 지원한다. +
|
|
그 외 메뉴에서 엑셀 다운로드 기능을 적용하려면 <<_공통컴포넌트_유틸,공통컴포넌트 & 유틸>>의 <<_excel_download_button,Excel Download Button>>, <<_excel_upload_button,Excel Upload Button>> 매뉴얼을 참고한다.
|
|
|
|
== API
|
|
.ExcelController.java
|
|
|
|
. 엑셀 다운로드 +
|
|
GET /excel/excel-download +
|
|
|
|
. 엑셀 업로드 +
|
|
POST /excel/excel-upload
|
|
|
|
== 엑셀 다운로드
|
|
|
|
=== excel.xml 설정
|
|
sdl-base/src/main/resources/excel 폴더에 다운로드 할 기능의 xml 양식을 만든다. +
|
|
다국어 적용(message.properties)이 된다.
|
|
|
|
. 대외비 표기여부, 시트보호 여부, 제목
|
|
|
|
[source,xml]
|
|
----
|
|
<CONFIDENTIAL>true</CONFIDENTIAL> <!--> 대외비 표기여부(false : 태그작성 x) <-->
|
|
<PROTECTION>true</PROTECTION> <!--> 시트보호 여부(false : 태그작성 x) <-->
|
|
<PASSWORD>sdl</PASSWORD> <!--> 시트보호 암호(PROTECTION = false : 태그작성 x) <-->
|
|
<TITLE>sdl.excel.user.title</TITLE> <!--> 제목 <-->
|
|
----
|
|
|
|
[start=2]
|
|
. 문서 Comment 출력
|
|
.. 코멘트를 여러개 작성 가능
|
|
|
|
[source,xml]
|
|
----
|
|
<COMMENTS>
|
|
<COMMENT>
|
|
<COMMENT_LABEL>sdl.excel.accessLog.comment</COMMENT_LABEL> <!--> 코멘트 <-->
|
|
<COMMENT_FONT_COLOR>10</COMMENT_FONT_COLOR> <!--> 코멘트 글자색 <-->
|
|
</COMMENT>
|
|
<COMMENT>
|
|
<COMMENT_LABEL>2번째 코멘트</COMMENT_LABEL>
|
|
<COMMENT_FONT_COLOR>10</COMMENT_FONT_COLOR>
|
|
</COMMENT>
|
|
</COMMENTS>
|
|
----
|
|
|
|
[start=3]
|
|
. 헤더
|
|
|
|
[source,xml]
|
|
----
|
|
<HEADERS>
|
|
<HEADER>
|
|
<HEADER_LABEL>NO.</HEADER_LABEL> <!--> 컬럼명 <-->
|
|
<ROWSPAN>3</ROWSPAN> <!--> 열병합 <-->
|
|
<HEADER_FONT_COLOR>8</HEADER_FONT_COLOR> <!--> 컬럼 글자색 <-->
|
|
<HEADER_BACKGROUND_COLOR>44</HEADER_BACKGROUND_COLOR> <!--> 컬럼 배경색 <-->
|
|
</HEADER>
|
|
<HEADER>
|
|
<HEADER_LABEL>sdp.user.label.compName</HEADER_LABEL>
|
|
<COLSPAN>3</COLSPAN> <!--> 행병합 <-->
|
|
</HEADER>
|
|
</HEADERS>
|
|
----
|
|
|
|
[start=4]
|
|
. 컬럼
|
|
.. 첫번째 Row 에 No. 필드 넣을 경우 No. 필드에 대한 <COLUMN>를 작성하지 않아도 된다.
|
|
|
|
[source,xml]
|
|
----
|
|
<COLUMNS>
|
|
<COLUMN>
|
|
<FIELD_NAME>compName</FIELD_NAME> <!--> HEADER_LABEL에 대응하는 엔티티명 <-->
|
|
<COLUMN_WIDTH>15</COLUMN_WIDTH> <!--> 컬럼 너비 <-->
|
|
<CELL_ALIGN>LEFT</CELL_ALIGN> <!--> 셀 정렬 <-->
|
|
<COLUMN_LOCKING>true</COLUMN_LOCKING> <!--> 셀 잠금 여부(false : 태그작성 x) <-->
|
|
<COLUMN_HIDDEN>true</COLUMN_HIDDEN> <!--> 셀 숨김 여부(false : 태그작성 x) <-->
|
|
<COLUMN_TYPE>Number</COLUMN_TYPE> <!--> 날짜 형식(Date), 숫자 형식(Number)으로 출력 <-->
|
|
<CELL_FONT_COLOR>10</CELL_FONT_COLOR> <!--> 컬럼 글자색 <-->
|
|
<BACKGROUND_COLOR>13</BACKGROUND_COLOR> <!--> 컬럼 배경색 <-->
|
|
</COLUMN>
|
|
</COLUMNS>
|
|
----
|
|
IMPORTANT: 간혹 다운로드 받은 엑셀에 초록색 경고가 뜨는데 이것은 DB에 문자로 저장된 숫자를 불러오기 때문이다. +
|
|
따라서 <COLUMN_TYPE>을 'Number'로 하면 엑셀에서도 숫자로 잘 나올 것이다.
|
|
|
|
== 엑셀 업로드
|
|
|
|
=== excelUploadSample.xml 설정
|
|
SampleExcelUpload.vue 파일에 샘플로 엑셀 업로드가 구현되어 있다.
|
|
|
|
* 업로드할 데이터의 양식에 맞추어 excel.xml을 만들고 업로드 한다.
|
|
** 업로드 excel.xml 파일은 다운로드 excel.xml 파일과 같은 경로에 만든다.
|
|
** 날짜 형식 데이터가 업로드되지 않는 경우 `yyyy-MM-dd` 형태로 입력하거나 텍스트 서식으로 입력한다.
|