## Reproduction ## This is an oversimplification of a full patron card setup used in production. 1. Create a batch with 1 patron 2. Create a layout and set the name "Print card number as barcode" "Barcode type:" to "Code 39" 3. Create a card template without filling anything 4. Export the batch using the layout and template 5. You should have a white page with a barcode This show that this setup isn't completely bogus (although Code 39 is the only type working) 6. Export the batch 7. You should have a white page with a barcode And no errors in the relevant log file 8. Layout: set "Barcode type:" to Industrial2of5 9. Export the batch 10. You should have a white page with no barcode And errors in the relevant log file "Invalid Characters" ## Going further ## COOP2of5 fails also with the same error TODO: Fix at the same time or open another bug
## Reproduction ## This is an oversimplification of a full patron card setup used in production. 1. Create a batch with 1 patron 2. Create a layout and set the name "Print card number as barcode" "Barcode type:" to "Code 39" 3. Create a card template without filling anything 4. Export the batch using the layout and template 5. You should have a white page with a barcode And no errors in the relevant log file This show that this setup isn't completely bogus (although Code 39 is the only type working) 6. Layout: set "Barcode type:" to Industrial2of5 7. Export the batch 8. You should have a white page with no barcode And errors in the relevant log file "Invalid Characters" ## going further ## COOP2of5 fails also with the same error TODO: Fix at the same time or open another bug
I looked at http://manpages.org/pdfreusebarcode/3
Thanks Fridolin :)
Created attachment 70913 [details] [review] Bug 20084: fix Industrial2of5 and COOP2of5 patron card layouts == Test plan == This is an oversimplification of a full patron card setup used in production. 1. Create a batch with 1 patron 2. Create a layout and set the name "Print card number as barcode" "Barcode type:" to "Code 39" 3. Create a card template without filling anything 4. Export the batch using the layout and template 5. You should have a white page with a barcode And no errors in the relevant log file This show that this setup isn't completely bogus (although Code 39 is the only type working...) 6. Layout: set "Barcode type:" to Industrial2of5 7. Export the batch 8. You should have a white page with no barcode And errors in the relevant log file "Invalid Characters" This is the bug. 9. Layout: set "Barcode type:" to COOP2of5 10. Export the batch 11. You should have a white page with no barcode And errors in the relevant log file "Invalid Characters" This is the bug. 12. Apply this patch 13. Retry with both non-working patches 1. You should have a white page with a barcode 2. And no errors in the relevant log file
== Going further, not confirmed or not fixed here == Someone interested might want to check issues with 2 other types. 1. "Code 39 + Modulo10" doesn't seem to work Although "Code 39" and "Code 39 + Modulo43" work. Might be my test setup. 2. EAN13 barcodes doesn't seem to work. C4::Patroncards::Patroncard->draw_barcode() has an if-elsif for all types but EAN13. C4/Labels/Label.pm has an elsif for EAN13 This is suspicious! I tried to the copy it to Patroncard but got an Invalid Length error. With the quick solution falling and having no idea what was I doing, Ctrl-Z was spammed and these regretful words were written.
Created attachment 70914 [details] [review] Bug 20084: fix Industrial2of5 and COOP2of5 patron card layouts == Test plan == This is an oversimplification of a full patron card setup used in production. 1. Create a batch with 1 patron 2. Create a layout and set the name "Print card number as barcode" "Barcode type:" to "Code 39" 3. Create a card template without filling anything 4. Export the batch using the layout and template 5. You should have a white page with a barcode And no errors in the relevant log file This show that this setup isn't completely bogus (although Code 39 is the only type working...) 6. Layout: set "Barcode type:" to Industrial2of5 7. Export the batch 8. You should have a white page with no barcode And errors in the relevant log file "Invalid Characters" This is the bug. 9. Layout: set "Barcode type:" to COOP2of5 10. Export the batch 11. You should have a white page with no barcode And errors in the relevant log file "Invalid Characters" This is the bug. 12. Apply this patch 13. Retry with both non-working patches 1. You should have a white page with a barcode 2. And no errors in the relevant log file
Fixed quotes not needed anymore "*$params{barcode_data}" → $params{barcode_data}
Created attachment 76760 [details] [review] Bug 20084: Fix Industrial2of5 and COOP2of5 patron card layouts == Test plan == This is an oversimplification of a full patron card setup used in production. 1. Create a batch with 1 patron 2. Create a layout and set the name "Print card number as barcode" "Barcode type:" to "Code 39" 3. Create a card template without filling anything 4. Export the batch using the layout and template 5. You should have a white page with a barcode And no errors in the relevant log file This show that this setup isn't completely bogus (although Code 39 is the only type working...) 6. Layout: set "Barcode type:" to Industrial2of5 7. Export the batch 8. You should have a white page with no barcode And errors in the relevant log file "Invalid Characters" This is the bug. 9. Layout: set "Barcode type:" to COOP2of5 10. Export the batch 11. You should have a white page with no barcode And errors in the relevant log file "Invalid Characters" This is the bug. 12. Apply this patch 13. Retry with both non-working patches 1. You should have a white page with a barcode 2. And no errors in the relevant log file Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Updating severity too - not being able to print is not good.
Created attachment 76883 [details] [review] Bug 20084: Fix Industrial2of5 and COOP2of5 patron card layouts == Test plan == This is an oversimplification of a full patron card setup used in production. 1. Create a batch with 1 patron 2. Create a layout and set the name "Print card number as barcode" "Barcode type:" to "Code 39" 3. Create a card template without filling anything 4. Export the batch using the layout and template 5. You should have a white page with a barcode And no errors in the relevant log file This show that this setup isn't completely bogus (although Code 39 is the only type working...) 6. Layout: set "Barcode type:" to Industrial2of5 7. Export the batch 8. You should have a white page with no barcode And errors in the relevant log file "Invalid Characters" This is the bug. 9. Layout: set "Barcode type:" to COOP2of5 10. Export the batch 11. You should have a white page with no barcode And errors in the relevant log file "Invalid Characters" This is the bug. 12. Apply this patch 13. Retry with both non-working patches 1. You should have a white page with a barcode 2. And no errors in the relevant log file Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Fairly trivial fix, I can't find any regressions and the QA scripts pass.. i'd love to see accompanying tests, but that can wait as we're in C4. Passing QA.
Awesome work all! Pushed to master for 18.11
Pushed to 18.05.x for 18.05.02
Pushed to 17.11.x, will be in 17.11.08
Code 39 + Modulo43 is still not working for me in 16.11 and 17.11. Could someone confirm?
Filed a new bug 21123.
(In reply to Katrin Fischer from comment #15) > Code 39 + Modulo43 is still not working for me in 16.11 and 17.11. Could > someone confirm? Tried the test plan with "Code 39 + Modulo43" and it doesn't work :( Nor Modulo 10 but that was already the case before. Either I got confused when trying "Code 39 + Modulo43" or something else happened.
I choose no to push to 17.05.x Continues on Bug 21123.