View

내가 프론트엔드를 맡아서 할때 백엔드에서 업무 부하가 심해 자처한 작업이었다.
엑셀 템플릿이 따로 없어서 단순 Export는 쉬웠다.
그런데 고객이 요구하는 엑셀 템플릿을 보고 무릅을 꿇었다.
다양한 색깔과 병합됐다가 분리되었다가 하는 셀들...거기다 차트까지..!
순간 똥밟았다고 생각했지만 그래도 한번 건드린 일은 끝까지해야되기 때문에 여러가지 시도를 해봤다.

우선, 알록달록한 셀 색깔부터 찾아봤다.
NodeJS 환경에서는 sheetjs, xlsx-style, xlsx-chart, excel4node 등등 다양한 엑셀 Export 관련 라이브러리가 있었다.
sheetjs는 무료모드로 엑셀을 변환할때 스타일과 차트가 모두 제외되었다. 그래서 사용한 모듈이 xlsx-style이었다.
xlsx-style로 하면 스타일은 유지가 되었지만 차트는 역시 제외되었다.
게다가 스타일에도 제약사항을 발견하면서 - 무슨 제약사항이었는지는 기억이 안난다. - 결국 excel4node로 현재 개발되어 있다.
excel4node는 스타일 지정도 가능해서 편하게 잘 사용했다. 문제는 차트였다.
차트는 정말 어디에도 없는가..싶을때 xlsx-chart을 찾았다.
다행히 xlsx-chart로 엑셀에 차트를 추가할 수 있었지만 단일 파일로 밖에 안 만들어 졌다.
어쩔수 없이 기한때문에 3가지 차트를 따로 생성해서 압축해서 완료했다.

그러나 얼마 뒤 당연히 수정 요청이 들어왔고, 나는 고민에 빠졌다.
내가 머리를 짜내서 내놓은 방안은 두 가지였다.

1. 자바로 다시 개발하기
2. Google Sheets API 사용하기

사실 1번으로 마음 먹고 자바까지 로컬에 설치하고 보니까 지금 사내에서는 NodeJS로 계속 개발중인데 새로운 환경을 마이크로서비스로 올리기가 부담스러웠고, 이 프로젝트에 마이크로서비스가 이미 너무 많아 새로운 관리 프로세스를 추가하기도 부담스러웠다.
그래서 2번으로 급 전환했다.

일전에 Slides API로 자동 제안서를 만드는 작업을 해봤기 때문에 기술적으로 부담은 크게 없었다.
게다가 Google API가 꽤 친절하게 잘 만들어 줬다.
그치만 이게 맞는 건가 싶다. 만들고 운영하면서 조금 더 시간을 갖고 고민해봐야될 문제 같다.

엑셀에 차트를 포함해서 Export 하기 (NodeJS 소스 포함) - https://returnnew.tistory.com/m/52

엑셀에 차트를 포함해서 Export 하기 (NodeJS 소스 포함)

오래전에 NodeJS 환경에서 엑셀에 차트 포함시키는 방법에 대해서 포스팅을 올린적이 있었다. 오랜만에 블로그에 들어와보니 기대이상의 조회수가 나와서(정말 기록용있었는데..) 나와 같은 고민

returnnew.tistory.com

Share Link
reply
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31