| Summary: | Patron statistics report should treat sort 1 and sort 2 the same | ||
|---|---|---|---|
| Product: | Koha | Reporter: | Katrin Fischer <katrin.fischer> |
| Component: | Reports | Assignee: | 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: | --- | 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: | 33452 | ||
| Bug Blocks: | |||
For some unknown reason we treat the sort 1 and sort 2 search fields in the patron statistics report differently: $req = $dbh->prepare("SELECT authorised_value,lib FROM authorised_values WHERE category='Bsort1' ORDER BY lib"); $req->execute; $template->param( SORT1_LOOP => $req->fetchall_arrayref({})); $req = $dbh->prepare("SELECT DISTINCTROW sort2 AS value FROM borrowers WHERE sort2 IS NOT NULL AND sort2 <> '' ORDER BY sort2 LIMIT 200"); # More than 200 items in a dropdown is not going to be useful anyway, and w/ 50,000 patrons we can destroy DB performance. $req->execute; $template->param( SORT2_LOOP => $req->fetchall_arrayref({})); For sort 1 we check for the authorised value, for the sort 2 we check for values from the database. For each we should check first if the field is linked to a database value and if not, we can create a list from the database.