ninegrid2 6.451.0 → 6.452.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundle.cjs.js +4 -285
- package/dist/bundle.esm.js +4 -285
- package/dist/etc/ngExport.js +4 -0
- package/package.json +1 -1
- package/src/etc/ngExport.js +4 -0
package/dist/bundle.cjs.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
require('exceljs');
|
|
4
4
|
|
|
5
5
|
function getDefaultExportFromCjs (x) {
|
|
6
6
|
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
|
|
@@ -17500,297 +17500,16 @@ class ngExportExcel
|
|
|
17500
17500
|
export = () => {
|
|
17501
17501
|
|
|
17502
17502
|
var _option = {
|
|
17503
|
-
fileName : (this.#owner.getAttribute("caption") || "export").replace(/[`~!@#$%^&*|\\\'\";:\/?]/gi, "")
|
|
17504
|
-
afterFunc : () => {},
|
|
17505
|
-
};
|
|
17506
|
-
|
|
17507
|
-
var fileName = ninegrid.nvl(_option.fileName, "temp");
|
|
17508
|
-
|
|
17509
|
-
const _download = async (workbook, fileName) => {
|
|
17510
|
-
|
|
17511
|
-
console.log("export....");
|
|
17512
|
-
|
|
17513
|
-
workbook.xlsx.writeBuffer().then((data) => {
|
|
17514
|
-
var blob = new Blob([data], {type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"});
|
|
17515
|
-
const url = window.URL.createObjectURL(blob);
|
|
17516
|
-
|
|
17517
|
-
const a = document.createElement("a");
|
|
17518
|
-
document.body.appendChild(a);
|
|
17519
|
-
a.href = url;
|
|
17520
|
-
a.download = fileName + ".xlsx";
|
|
17521
|
-
a.click();
|
|
17522
|
-
|
|
17523
|
-
setTimeout(() => {
|
|
17524
|
-
window.URL.revokeObjectURL(url);
|
|
17525
|
-
document.body.removeChild(a);
|
|
17526
|
-
|
|
17527
|
-
console.log("completed");
|
|
17528
|
-
}, 0);
|
|
17529
|
-
});
|
|
17530
|
-
|
|
17531
|
-
};
|
|
17532
|
-
|
|
17533
|
-
const getImportFill = () => {
|
|
17534
|
-
return {
|
|
17535
|
-
type : "pattern",
|
|
17536
|
-
pattern : "solid",
|
|
17537
|
-
fgColor : { argb: "FFCCCCCC" },
|
|
17538
|
-
};
|
|
17539
|
-
};
|
|
17540
|
-
const getImportBorder = () => {
|
|
17541
|
-
return {
|
|
17542
|
-
top : { style: "thin", color: { argb: "FF999999" } },
|
|
17543
|
-
left : { style: "thin", color: { argb: "FF999999" } },
|
|
17544
|
-
bottom : { style: "thin", color: { argb: "FF999999" } },
|
|
17545
|
-
right : { style: "thin", color: { argb: "FF999999" } },
|
|
17546
|
-
};
|
|
17547
|
-
};
|
|
17503
|
+
fileName : (this.#owner.getAttribute("caption") || "export").replace(/[`~!@#$%^&*|\\\'\";:\/?]/gi, "")};
|
|
17548
17504
|
|
|
17549
|
-
|
|
17550
|
-
|
|
17551
|
-
var startRow = $(".ng-container-body thead tr:not(.col-indicator-rowgroup)", this.#owner.body).length + 1 + this.#owner.template.length;
|
|
17552
|
-
var rowData = this.#owner.data.get(rowIndex);
|
|
17553
|
-
//var rowData = this.#owner.data.getRow(rowIndex);
|
|
17554
|
-
|
|
17555
|
-
$(this.#owner.template).each((i, tr) => {
|
|
17556
|
-
var row = parseInt(rowIndex * this.#owner.template.length) + startRow + i;
|
|
17557
|
-
|
|
17558
|
-
if (i == 0) {
|
|
17559
|
-
var cell = sheet.getCell(row, 1);
|
|
17560
|
-
cell.alignment = {
|
|
17561
|
-
horizontal : "center",
|
|
17562
|
-
vertical : "middle",
|
|
17563
|
-
wrapText : true,
|
|
17564
|
-
};
|
|
17565
|
-
cell.dataValidation = {
|
|
17566
|
-
type: 'list',
|
|
17567
|
-
allowBlank: true,
|
|
17568
|
-
formulae: ['"NONE,INSERT,UPDATE,DELETE"'],
|
|
17569
|
-
};
|
|
17570
|
-
cell.fill = getImportFill();
|
|
17571
|
-
cell.border = getImportBorder();
|
|
17572
|
-
|
|
17573
|
-
if (this.#owner.template.length > 1) sheet.mergeCells(row, 1, row + this.#owner.template.length - 1, 1);
|
|
17574
|
-
}
|
|
17575
|
-
|
|
17576
|
-
$("th,td", tr).not(".dummy").not(".first").not(".last").each((j, td) => {
|
|
17577
|
-
|
|
17578
|
-
var index = parseInt(td.dataset.index);
|
|
17579
|
-
var cell = sheet.getCell(row, index);
|
|
17580
|
-
|
|
17581
|
-
var v = "";
|
|
17582
|
-
|
|
17583
|
-
if (!ninegrid.isNull(td.dataset.expr)) {
|
|
17584
|
-
try {
|
|
17585
|
-
//v = this.#owner.exprFunction2(td.dataset.expr).call(this, rowData, rowIndex);
|
|
17586
|
-
v = this.#owner.exprFunction(td.dataset.expr).call(this, rowData, rowIndex);
|
|
17587
|
-
} catch(e) {
|
|
17588
|
-
console.error(e, rowIndex, td.dataset.bind, td.dataset.expr);
|
|
17589
|
-
//v = this.#owner.exprFunction2(td.dataset.expr).call(this, rowData, rowIndex);
|
|
17590
|
-
}
|
|
17591
|
-
}
|
|
17592
|
-
else if (!ninegrid.isNull(td.dataset.bind)) {
|
|
17593
|
-
//const COL_IDX = this.#owner.fields.indexOf(td.dataset.bind);
|
|
17594
|
-
//v = rowData.v[COL_IDX] || "";
|
|
17595
|
-
v = rowData[td.dataset.bind] || "";
|
|
17596
|
-
}
|
|
17597
|
-
|
|
17598
|
-
cell.value = v;
|
|
17599
|
-
|
|
17600
|
-
var combo = td.querySelector("ng-combo");
|
|
17601
|
-
if (combo) {
|
|
17602
|
-
var dataSource = combo.getAttribute("data-source");
|
|
17603
|
-
if (dataSource) {
|
|
17604
|
-
const value = combo.getAttribute("value");
|
|
17605
|
-
|
|
17606
|
-
dataSource = this.#owner.exprFunction(dataSource).call(this, rowData, rowIndex);
|
|
17607
|
-
|
|
17608
|
-
const formulae = [...new Set(dataSource.map(m => { return m[value].replaceAll(",", " "); }))];
|
|
17609
|
-
|
|
17610
|
-
if (formulae.length > 0) {
|
|
17611
|
-
cell.dataValidation = {
|
|
17612
|
-
type: 'list',
|
|
17613
|
-
allowBlank: true,
|
|
17614
|
-
formulae: ["\"" + formulae.join(",") + "\""],
|
|
17615
|
-
};
|
|
17616
|
-
}
|
|
17617
|
-
}
|
|
17618
|
-
}
|
|
17619
|
-
|
|
17620
|
-
var radio = td.querySelector("ng-radio");
|
|
17621
|
-
if (radio) {
|
|
17622
|
-
var dataSource = radio.getAttribute("data-source");
|
|
17623
|
-
if (dataSource) {
|
|
17624
|
-
radio.getAttribute("value");
|
|
17625
|
-
|
|
17626
|
-
dataSource = this.#owner.exprFunction(dataSource).call(this, rowData, rowIndex);
|
|
17627
|
-
|
|
17628
|
-
const formulae = [...new Set(dataSource.map(m => { return m["value"]; }))];
|
|
17629
|
-
|
|
17630
|
-
if (formulae.length > 0) {
|
|
17631
|
-
cell.dataValidation = {
|
|
17632
|
-
type: 'list',
|
|
17633
|
-
allowBlank: true,
|
|
17634
|
-
formulae: ["\"" + formulae.join(",") + "\""],
|
|
17635
|
-
};
|
|
17636
|
-
}
|
|
17637
|
-
}
|
|
17638
|
-
}
|
|
17639
|
-
|
|
17640
|
-
|
|
17641
|
-
cell.alignment = {
|
|
17642
|
-
horizontal : td.getAttribute("text-align") || "left",
|
|
17643
|
-
vertical : "middle",
|
|
17644
|
-
wrapText : true,
|
|
17645
|
-
};
|
|
17646
|
-
|
|
17647
|
-
if (td.colSpan > 1 || td.rowSpan > 1) {
|
|
17648
|
-
sheet.mergeCells(row, index, row + td.rowSpan - 1, index + td.colSpan - 1);
|
|
17649
|
-
}
|
|
17650
|
-
});
|
|
17651
|
-
});
|
|
17652
|
-
};
|
|
17505
|
+
ninegrid.nvl(_option.fileName, "temp");
|
|
17653
17506
|
|
|
17654
17507
|
$(this.#messageBox).html("generate...");
|
|
17655
17508
|
this.#progressBar.setAttribute("max", this.#owner.data.count());
|
|
17656
17509
|
this.#progressBar.setAttribute("value", 0);
|
|
17657
|
-
|
|
17658
|
-
const workbook = new ExcelJS$1.Workbook();
|
|
17659
|
-
const sheet = workbook.addWorksheet('Sheet1');
|
|
17660
|
-
|
|
17661
|
-
var index = 0;
|
|
17662
|
-
sheet.getColumn(++index).width = 10;
|
|
17663
|
-
$(".col-indicator-rowgroup .col-indicator:not(.dummy)", this.#owner.body).not(".first").not(".last").each((i, td) => {
|
|
17664
|
-
|
|
17665
|
-
if (i == 0) return true;
|
|
17666
|
-
|
|
17667
|
-
td.dataset.index = ++index;
|
|
17668
|
-
$(`[data-col="${td.dataset.col}"]`, this.#owner.template).each((i,v) => {
|
|
17669
|
-
v.dataset.index = index;
|
|
17670
|
-
});
|
|
17671
|
-
|
|
17672
|
-
this.#owner.body.querySelectorAll(`thead [data-col="${td.dataset.col}"]`).forEach(v => {
|
|
17673
|
-
v.dataset.index = index;
|
|
17674
|
-
});
|
|
17675
|
-
|
|
17676
|
-
sheet.getColumn(index).width = $(td).width() / 7;
|
|
17677
|
-
});
|
|
17678
|
-
|
|
17679
|
-
|
|
17680
|
-
$(this.#owner.template).each((i, tr) => {
|
|
17681
|
-
|
|
17682
|
-
var row = i + 1;
|
|
17683
|
-
|
|
17684
|
-
if (i == 0) {
|
|
17685
|
-
var cell = sheet.getCell(row, 1);
|
|
17686
|
-
cell.fill = getImportFill();
|
|
17687
|
-
cell.border = getImportBorder();
|
|
17688
|
-
if (this.#owner.template.length > 1) sheet.mergeCells(row, 1, row + this.#owner.template.length - 1, 1);
|
|
17689
|
-
}
|
|
17690
|
-
|
|
17691
|
-
$("th:not(.dummy),td:not(.dummy)", tr).not(".first").not(".last").each((j, td) => {
|
|
17692
|
-
var index = parseInt(td.dataset.index);
|
|
17693
|
-
var cell = sheet.getCell(row, index);
|
|
17694
|
-
|
|
17695
|
-
if (!["rowState"].includes(td.dataset.bind)) cell.value = td.dataset.bind;
|
|
17696
|
-
|
|
17697
|
-
if (td.colSpan > 1 || td.rowSpan > 1) {
|
|
17698
|
-
sheet.mergeCells(row, index, row + td.rowSpan - 1, index + td.colSpan - 1);
|
|
17699
|
-
}
|
|
17700
|
-
|
|
17701
|
-
cell.font = {
|
|
17702
|
-
size : 6,
|
|
17703
|
-
//color : {argb: color.replace("#", "")}
|
|
17704
|
-
};
|
|
17705
|
-
cell.fill = getImportFill();
|
|
17706
|
-
cell.border = getImportBorder();
|
|
17707
|
-
});
|
|
17708
|
-
});
|
|
17709
17510
|
|
|
17710
17511
|
|
|
17711
|
-
|
|
17712
|
-
|
|
17713
|
-
var row = tr.sectionRowIndex + this.#owner.template.length;
|
|
17714
|
-
|
|
17715
|
-
if (i == 0) {
|
|
17716
|
-
var cell = sheet.getCell(row, 1);
|
|
17717
|
-
cell.value = "CRUD";
|
|
17718
|
-
cell.alignment = {
|
|
17719
|
-
horizontal : "center",
|
|
17720
|
-
vertical : "middle",
|
|
17721
|
-
wrapText : true,
|
|
17722
|
-
};
|
|
17723
|
-
cell.fill = getImportFill();
|
|
17724
|
-
cell.border = getImportBorder();
|
|
17725
|
-
|
|
17726
|
-
if (this.#owner.template.length > 1) sheet.mergeCells(row, 1, row + this.#owner.template.length - 1, 1);
|
|
17727
|
-
}
|
|
17728
|
-
|
|
17729
|
-
$("th:not(.dummy),td:not(.dummy)", tr).not(".first").not(".last").each((j, td) => {
|
|
17730
|
-
var index = parseInt(td.dataset.index);
|
|
17731
|
-
var cell = sheet.getCell(row, index);
|
|
17732
|
-
cell.value = $(td).text();
|
|
17733
|
-
|
|
17734
|
-
if (td.colSpan > 1 || td.rowSpan > 1) {
|
|
17735
|
-
sheet.mergeCells(row, index, row + td.rowSpan - 1, index + td.colSpan - 1);
|
|
17736
|
-
}
|
|
17737
|
-
|
|
17738
|
-
//cell.font = getCellFontInfo(oCell, -1);
|
|
17739
|
-
cell.alignment = {
|
|
17740
|
-
horizontal : "center",
|
|
17741
|
-
vertical : "middle",
|
|
17742
|
-
wrapText : true,
|
|
17743
|
-
};
|
|
17744
|
-
|
|
17745
|
-
cell.fill = {
|
|
17746
|
-
type : "pattern",
|
|
17747
|
-
pattern : "solid",
|
|
17748
|
-
fgColor : { argb: "FFEEEEEE" },
|
|
17749
|
-
};
|
|
17750
|
-
|
|
17751
|
-
cell.border = {
|
|
17752
|
-
top : { style: "thin", color: { argb: "FFCCCCCC" } },
|
|
17753
|
-
left : { style: "thin", color: { argb: "FFCCCCCC" } },
|
|
17754
|
-
bottom : { style: "thin", color: { argb: "FFCCCCCC" } },
|
|
17755
|
-
right : { style: "thin", color: { argb: "FFCCCCCC" } },
|
|
17756
|
-
};
|
|
17757
|
-
});
|
|
17758
|
-
});
|
|
17759
|
-
|
|
17760
|
-
|
|
17761
|
-
/**
|
|
17762
|
-
* Data Export (Table Body)
|
|
17763
|
-
*/
|
|
17764
|
-
var data = this.#owner.data.getValidData();
|
|
17765
|
-
//setTimeout(() => {
|
|
17766
|
-
var rowIndex = 0;
|
|
17767
|
-
for (var i = 0; i < data.length; i++) {
|
|
17768
|
-
setTimeout(() => {
|
|
17769
|
-
setRowData(rowIndex++);
|
|
17770
|
-
//});
|
|
17771
|
-
|
|
17772
|
-
//setTimeout(() => {
|
|
17773
|
-
this.#progressBar.setAttribute("value", rowIndex+1);
|
|
17774
|
-
$(this.#messageBox).html(rowIndex+1 >= data.length ? "downloading..." : "processing... " + rowIndex.toLocaleString() + " / " + data.length.toLocaleString());
|
|
17775
|
-
});
|
|
17776
|
-
}
|
|
17777
|
-
//});
|
|
17778
|
-
|
|
17779
|
-
var interval = setInterval(() => {
|
|
17780
|
-
if (parseInt(this.#progressBar.getAttribute("value")) >= parseInt(this.#progressBar.getAttribute("max"))) {
|
|
17781
|
-
clearInterval(interval);
|
|
17782
|
-
|
|
17783
|
-
setTimeout(() => {
|
|
17784
|
-
_download(workbook, fileName).then(r => {});
|
|
17785
|
-
|
|
17786
|
-
if (_option.afterFunc) _option.afterFunc.call(this.#owner);
|
|
17787
|
-
});
|
|
17788
|
-
|
|
17789
|
-
setTimeout(() => {
|
|
17790
|
-
this.#dialog.close();
|
|
17791
|
-
});
|
|
17792
|
-
}
|
|
17793
|
-
}, 500);
|
|
17512
|
+
throw "aa";
|
|
17794
17513
|
};
|
|
17795
17514
|
|
|
17796
17515
|
exportPdf = () => {
|
package/dist/bundle.esm.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import 'exceljs';
|
|
2
2
|
|
|
3
3
|
function getDefaultExportFromCjs (x) {
|
|
4
4
|
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
|
|
@@ -17498,297 +17498,16 @@ class ngExportExcel
|
|
|
17498
17498
|
export = () => {
|
|
17499
17499
|
|
|
17500
17500
|
var _option = {
|
|
17501
|
-
fileName : (this.#owner.getAttribute("caption") || "export").replace(/[`~!@#$%^&*|\\\'\";:\/?]/gi, "")
|
|
17502
|
-
afterFunc : () => {},
|
|
17503
|
-
};
|
|
17504
|
-
|
|
17505
|
-
var fileName = ninegrid.nvl(_option.fileName, "temp");
|
|
17506
|
-
|
|
17507
|
-
const _download = async (workbook, fileName) => {
|
|
17508
|
-
|
|
17509
|
-
console.log("export....");
|
|
17510
|
-
|
|
17511
|
-
workbook.xlsx.writeBuffer().then((data) => {
|
|
17512
|
-
var blob = new Blob([data], {type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"});
|
|
17513
|
-
const url = window.URL.createObjectURL(blob);
|
|
17514
|
-
|
|
17515
|
-
const a = document.createElement("a");
|
|
17516
|
-
document.body.appendChild(a);
|
|
17517
|
-
a.href = url;
|
|
17518
|
-
a.download = fileName + ".xlsx";
|
|
17519
|
-
a.click();
|
|
17520
|
-
|
|
17521
|
-
setTimeout(() => {
|
|
17522
|
-
window.URL.revokeObjectURL(url);
|
|
17523
|
-
document.body.removeChild(a);
|
|
17524
|
-
|
|
17525
|
-
console.log("completed");
|
|
17526
|
-
}, 0);
|
|
17527
|
-
});
|
|
17528
|
-
|
|
17529
|
-
};
|
|
17530
|
-
|
|
17531
|
-
const getImportFill = () => {
|
|
17532
|
-
return {
|
|
17533
|
-
type : "pattern",
|
|
17534
|
-
pattern : "solid",
|
|
17535
|
-
fgColor : { argb: "FFCCCCCC" },
|
|
17536
|
-
};
|
|
17537
|
-
};
|
|
17538
|
-
const getImportBorder = () => {
|
|
17539
|
-
return {
|
|
17540
|
-
top : { style: "thin", color: { argb: "FF999999" } },
|
|
17541
|
-
left : { style: "thin", color: { argb: "FF999999" } },
|
|
17542
|
-
bottom : { style: "thin", color: { argb: "FF999999" } },
|
|
17543
|
-
right : { style: "thin", color: { argb: "FF999999" } },
|
|
17544
|
-
};
|
|
17545
|
-
};
|
|
17501
|
+
fileName : (this.#owner.getAttribute("caption") || "export").replace(/[`~!@#$%^&*|\\\'\";:\/?]/gi, "")};
|
|
17546
17502
|
|
|
17547
|
-
|
|
17548
|
-
|
|
17549
|
-
var startRow = $(".ng-container-body thead tr:not(.col-indicator-rowgroup)", this.#owner.body).length + 1 + this.#owner.template.length;
|
|
17550
|
-
var rowData = this.#owner.data.get(rowIndex);
|
|
17551
|
-
//var rowData = this.#owner.data.getRow(rowIndex);
|
|
17552
|
-
|
|
17553
|
-
$(this.#owner.template).each((i, tr) => {
|
|
17554
|
-
var row = parseInt(rowIndex * this.#owner.template.length) + startRow + i;
|
|
17555
|
-
|
|
17556
|
-
if (i == 0) {
|
|
17557
|
-
var cell = sheet.getCell(row, 1);
|
|
17558
|
-
cell.alignment = {
|
|
17559
|
-
horizontal : "center",
|
|
17560
|
-
vertical : "middle",
|
|
17561
|
-
wrapText : true,
|
|
17562
|
-
};
|
|
17563
|
-
cell.dataValidation = {
|
|
17564
|
-
type: 'list',
|
|
17565
|
-
allowBlank: true,
|
|
17566
|
-
formulae: ['"NONE,INSERT,UPDATE,DELETE"'],
|
|
17567
|
-
};
|
|
17568
|
-
cell.fill = getImportFill();
|
|
17569
|
-
cell.border = getImportBorder();
|
|
17570
|
-
|
|
17571
|
-
if (this.#owner.template.length > 1) sheet.mergeCells(row, 1, row + this.#owner.template.length - 1, 1);
|
|
17572
|
-
}
|
|
17573
|
-
|
|
17574
|
-
$("th,td", tr).not(".dummy").not(".first").not(".last").each((j, td) => {
|
|
17575
|
-
|
|
17576
|
-
var index = parseInt(td.dataset.index);
|
|
17577
|
-
var cell = sheet.getCell(row, index);
|
|
17578
|
-
|
|
17579
|
-
var v = "";
|
|
17580
|
-
|
|
17581
|
-
if (!ninegrid.isNull(td.dataset.expr)) {
|
|
17582
|
-
try {
|
|
17583
|
-
//v = this.#owner.exprFunction2(td.dataset.expr).call(this, rowData, rowIndex);
|
|
17584
|
-
v = this.#owner.exprFunction(td.dataset.expr).call(this, rowData, rowIndex);
|
|
17585
|
-
} catch(e) {
|
|
17586
|
-
console.error(e, rowIndex, td.dataset.bind, td.dataset.expr);
|
|
17587
|
-
//v = this.#owner.exprFunction2(td.dataset.expr).call(this, rowData, rowIndex);
|
|
17588
|
-
}
|
|
17589
|
-
}
|
|
17590
|
-
else if (!ninegrid.isNull(td.dataset.bind)) {
|
|
17591
|
-
//const COL_IDX = this.#owner.fields.indexOf(td.dataset.bind);
|
|
17592
|
-
//v = rowData.v[COL_IDX] || "";
|
|
17593
|
-
v = rowData[td.dataset.bind] || "";
|
|
17594
|
-
}
|
|
17595
|
-
|
|
17596
|
-
cell.value = v;
|
|
17597
|
-
|
|
17598
|
-
var combo = td.querySelector("ng-combo");
|
|
17599
|
-
if (combo) {
|
|
17600
|
-
var dataSource = combo.getAttribute("data-source");
|
|
17601
|
-
if (dataSource) {
|
|
17602
|
-
const value = combo.getAttribute("value");
|
|
17603
|
-
|
|
17604
|
-
dataSource = this.#owner.exprFunction(dataSource).call(this, rowData, rowIndex);
|
|
17605
|
-
|
|
17606
|
-
const formulae = [...new Set(dataSource.map(m => { return m[value].replaceAll(",", " "); }))];
|
|
17607
|
-
|
|
17608
|
-
if (formulae.length > 0) {
|
|
17609
|
-
cell.dataValidation = {
|
|
17610
|
-
type: 'list',
|
|
17611
|
-
allowBlank: true,
|
|
17612
|
-
formulae: ["\"" + formulae.join(",") + "\""],
|
|
17613
|
-
};
|
|
17614
|
-
}
|
|
17615
|
-
}
|
|
17616
|
-
}
|
|
17617
|
-
|
|
17618
|
-
var radio = td.querySelector("ng-radio");
|
|
17619
|
-
if (radio) {
|
|
17620
|
-
var dataSource = radio.getAttribute("data-source");
|
|
17621
|
-
if (dataSource) {
|
|
17622
|
-
radio.getAttribute("value");
|
|
17623
|
-
|
|
17624
|
-
dataSource = this.#owner.exprFunction(dataSource).call(this, rowData, rowIndex);
|
|
17625
|
-
|
|
17626
|
-
const formulae = [...new Set(dataSource.map(m => { return m["value"]; }))];
|
|
17627
|
-
|
|
17628
|
-
if (formulae.length > 0) {
|
|
17629
|
-
cell.dataValidation = {
|
|
17630
|
-
type: 'list',
|
|
17631
|
-
allowBlank: true,
|
|
17632
|
-
formulae: ["\"" + formulae.join(",") + "\""],
|
|
17633
|
-
};
|
|
17634
|
-
}
|
|
17635
|
-
}
|
|
17636
|
-
}
|
|
17637
|
-
|
|
17638
|
-
|
|
17639
|
-
cell.alignment = {
|
|
17640
|
-
horizontal : td.getAttribute("text-align") || "left",
|
|
17641
|
-
vertical : "middle",
|
|
17642
|
-
wrapText : true,
|
|
17643
|
-
};
|
|
17644
|
-
|
|
17645
|
-
if (td.colSpan > 1 || td.rowSpan > 1) {
|
|
17646
|
-
sheet.mergeCells(row, index, row + td.rowSpan - 1, index + td.colSpan - 1);
|
|
17647
|
-
}
|
|
17648
|
-
});
|
|
17649
|
-
});
|
|
17650
|
-
};
|
|
17503
|
+
ninegrid.nvl(_option.fileName, "temp");
|
|
17651
17504
|
|
|
17652
17505
|
$(this.#messageBox).html("generate...");
|
|
17653
17506
|
this.#progressBar.setAttribute("max", this.#owner.data.count());
|
|
17654
17507
|
this.#progressBar.setAttribute("value", 0);
|
|
17655
|
-
|
|
17656
|
-
const workbook = new ExcelJS$1.Workbook();
|
|
17657
|
-
const sheet = workbook.addWorksheet('Sheet1');
|
|
17658
|
-
|
|
17659
|
-
var index = 0;
|
|
17660
|
-
sheet.getColumn(++index).width = 10;
|
|
17661
|
-
$(".col-indicator-rowgroup .col-indicator:not(.dummy)", this.#owner.body).not(".first").not(".last").each((i, td) => {
|
|
17662
|
-
|
|
17663
|
-
if (i == 0) return true;
|
|
17664
|
-
|
|
17665
|
-
td.dataset.index = ++index;
|
|
17666
|
-
$(`[data-col="${td.dataset.col}"]`, this.#owner.template).each((i,v) => {
|
|
17667
|
-
v.dataset.index = index;
|
|
17668
|
-
});
|
|
17669
|
-
|
|
17670
|
-
this.#owner.body.querySelectorAll(`thead [data-col="${td.dataset.col}"]`).forEach(v => {
|
|
17671
|
-
v.dataset.index = index;
|
|
17672
|
-
});
|
|
17673
|
-
|
|
17674
|
-
sheet.getColumn(index).width = $(td).width() / 7;
|
|
17675
|
-
});
|
|
17676
|
-
|
|
17677
|
-
|
|
17678
|
-
$(this.#owner.template).each((i, tr) => {
|
|
17679
|
-
|
|
17680
|
-
var row = i + 1;
|
|
17681
|
-
|
|
17682
|
-
if (i == 0) {
|
|
17683
|
-
var cell = sheet.getCell(row, 1);
|
|
17684
|
-
cell.fill = getImportFill();
|
|
17685
|
-
cell.border = getImportBorder();
|
|
17686
|
-
if (this.#owner.template.length > 1) sheet.mergeCells(row, 1, row + this.#owner.template.length - 1, 1);
|
|
17687
|
-
}
|
|
17688
|
-
|
|
17689
|
-
$("th:not(.dummy),td:not(.dummy)", tr).not(".first").not(".last").each((j, td) => {
|
|
17690
|
-
var index = parseInt(td.dataset.index);
|
|
17691
|
-
var cell = sheet.getCell(row, index);
|
|
17692
|
-
|
|
17693
|
-
if (!["rowState"].includes(td.dataset.bind)) cell.value = td.dataset.bind;
|
|
17694
|
-
|
|
17695
|
-
if (td.colSpan > 1 || td.rowSpan > 1) {
|
|
17696
|
-
sheet.mergeCells(row, index, row + td.rowSpan - 1, index + td.colSpan - 1);
|
|
17697
|
-
}
|
|
17698
|
-
|
|
17699
|
-
cell.font = {
|
|
17700
|
-
size : 6,
|
|
17701
|
-
//color : {argb: color.replace("#", "")}
|
|
17702
|
-
};
|
|
17703
|
-
cell.fill = getImportFill();
|
|
17704
|
-
cell.border = getImportBorder();
|
|
17705
|
-
});
|
|
17706
|
-
});
|
|
17707
17508
|
|
|
17708
17509
|
|
|
17709
|
-
|
|
17710
|
-
|
|
17711
|
-
var row = tr.sectionRowIndex + this.#owner.template.length;
|
|
17712
|
-
|
|
17713
|
-
if (i == 0) {
|
|
17714
|
-
var cell = sheet.getCell(row, 1);
|
|
17715
|
-
cell.value = "CRUD";
|
|
17716
|
-
cell.alignment = {
|
|
17717
|
-
horizontal : "center",
|
|
17718
|
-
vertical : "middle",
|
|
17719
|
-
wrapText : true,
|
|
17720
|
-
};
|
|
17721
|
-
cell.fill = getImportFill();
|
|
17722
|
-
cell.border = getImportBorder();
|
|
17723
|
-
|
|
17724
|
-
if (this.#owner.template.length > 1) sheet.mergeCells(row, 1, row + this.#owner.template.length - 1, 1);
|
|
17725
|
-
}
|
|
17726
|
-
|
|
17727
|
-
$("th:not(.dummy),td:not(.dummy)", tr).not(".first").not(".last").each((j, td) => {
|
|
17728
|
-
var index = parseInt(td.dataset.index);
|
|
17729
|
-
var cell = sheet.getCell(row, index);
|
|
17730
|
-
cell.value = $(td).text();
|
|
17731
|
-
|
|
17732
|
-
if (td.colSpan > 1 || td.rowSpan > 1) {
|
|
17733
|
-
sheet.mergeCells(row, index, row + td.rowSpan - 1, index + td.colSpan - 1);
|
|
17734
|
-
}
|
|
17735
|
-
|
|
17736
|
-
//cell.font = getCellFontInfo(oCell, -1);
|
|
17737
|
-
cell.alignment = {
|
|
17738
|
-
horizontal : "center",
|
|
17739
|
-
vertical : "middle",
|
|
17740
|
-
wrapText : true,
|
|
17741
|
-
};
|
|
17742
|
-
|
|
17743
|
-
cell.fill = {
|
|
17744
|
-
type : "pattern",
|
|
17745
|
-
pattern : "solid",
|
|
17746
|
-
fgColor : { argb: "FFEEEEEE" },
|
|
17747
|
-
};
|
|
17748
|
-
|
|
17749
|
-
cell.border = {
|
|
17750
|
-
top : { style: "thin", color: { argb: "FFCCCCCC" } },
|
|
17751
|
-
left : { style: "thin", color: { argb: "FFCCCCCC" } },
|
|
17752
|
-
bottom : { style: "thin", color: { argb: "FFCCCCCC" } },
|
|
17753
|
-
right : { style: "thin", color: { argb: "FFCCCCCC" } },
|
|
17754
|
-
};
|
|
17755
|
-
});
|
|
17756
|
-
});
|
|
17757
|
-
|
|
17758
|
-
|
|
17759
|
-
/**
|
|
17760
|
-
* Data Export (Table Body)
|
|
17761
|
-
*/
|
|
17762
|
-
var data = this.#owner.data.getValidData();
|
|
17763
|
-
//setTimeout(() => {
|
|
17764
|
-
var rowIndex = 0;
|
|
17765
|
-
for (var i = 0; i < data.length; i++) {
|
|
17766
|
-
setTimeout(() => {
|
|
17767
|
-
setRowData(rowIndex++);
|
|
17768
|
-
//});
|
|
17769
|
-
|
|
17770
|
-
//setTimeout(() => {
|
|
17771
|
-
this.#progressBar.setAttribute("value", rowIndex+1);
|
|
17772
|
-
$(this.#messageBox).html(rowIndex+1 >= data.length ? "downloading..." : "processing... " + rowIndex.toLocaleString() + " / " + data.length.toLocaleString());
|
|
17773
|
-
});
|
|
17774
|
-
}
|
|
17775
|
-
//});
|
|
17776
|
-
|
|
17777
|
-
var interval = setInterval(() => {
|
|
17778
|
-
if (parseInt(this.#progressBar.getAttribute("value")) >= parseInt(this.#progressBar.getAttribute("max"))) {
|
|
17779
|
-
clearInterval(interval);
|
|
17780
|
-
|
|
17781
|
-
setTimeout(() => {
|
|
17782
|
-
_download(workbook, fileName).then(r => {});
|
|
17783
|
-
|
|
17784
|
-
if (_option.afterFunc) _option.afterFunc.call(this.#owner);
|
|
17785
|
-
});
|
|
17786
|
-
|
|
17787
|
-
setTimeout(() => {
|
|
17788
|
-
this.#dialog.close();
|
|
17789
|
-
});
|
|
17790
|
-
}
|
|
17791
|
-
}, 500);
|
|
17510
|
+
throw "aa";
|
|
17792
17511
|
};
|
|
17793
17512
|
|
|
17794
17513
|
exportPdf = () => {
|
package/dist/etc/ngExport.js
CHANGED
|
@@ -200,6 +200,10 @@ export class ngExportExcel
|
|
|
200
200
|
$(this.#messageBox).html("generate...");
|
|
201
201
|
this.#progressBar.setAttribute("max", this.#owner.data.count());
|
|
202
202
|
this.#progressBar.setAttribute("value", 0);
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
throw "aa";
|
|
206
|
+
//this.#progressBar.
|
|
203
207
|
|
|
204
208
|
const workbook = new ExcelJS.Workbook();
|
|
205
209
|
const sheet = workbook.addWorksheet('Sheet1');
|
package/package.json
CHANGED
package/src/etc/ngExport.js
CHANGED
|
@@ -200,6 +200,10 @@ export class ngExportExcel
|
|
|
200
200
|
$(this.#messageBox).html("generate...");
|
|
201
201
|
this.#progressBar.setAttribute("max", this.#owner.data.count());
|
|
202
202
|
this.#progressBar.setAttribute("value", 0);
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
throw "aa";
|
|
206
|
+
//this.#progressBar.
|
|
203
207
|
|
|
204
208
|
const workbook = new ExcelJS.Workbook();
|
|
205
209
|
const sheet = workbook.addWorksheet('Sheet1');
|