Published 2025-10-16
Generator voor tussen-stacks waarvan de inhoud door een opgegeven xml-bestand bepaald wordt.


Zie test/xml/Export XMLtest14x7 2022-07-12 09.33.21.xml voor een voorbeeld van een valide xml bestand.
In het xml bestand staan links naar pdf bestanden, deze worden automatisch gedownload.
De folders waar de xml bestanden in opgeslagen zijn moeten voldoen aan het volgende patroon:
Export Horeca prijskaarten WK40-41 2022 BEVL 2022-09-01 11.33.48
Export Horeca prijskaarten WK40-41 2022 NLNL 2022-09-01 11.27.07
Hieruit kunnen voor het invul-formulier automatisch de week, jaar en land/taal velden worden gevuld.
Voor gedownloade media geldt:
Is een spreadsheet met de volgende inhoud:
Filiaalnummer Filiaalnaam Rit
2 HEMA AMSTERDAM-NIEUWENDIJK Vrijdag rit 1
3 HEMA ROTTERDAM-CENTRUM Vrijdag rit 1
4 HEMA NIJMEGEN-CENTRUM Vrijdag rit 1
5 HEMA GRONINGEN-CENTRUM Vrijdag rit 1
De ritten moeten in de sheet gesorteerd staan op dag + rit.
De output folder voor filiaal-specifieke stacks begint met stacks, en die voor niet-filiaal specifieke begint met print.
De bestandsnamen van de stacks zijn als volgt samengesteld:
STACK_2022_WK40_140x70_EZ_00_1234_0001_BE_VL_[ZH-TA]_amsterdam_kalverpassage.pdf
+--- +--- +----- +--+- +--- +--- +- +- +---- +-----------------------
| | | | | | | | | | |
| | | | | | | | | | |filiaalnaam
| | | | | | | | | |usergroup(s)
| | | | | | | | |taal
| | | | | | | |land
| | | | | | |filiaalnummer
| | | | | |aflevervolgorde
| | | | |afleverdag
| | | | enkelzijdig/dubbelzijdig
| | |formaat
| |week
|jaar
Indien een rittenlijst is opgegeven en het filiaal staat in de lijst, dan is aflevervolgorde het rij-nummer uit de rittenlijst spreadsheet.
Wanneer de vestiging niet in de lijst staat, dan is het nummer 0000 (de exacte volgorde kan dan niet worden bepaalt).
01 vrijdag
02 zaterdag
03 zondag
04 maandag
05 dinsdag
06 woensdag
07 donderdag
00 onbekend of niet opgegeven
De bestanden moeten op inslag gezet worden in de alfabetische volgorde van de bestandsnamen.
vergaren directory creation if not exists.get_it dependency.withWorkerQueue option to allow worker queueing.double.file_picker dependency.pkg_simple_runner changes.filiaalnummers to 5 digits (was 4), since noodpakketten have a 5-digit number that would interfere with sorting.GrizzlyIO from pkg_spreadsheet, text separators set from double-quote to escape so reading of cells with quotes does not throw anymore.async constructs.cleanLotnumber cleanup regex typo.UserGroup (ZH', 'TA', 'TY', 'Schiphol`) on coversheets.provider dependency.xml path.test parameter on HemaStackGeneratorWorker.MyWorker to HemaStackGeneratorWorker.flutter_pdf_stack_generator for 'normal' stacks.pkg_spreadsheet.tsv file.HemaText to HemaStackGeneratorText.pkg_pdflib.WorkOrderLine, isQuantityValid == false && duplicateStoreNumbers.isEmpty: Error.WorkOrderLine, isQuantityValid == false && duplicateStoreNumbers.isNotEmpty: Warning.WorkOrderLineExtension::doDownload now takes care of redirect html pages (from webshop).EZ or DZ in output stack filename.output_ to stacks_.pkg_pdflib with mergepdf caching.topvel for small cards.topvel layout.README.md.RittenlijstReader created and exported.pkg_local_services::SpreadsheetService.DZ to filenames.DZ detection).EZ, EZBL, EZZB, EZAB options.pkg_simple_runner:0.1.13.FR to TaalCodes enum.README.md).README.md.Lotnumber from xml in tsv info block.startWeek, eindWeek, jaar, land, taal fields.rittenlijst if present.rittenlijst).xlsx file (with colors).Formaat to opvraag log.Use media folder was selected.Rittenlijst parsing (optional).tsv).tmp.tsv opvraag overzicht.use media folder that bypasses media download and use cache media instead.AbortStatus from GetIt after an exception that prevented another run.png preview generator.plop library.media folder alongside the output folder (based on xml filename).xml filename (md5 hash)).xml filename.xml filename).finals due to new linter rules.WorkerProcess to MyWorker.l10n strings because none were hema specific.output folder.abort requests.pkg_simple_runner.pkg_pdflib.File::resolvedPath function for Windows.README.md file.msix config section to `pubspec.yaml'.