Bugzilla – Attachment 70002 Details for
Bug 18201
Export data -Fix "Remove non-local items" option and add "Removes non-local records" option for existing functionality
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 18201 - Export data -Fix "Remove non-local items" option and add "Removes non-local records" option for existing functionality
Bug-18201---Export-data--Fix-Remove-non-local-item.patch (text/plain), 5.36 KB, created by
Kyle M Hall (khall)
on 2017-12-21 11:41:10 UTC
(
hide
)
Description:
Bug 18201 - Export data -Fix "Remove non-local items" option and add "Removes non-local records" option for existing functionality
Filename:
MIME Type:
Creator:
Kyle M Hall (khall)
Created:
2017-12-21 11:41:10 UTC
Size:
5.36 KB
patch
obsolete
>From 4b455efe2776f573a2c37b97aed94d190c13d8aa Mon Sep 17 00:00:00 2001 >From: Nick Clemens <nick@bywatersolutions.com> >Date: Thu, 13 Apr 2017 10:21:50 -0400 >Subject: [PATCH] Bug 18201 - Export data -Fix "Remove non-local items" option > and add "Removes non-local records" option for existing functionality > >It turns out the modules had the option expected built in, we just didn't call >it. This patch set expands the options for passing to the export. > >To test: >1 - Go to Tools->Export data >2 - Perform an export and check 'Remove non-local items' >3 - Note that file contains only 'local' records, but includes all items >on those records >4 - Apply patch >5 - Note Tools->Export data has a new option to remove records not owned >by logged in branch >6 - Export as before checking records option, file should be as before >7 - Now check 'Remove items not owned by logged in branch' >8 - File should now only have local items (may have empty records) >9 - Check both boxes and recieve only 'local' records and items > >Signed-off-by: Scott Kehoe <scott@masslibsystem.org> > >Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> >--- > Koha/Exporter/Record.pm | 7 ++++--- > koha-tmpl/intranet-tmpl/prog/en/modules/tools/export.tt | 6 +++--- > tools/export.pl | 8 ++++---- > 3 files changed, 11 insertions(+), 10 deletions(-) > >diff --git a/Koha/Exporter/Record.pm b/Koha/Exporter/Record.pm >index f9d62df..311f88d 100644 >--- a/Koha/Exporter/Record.pm >+++ b/Koha/Exporter/Record.pm >@@ -63,7 +63,7 @@ sub _get_biblio_for_export { > my $biblionumber = $params->{biblionumber}; > my $itemnumbers = $params->{itemnumbers}; > my $export_items = $params->{export_items} // 1; >- my $only_export_items_for_branch = $params->{only_export_items_for_branch}; >+ my $only_export_items_for_branches = $params->{only_export_items_for_branches}; > > my $record = eval { C4::Biblio::GetMarcBiblio({ biblionumber => $biblionumber }); }; > >@@ -71,12 +71,13 @@ sub _get_biblio_for_export { > > if ($export_items) { > C4::Biblio::EmbedItemsInMarcBiblio( $record, $biblionumber, $itemnumbers ); >- if ($only_export_items_for_branch) { >+ if ($only_export_items_for_branches && @$only_export_items_for_branches) { >+ my %export_items_for_branches = map { $_ => 1 } @$only_export_items_for_branches; > my ( $homebranchfield, $homebranchsubfield ) = GetMarcFromKohaField( 'items.homebranch', '' ); # Should be GetFrameworkCode( $biblionumber )? > > for my $itemfield ( $record->field($homebranchfield) ) { > my $homebranch = $itemfield->subfield($homebranchsubfield); >- if ( $only_export_items_for_branch ne $homebranch ) { >+ unless ( $export_items_for_branches{$homebranch} ) { > $record->delete_field($itemfield); > } > } >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/export.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/export.tt >index 36fe142..daee49b 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/export.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/export.tt >@@ -71,7 +71,7 @@ > </li> > > <li> >- <label>Library: </label> >+ <label>With items owned by the following libraries: </label> > [% INCLUDE 'branch-selector.inc' branches = libraries %] > </li> > </ol> >@@ -121,8 +121,8 @@ > <input id="dont_export_item" type="checkbox" name="dont_export_item" /> > </li> > <li> >- <label for="strip_nonlocal_items">Remove non-local items:</label> >- <input id="strip_nonlocal_items" type="checkbox" name="strip_nonlocal_items" /> >+ <label for="strip_items_not_from_libraries">Remove items not owned by selected libraries:</label> >+ <input id="strip_items_not_from_libraries" type="checkbox" name="strip_items_not_from_libraries" /> > </li> > <li> > <label for="export_remove_fields">Don't export fields:</label> >diff --git a/tools/export.pl b/tools/export.pl >index 72b18c4..0704b57 100755 >--- a/tools/export.pl >+++ b/tools/export.pl >@@ -87,13 +87,12 @@ if ( $op eq "export" ) { > my $export_remove_fields = $query->param("export_remove_fields") || q||; > my @biblionumbers = $query->multi_param("biblionumbers"); > my @itemnumbers = $query->multi_param("itemnumbers"); >- my $strip_nonlocal_items = $query->param('strip_nonlocal_items'); >+ my $strip_items_not_from_libraries = $query->param('strip_items_not_from_libraries'); > my @sql_params; > my $sql_query; > >- my $libraries = $strip_nonlocal_items >- ? [ Koha::Libraries->find(C4::Context->userenv->{branch})->unblessed ] >- : Koha::Libraries->search_filtered->unblessed; >+ my $libraries = Koha::Libraries->search_filtered->unblessed; >+ my $only_export_items_for_branches = $strip_items_not_from_libraries ? \@branch : undef; > my @branchcodes; > for my $branchcode ( @branch ) { > if ( grep { $_->{branchcode} eq $branchcode } @$libraries ) { >@@ -209,6 +208,7 @@ if ( $op eq "export" ) { > dont_export_fields => $export_remove_fields, > csv_profile_id => $csv_profile_id, > export_items => (not $dont_export_items), >+ only_export_items_for_branches => $only_export_items_for_branches, > } > ); > } >-- >2.10.2
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 18201
:
62149
|
62152
|
66412
|
67596
|
67597
|
68499
|
68500
| 70002 |
70003
|
70058