IBSheet8 의 엑셀 다운로드 함수인 down2Excel 또는 exportData 를 사용할때, downCols 인자를 설정하면 지정한 컬럼만 다운로드할 수 있습니다. ( 두 함수의 차이는 아래 링크를 참조하세요)
1. 지정한 컬럼만 다운로드 하기 (컬럼Name 을 "|" 로 연결한 문자)
sheet.down2Excel({fileName: 'sample.xlsx', SheetDesign: 1, downCols: "SEQ|sName|Reason|Qty|Date1|Date2"});
2. 화면에 보여지는 컬러만 다운로드 하기 (downCols: "Visible" 설정)
sheet.down2Excel({fileName: 'sample.xlsx', SheetDesign: 1, downCols: "Visible"});
3. 조건에 따라 특정 컬럼을 제외하고 다운로드 하기 (함수를 이용해 조건 설정)
sheet.down2Excel({ fileName: 'sample.xlsx', SheetDesign: 1, downCols : makeHiddenSkipCol() }); ... function makeHiddenSkipCol() { //visible:0인 컬럼, SEQ, 상태컬럼, check 컬럼을 제외한다. var cols = sheet.getCols(); var colsArr = new Array(); for (var i = 0; i < cols.length; i++) { var colName = sheet.getAttribute({col: cols[i],attr: "Name"}); var colVisible = sheet.getAttribute({col: cols[i],attr: "Visible"}); var colType = sheet.getAttribute({col: cols[i],attr: "Type"}); if (colVisible && colName != "SEQ" && colName != "sStatus" && colType != "Bool") { colsArr.push(colName); } } //console.log(colsArr.join("|")); return colsArr.join("|"); }
ex) visible:0인 컬럼, SEQ, 상태, 체크박스 컬럼을 제외하고 다운로드 하는 예제
https://jsfiddle.net/kfh6Lywm/
4. 다운로드 다이알로그를 통한 사용자 지정 다운로드
다운로드 함수를 사용하지 않고, showDownloadDialog 메소드를 호출하면 별도의 다운로드 다이알로그가 생성되고, Header에 있는 체크박스를 통해 사용자가 직접 원하는 컬럼만을 다운로드 할 수 있습니다. 다이알로그 함수는 ibsheet-dialog.js 파일 안에 정의되어 있으며, 공통 수정이 필요한 경우 해당 함수를 수정하시면 됩니다. (down2Excel 호출 인자는 downParams 넣어 함수를 호출할 수 있습니다.)
//다운로드 다이얼로그 오픈
sheet.showDownloadDialog();