Created attachment 5333 [details] MARC test file Problem: Staged MARC import reports to have successfully imported items when no items were added. 1) Upload MARC file for staged MARC import, select 'always add' for items and no matching rule. If using the attached MARC file make sure you have an itemtype 'NORMAL' and no branch with brancode 'TEST' 2) Add records and items into catalog using 'manage staged MARC import'. ! The tool reports to have successfully added 1 record and 1 item. 3) Check record - no item was added. 4) Create branch with branchcode 'TEST' 5) Import again and check if item was added now.
Created attachment 5334 [details] screenshot
*** Bug 3529 has been marked as a duplicate of this bug. ***
This is still valid in master. In my test I had a record with 7 items, the first of which was invalid. No items were imported.
Created attachment 55330 [details] [review] Bug 6852: Preliminary test
(In reply to Owen Leonard from comment #3) > This is still valid in master. In my test I had a record with 7 items, the > first of which was invalid. No items were imported. This is not what I experienced. I tested one record with two items. One item had a wrong branchcode and was not imported. But the other item was imported.
Created attachment 55331 [details] [review] Bug 6852: Staged import reports wrong success for items If we import items that have a wrong branch code, the items will not be imported but manage-marc-import reports them as imported. (A wrong branch code probably occurs most, but other causes are possible too.) The underlying cause is that AddItem does not look at the error returned from _koha_new_item in Items.pm. This patch deals with that omission in the most economical way. It adjusts AddItem so that it returns undef if no item was added. In ImportBatch.pm I check if an item was added and adjust the totals accordingly instead of just always counting them. Note: Several scripts like additem.pl use AddItemFromMarc to call AddItem. They do not report an error, but fail silently. With this patch, these scripts get undef and will still fail silently. (No change.) Adding error checks around calls of AddItemFromMarc is outside the scope of this report. Here we are taking care of correct imported item numbers. Test plan: [1] Verify that additem.pl still works by adding a new item. [2] Run t/db_dependent/Items.t [3] Add a new branchcode, say XXX. [4] Pick a biblio record with a few items (n) and set one item to branch XXX. [5] Export this biblio with items to a MARC file. [6] Change the XXX item to the original branch and remove branch XXX. [7] Import the MARC file. Verify that one item was not imported and that the number of imported items reflects that (equals n-1).
Created attachment 55359 [details] [review] [SIGNED-OFF] Bug 6852: Staged import reports wrong success for items If we import items that have a wrong branch code, the items will not be imported but manage-marc-import reports them as imported. (A wrong branch code probably occurs most, but other causes are possible too.) The underlying cause is that AddItem does not look at the error returned from _koha_new_item in Items.pm. This patch deals with that omission in the most economical way. It adjusts AddItem so that it returns undef if no item was added. In ImportBatch.pm I check if an item was added and adjust the totals accordingly instead of just always counting them. Note: Several scripts like additem.pl use AddItemFromMarc to call AddItem. They do not report an error, but fail silently. With this patch, these scripts get undef and will still fail silently. (No change.) Adding error checks around calls of AddItemFromMarc is outside the scope of this report. Here we are taking care of correct imported item numbers. Test plan: [1] Verify that additem.pl still works by adding a new item. [2] Run t/db_dependent/Items.t [3] Add a new branchcode, say XXX. [4] Pick a biblio record with a few items (n) and set one item to branch XXX. [5] Export this biblio with items to a MARC file. [6] Change the XXX item to the original branch and remove branch XXX. [7] Import the MARC file. Verify that one item was not imported and that the number of imported items reflects that (equals n-1). Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Created attachment 55477 [details] [review] [PASSED QA] Bug 6852: Staged import reports wrong success for items If we import items that have a wrong branch code, the items will not be imported but manage-marc-import reports them as imported. (A wrong branch code probably occurs most, but other causes are possible too.) The underlying cause is that AddItem does not look at the error returned from _koha_new_item in Items.pm. This patch deals with that omission in the most economical way. It adjusts AddItem so that it returns undef if no item was added. In ImportBatch.pm I check if an item was added and adjust the totals accordingly instead of just always counting them. Note: Several scripts like additem.pl use AddItemFromMarc to call AddItem. They do not report an error, but fail silently. With this patch, these scripts get undef and will still fail silently. (No change.) Adding error checks around calls of AddItemFromMarc is outside the scope of this report. Here we are taking care of correct imported item numbers. Test plan: [1] Verify that additem.pl still works by adding a new item. [2] Run t/db_dependent/Items.t [3] Add a new branchcode, say XXX. [4] Pick a biblio record with a few items (n) and set one item to branch XXX. [5] Export this biblio with items to a MARC file. [6] Change the XXX item to the original branch and remove branch XXX. [7] Import the MARC file. Verify that one item was not imported and that the number of imported items reflects that (equals n-1). Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Pushed to master for 16.11, thanks Marcel!
Pushed in 16.05. Will be in 16.05.04.
Pushed to 3.22.x, will be in 3.22.11