Bug 33050

Summary: Allow to specify quote char in runreport.pl
Product: Koha Reporter: Fridolin Somers <fridolin.somers>
Component: Command-line UtilitiesAssignee: Fridolin Somers <fridolin.somers>
Status: RESOLVED FIXED QA Contact: Katrin Fischer <katrin.fischer>
Severity: enhancement    
Priority: P5 - low CC: caroline.cyr-la-rose, pedro.amorim, robin, tomascohen
Version: Main   
Hardware: All   
OS: All   
See Also: https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=32012
Change sponsored?: --- Patch complexity: Trivial patch
Documentation contact: Caroline Cyr La Rose Documentation submission: https://gitlab.com/koha-community/koha-manual/-/merge_requests/795
Text to go in the release notes:
Version(s) released in:
23.11.00,23.05.06
Circulation function:
Bug Depends on: 33285    
Bug Blocks:    
Attachments: Bug 33050: More args for misc/cronjobs/runreport.pl
Bug 33050: More args for misc/cronjobs/runreport.pl
Bug 33050: Allow to specify quote char in runreport.pl
Bug 33050: Allow to specify quote char in runreport.pl
Bug 33050: Allow to specify quote char in runreport.pl
Bug 33050: Perltidy

Description Fridolin Somers 2023-02-23 06:19:21 UTC
Add to script misc/cronjobs/runreport.pl args for CSV : separator and quote
Comment 1 Fridolin Somers 2023-02-23 06:25:07 UTC
cf https://metacpan.org/pod/Text::CSV#new
Comment 2 Fridolin Somers 2023-02-23 06:43:07 UTC
Created attachment 147187 [details] [review]
Bug 33050: More args for misc/cronjobs/runreport.pl

Add to script misc/cronjobs/runreport.pl args for CSV :
  * separator character
  * quote character
  * no quote (by default double quote)

See perl doc https://metacpan.org/pod/Text::CSV#new

Test plan :
Play with each arg and compare results of runreport.pl
Comment 3 Fridolin Somers 2023-02-23 06:57:41 UTC
Created attachment 147188 [details] [review]
Bug 33050: More args for misc/cronjobs/runreport.pl

Add to script misc/cronjobs/runreport.pl args for CSV :
  * separator character
  * quote character

See perl doc https://metacpan.org/pod/Text::CSV#new

Test plan :
Play with each arg and compare results of runreport.pl
Comment 4 Fridolin Somers 2023-03-31 20:25:40 UTC
I will change this to deal only with quote once Bug 33285 is pushed
Comment 5 Fridolin Somers 2023-06-21 08:23:48 UTC
Created attachment 152499 [details] [review]
Bug 33050: Allow to specify quote char in runreport.pl

Add to script misc/cronjobs/runreport.pl quote char arg (only for CSV).
See perl doc https://metacpan.org/pod/Text::CSV#new

This patch also adds missing '--separator' in POD.

Test plan :
1 - Write a SQL report
2 - perl misc/cronjobs/runreport.pl --format csv 1 (or correct report number)
3 - Note you get double quotes
4 - Apply patch
5 - Repeat #2 - no change
6 - perl misc/cronjobs/runreport.pl --format csv --quote "'" 1
7 - Now it is single quote delimited
8 - perl misc/cronjobs/runreport.pl --format tsv --separator "'" 1
9 - Error is reported, you cannot set quote unless csv
10 - Try empty string as quote
Comment 6 Fridolin Somers 2023-06-21 08:24:56 UTC
Patch revisited and better test plan
Comment 7 David Nind 2023-09-24 06:20:20 UTC
Created attachment 156133 [details] [review]
Bug 33050: Allow to specify quote char in runreport.pl

Add to script misc/cronjobs/runreport.pl quote char arg (only for CSV).
See perl doc https://metacpan.org/pod/Text::CSV#new

This patch also adds missing '--separator' in POD.

Test plan :
1 - Write a SQL report
2 - perl misc/cronjobs/runreport.pl --format csv 1 (or correct report number)
3 - Note you get double quotes
4 - Apply patch
5 - Repeat #2 - no change
6 - perl misc/cronjobs/runreport.pl --format csv --quote "'" 1
7 - Now it is single quote delimited
8 - perl misc/cronjobs/runreport.pl --format tsv --separator "'" 1
9 - Error is reported, you cannot set quote unless csv
10 - Try empty string as quote

Signed-off-by: David Nind <david@davidnind.com>
Comment 8 Katrin Fischer 2023-11-01 18:41:59 UTC
Created attachment 158207 [details] [review]
Bug 33050: Allow to specify quote char in runreport.pl

Add to script misc/cronjobs/runreport.pl quote char arg (only for CSV).
See perl doc https://metacpan.org/pod/Text::CSV#new

This patch also adds missing '--separator' in POD.

Test plan :
1 - Write a SQL report
2 - perl misc/cronjobs/runreport.pl --format csv 1 (or correct report number)
3 - Note you get double quotes
4 - Apply patch
5 - Repeat #2 - no change
6 - perl misc/cronjobs/runreport.pl --format csv --quote "'" 1
7 - Now it is single quote delimited
8 - perl misc/cronjobs/runreport.pl --format tsv --separator "'" 1
9 - Error is reported, you cannot set quote unless csv
10 - Try empty string as quote

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Comment 9 Katrin Fischer 2023-11-01 18:42:01 UTC
Created attachment 158208 [details] [review]
Bug 33050: Perltidy

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Comment 10 Tomás Cohen Arazi (tcohen) 2023-11-08 13:06:47 UTC
Comment on attachment 158208 [details] [review]
Bug 33050: Perltidy

Skipping commit that tidies all the file.
Comment 11 Tomás Cohen Arazi (tcohen) 2023-11-08 14:42:32 UTC
Pushed to master for 23.11.

Nice work everyone, thanks!
Comment 12 Fridolin Somers 2023-11-10 21:07:51 UTC
Small enhancement, I choose to backport.

Pushed to 23.05.x for 23.05.06