! 제품 버전을 정확하게 입력해 주세요.
제품 버전이 정확하게 기재되어 있지 않은 경우,
최신 버전을 기준으로 안내 드리므로
더욱 빠르고 명확한 안내를 위해
제품 버전을 정확하게 입력해 주세요!

시트바인딩을 이용해서 표에 바인딩할시 셀병합 문제 및 기타 문제. > Q&A | 토론

본문 바로가기

PureJS 시트바인딩을 이용해서 표에 바인딩할시 셀병합 문제 및 기타 문제.

페이지 정보

작성자 진다인 작성일 2023-06-18 17:20 조회 227회 댓글 0건
제품 버전 : SpreadJS 16
컨트롤 이름 : SpreadJS 16

본문

안녕하세요.


궁금한 사항있어 문의드립니다.



SpreadJS에서 시트바인딩을 이용해서 필드목록에 있는 표를 


엑셀에 있는 표에 바인딩하고 있습니다.


이떄 표헤더 부분은 셀이 병합이 되어 있고

(ex A~F 셀이 있고 , ABC=번호 , DEF=내용)

표 바디 영역의 cell은 병합이 안되어 있습니다.


표의 데이터 row건수는 동적으로 늘어나 , 데이터의양을 측정할 수 없습니다.


이때 데이터가 바인딩되서 뿌려질때 표바디의 영역의 Cell 이 자동으로 병합되게(표의 헤더 처럼 동일하게) 하는 방법이


궁금합니다.


그리고 표서식 -> 표스타일 새로만들기 -> 서식  -> 글꼴에서


글꼴 및 크기 를 지정할 수 없는데 , 지정하는 방법이 궁금합니다.


마지막으로 , 시트바인딩을 이용할 경우 필드를 만들어야 하는데


이떄 필드를 동적으로 쉽게 만들수 있는 방법 또는 함수 가 있는 궁금합니다.


빠른 답변 부탁드립니다. 

  • 페이스북으로 공유
  • 트위터로  공유
  • 링크 복사
  • 카카오톡으로 보내기

댓글목록

등록된 댓글이 없습니다.

1 답변

PureJS Re: 시트바인딩을 이용해서 표에 바인딩할시 셀병합 문제 및 기타 문제.

추천0 이 글을 추천하셨습니다 비추천0 채택채택

페이지 정보

작성자 GCK루카스 작성일 2023-06-19 14:42 댓글 0건

본문

안녕하세요 그레이프시티입니다.


문의 주신 각 내용에 대해 답변 드립니다.


1. 표 헤더 병합


먼저, 기본적으로 표 범위 내에서는 병합하여 사용하시는 것을 권장하지는 않습니다.

엑셀에서는 표 범위 내의 병합을 지원하지 않기 때문에 SpreadJS에서 표 범위 내의 병합 후 엑셀로 내보내기 시 문제가 생길 수 있기 때문입니다.

다만, SpreadJS 내부에서만 사용하시거나 PDF 내보내기 시에는 문제 없이 사용할 수 있으니 참고하여 주시기 바랍니다.


또한 권장하는 사용 방법은 아니다보니 표 내 병합에 대한 API를 별도로 제공하지는 않습니다.

그렇기 때문에 이와 같이 사용하시려면 스크립트 상으로 병합을 진행하셔야 합니다.

아래 샘플을 참고하여 주시기 바랍니다.

      function extendTableSpan(sheet, table) {
        var ts = table.range();
        for (var r = 2; r < ts.rowCount; r++) {
          sheet.addSpan(ts.row + r,7,1,3);
          sheet.getRange(ts.row + r,7,1,3).setBorder(new GC.Spread.Sheets.LineBorder("black",GC.Spread.Sheets.LineStyle.thin), { all:true })
        }
      }

 


2. 표 스타일 새로 만들기에서 글꼴 및 크기 지정


표 스타일 내에서는 글꼴 및 크기 지정을 지원하지 않습니다.

글꼴 및 크기는 각 셀에 종속되는 속성이기 때문에 표 스타일에서는 설정할 수 없으며, 엑셀에서도 동일합니다.

따라서, 각 셀에 별도로 설정해 주어야 합니다.

아래 코드를 참고하여 주시기 바랍니다.

      let table = sheet.tables.all()[0];
      let row = table.dataRange().row;
      let rowCount = table.dataRange().rowCount;
      sheet.getRange(row, 1, rowCount, 1).font('italic bold 15px/30px Georgia');



3. 시트 바인딩 시 필드를 동적으로 생성하는 방법


자바스크립트 코드를 이용하여 시트 바인딩에 사용할 필드를 설정할 수 있습니다.

아래 데모를 통해 확인해 보실 수 있습니다.


감사합니다.

그레이프시티 드림

댓글목록

등록된 댓글이 없습니다.

메시어스 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기
메시어스 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기
이메일 : sales-kor@mescius.com | 전화 : 1670-0583 | 경기도 과천시 과천대로 7길 33, 디테크타워 B동 1107호 메시어스(주) 대표자 : 허경명 | 사업자등록번호 : 123-84-00981 | 통신판매업신고번호 : 2013-경기안양-00331 ⓒ 2024 MESCIUS inc. All rights reserved.