32 lines
1.1 KiB
JavaScript
32 lines
1.1 KiB
JavaScript
const xlsx = require("xlsx");
|
|
|
|
function saveResultsToExcel(data, filename) {
|
|
const workbook = xlsx.utils.book_new(); // Create a new workbook
|
|
const worksheetData = [];
|
|
|
|
data.forEach(item => {
|
|
const courses = item.coursesResult.split('. ').filter(course => course.trim() !== '');
|
|
courses.forEach(course => {
|
|
worksheetData.push({
|
|
LinkNumber: item.LinkNumber,
|
|
StudentName: item.StudentName,
|
|
StudentID: item.StudentID,
|
|
IsCollapsed: item.IsCollapsed,
|
|
IsCollapsedKeuze: item.IsCollapsedKeuze,
|
|
IsCollapsedMain: item.IsCollapsedMain,
|
|
ContainsVZP: item.ContainsVZP,
|
|
ContainsVZPKeuze: item.ContainsVZPKeuze,
|
|
Course: course.trim(),
|
|
TotalStudiepunten: item.totalStudiepunten
|
|
});
|
|
});
|
|
});
|
|
|
|
const worksheet = xlsx.utils.json_to_sheet(worksheetData); // Convert data to worksheet
|
|
xlsx.utils.book_append_sheet(workbook, worksheet, "Results"); // Add worksheet to workbook
|
|
|
|
// Write workbook to file
|
|
xlsx.writeFile(workbook, filename);
|
|
}
|
|
|
|
module.exports = saveResultsToExcel; |