Hi,
I would like to produce an excel version of the BOM using Jobsets.
So I use the built-in “Generate BOM” from the jobset, and I would like to add an additional step to convert this CSV to XLSX.
I’ve found a neat project on Github that does the job: csv2xlsx
I try to add an “Execute Command” job after the generation of the CSV. However, it seems that the CSV file is not present when the Execute command is ran.
I have the feeling that the whole “Destination” group is ran into a temporary folder, and then all this folder is moved to the destination folder (or archived into a ZIP for archive outputs) when everything went well.
Is there a way to access the contents of this temporary folder during execution ?
So that we can build commands that build on top of each other.
My workaround, until a better solution is built into Kicad:
use several “destinations”, each one performs a single task. Each task is configured with paths from the current project so it can run properly.
Generate BOM XLSX is a “Execute command” with the following command: ${COMMON_LIB}/csv2xlsx.exe -t "${COMMON_LIB}/bom template.xlsx" --sf 1 -r 2 -o "BOM/${PROJECTNAME}_BOM.xlsx" "BOM/${PROJECTNAME}_BOM.csv"
Add BOM XLSX to Zip is a “Execute command” with the following command: powershell -executionpolicy bypass -File ${COMMON_LIB}/addtozip.ps1 -zipPath "${PROJECTNAME}_PCBA.zip" -fileToAdd "BOM/${PROJECTNAME}_BOM.xlsx"
Remove BOM folder is: cmd /C "rmdir /S /Q BOM"
and, I’m not allowed to attach my powershell script “addtozip.ps1” as a new user, but it is a simple script that will add my xlsx file to a previously created zip file already containing fabrication layers PDF + position file.
This is unfortunately not cross-platform… Not so clean but good enough for me today.