Bug 42036

Summary: Add diff support to REPORTS action logs
Product: Koha Reporter: Martin Renvoize (ashimema) <martin.renvoize>
Component: Transaction logsAssignee: Bugs List <koha-bugs>
Status: NEW --- QA Contact: Testopia <testopia>
Severity: enhancement    
Priority: P5 - low    
Version: Main   
Hardware: All   
OS: All   
GIT URL: Initiative type: ---
Sponsorship status: --- Comma delimited list of Sponsors:
Crowdfunding goal: 0 Patch complexity: ---
Documentation contact: Documentation submission:
Text to go in the release notes:
Version(s) released in:
Circulation function:
Bug Depends on:    
Bug Blocks: 37940    

Description Martin Renvoize (ashimema) 2026-03-09 15:37:15 UTC
The action logging for saved reports does not pass the $original parameter to logaction(), so no structured diff is generated in the action_logs.diff column. Currently log entries store the report name and SQL concatenated as a plain string.

Affected calls:
- reports/guided_reports.pl MODIFY (~line 250):
  logaction( "REPORTS", "MODIFY", $id, "$reportname | $sql" )
  (no $original; only post-change state captured as a string)

- reports/guided_reports.pl ADD (~line 594):
  logaction( "REPORTS", "ADD", $id, "$name | $sql" )

- C4/Reports/Guided.pm DELETE (~line 798):
  logaction( "REPORTS", "DELETE", $id, $data->report_name . " | " . $data->savedsql )

This bug covers updating these calls to pass structured hashrefs (e.g. { report_name => ..., savedsql => ... }) as $infos and, for MODIFY, the pre-change report data as $original, enabling proper before/after diff display in the action log viewer.