You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

32 lines
852 B

function generateDataArrayForColumn(totalRowCount, columnConfig) {
let result = [];
let columnCountArray = Array.from(Array(totalRowCount), (x, i) => i);
columnCountArray.forEach((x, i) => {
result.push(columnConfig.getData());
});
return result;
}
function createHeaders(dataConfig) {
let headers = dataConfig.map((a) => a.columnName);
return headers;
}
export function createExcelRowData(totalRowCount, dataConfig) {
const rows = [];
rows.push(createHeaders(dataConfig));
let createDataSet = [];
dataConfig.forEach((columnConfig) => {
createDataSet.push(generateDataArrayForColumn(totalRowCount, columnConfig));
});
for (let i = 0; i < totalRowCount; i++) {
let rowData = [];
createDataSet.forEach((columnData) => {
rowData.push(columnData[i]);
});
rows.push(rowData);
}
return rows;
}