IBSheet8을 최신 버전으로 업그레이드하는 방법을 안내해 드립니다. IBSheet 제품은 사용자의 요구사항에 맞게 수정이 가능하기 때문에 모든 파일을 무조건 덮어쓸 수 없으며, 파일에 따라 기존 파일과 비교하여 적용해 주셔야 합니다.

01업그레이드 기본 원칙

업그레이드 시 가장 중요한 원칙은 무조건 덮어쓰지 않는 것입니다. IBSheet는 프로젝트마다 커스터마이징이 가능한 제품이므로, 파일에 따라 덮어쓰기 가능 여부가 다릅니다. 아래 표에서 파일별 업데이트 방법을 먼저 확인해 주시기 바랍니다.

파일업데이트 방법설명
bin/ibsheet.js✅ 필수 덮어쓰기제품 코어 파일입니다. 반드시 업데이트해야 합니다.
bin/css (main.css)⚠️ 조건부main.css를 수정하지 않았다면 덮어쓰기, 수정했다면 비교 적용합니다.
bin/locale⚠️ 비교 적용추가된 메시지를 비교 후 반영합니다.
bin/plugins/ibsheet-common.js⚠️ 반드시 비교프로젝트에서 수정 가능한 파일입니다. 파일 비교 후 적용합니다.
bin/plugins/ibsheet-dialog.js⚠️ 반드시 비교커스텀 다이얼로그 추가 여부를 확인 후 적용합니다.
bin/plugins 그 외 파일✅ 덮어쓰기 가능그대로 덮어쓰셔도 됩니다.
서버모듈 (ibsheet8-x.x.x.jar)✅ 교체엑셀 다운로드/업로드에 필요한 파일입니다.
TIP. 업그레이드 작업 전, 기존 bin 폴더 전체를 백업해 두시기 바랍니다. 문제가 발생했을 때 빠르게 원복하실 수 있습니다.


02bin/ibsheet.js — 필수 업데이트

제품 코어 파일입니다. 이 파일은 필수로 업데이트해야 합니다.



03bin/css 폴더 (main.css)

ibsheet.js가 업그레이드되면서 기능이 추가될 수 있습니다. 관련 기능을 이용하시려면 CSS도 함께 업데이트되어야 합니다.

main.css 파일을 프로젝트에서 수정하지 않았다면 그대로 덮어쓰기 하시고, 수정하였다면 파일 비교를 하여 반영해 주시기 바랍니다.

⚠️ 단, main.css 파일에서 CSS를 수정하지 않고 다른 파일(예: ibsheet_design.css)에서 시트 관련 CSS를 수정한 경우, 엑셀 다운로드 시 디자인이 반영되지 않습니다.
[CSS를 적용하지 못하는 예시 보기]

버전별로 추가·수정된 CSS 내역은 하단의 main.css 버전별 수정 이력을 참고해 주시기 바랍니다.


main.css 버전별 수정 이력 바로가기


04bin/locale

ibsheet.js가 업그레이드되면서 메시지가 추가될 수 있습니다. 각 메시지 내용 역시 수정이 가능하기 때문에, 기존 파일과 비교한 뒤 추가된 항목을 업데이트해 주시기 바랍니다.


05bin/plugins

ibsheet-common.js — 반드시 비교 적용

ibsheet-common.js는 공통 기능 설정을 위한 상수 및 함수를 정의한 파일입니다. 시스템 구축 당시 개발자가 수정할 수 있으며, 기능 추가 또는 변경 시 당사에서도 수정하여 배포합니다. 따라서 이 파일은 파일 비교를 통하여 당사에서 수정한 내용만 적용해야 합니다.


- 배포 받은 ibsheet-common.js 에 없는 로직이 기존 파일에 있을 때

개발당시 개발자가 추가한 로직이므로 이 코드는 유지

- 배포 받은 ibsheet-common.js 에 있는 로직이 기존 파일에 없을 때

당사에서 추가한 로직이므로 기존파일에 추가 필요


대표 사례 1 · 헤더 우클릭 메뉴

헤더에서 마우스 우클릭 시 표시되는 메뉴는 ibsheet.js의 기본 기능이 아니라 ibsheet-common.js에서 코드를 작성하여 제공하는 기능입니다.

기존클릭한 헤더 하나만 감추기 가능
변경 후헤더 목록이 표시되며 체크박스로 감추기/보이기 가능
(ibsheet-common.js 1.0.6-20240314-17 버전에서 기능이 추가되었습니다.)

이 기능을 적용하시려면 다음과 같이 진행합니다.

  1. _IBSheet.CommonOptionsDef.Header.Menu 부분을 배포한 ibsheet-common.js의 내용으로 교체합니다.
  2. 배포한 ibsheet-common.js 파일에서 Events.onReadMenu 이벤트를 추가합니다.
  3. _IBSheet.MenuFunctions, toggleCols, setItemBool, showContextMenu, checkCols, getContextMenu, mergeRows, setItemLevel, mergeCol, assign을 모두 추가합니다.

교체하지 않으면 기존 메뉴가 그대로 표시됩니다.


[기존] 클릭한 헤더 하나만 감추기 가능
 


[변경 후] 헤더의 list가 표시되며 체크박스로 감추기/보이기 가능
 (
ibsheet-common.js 1.0.6-20240314-17 버전에서 기능이 추가되었습니다.)




ibsheet-dialog.js — 반드시 비교 적용

ibsheet-dialog.js 파일도 프로젝트에서 변경하여 이용할 수 있습니다. 기존 다이얼로그를 변경하여 사용하거나 커스텀 다이얼로그를 추가했을 수 있으니, 반드시 비교 후 적용해 주시기 바랍니다.


그 외 plugins 파일

나머지 파일은 그대로 덮어쓰기 하셔도 됩니다.


06서버모듈

Ver: ibsheet8-x.x.x.jar

이 폴더 안의 파일들은 서버에서 엑셀 다운로드/업로드를 하기 위해 필요한 파일입니다. 아래 가이드를 참고하여 환경을 구축하시고, 기타 엑셀 오류 처리 방법 등을 확인하시기 바랍니다.

서버모듈 가이드 문서 바로가기

엑셀 관련 트러블슈팅


07파일 비교 판단 원칙

파일을 비교하실 때 어떤 코드를 남기고 어떤 코드를 반영해야 할지는 다음 기준으로 판단하시면 됩니다.

상황의미처리
배포받은 파일에는 있는데 기존 파일에는 없는 로직당사에서 추가한 로직기존 파일에 추가해 주시는 것이 좋습니다.
기존 파일에는 있는데 배포받은 파일에는 없는 로직개발 당시 개발자가 추가한 로직해당 코드를 유지합니다.

 


 

?
 라이선스 신청이 필요하신가요?  아래 링크에서 바로 신청해 보세요.
 라이선스 신청하러 가기 →