I was just looking at this behavior.. and I noticed this error message in the logs.
2022-02-16 15:11:47 virt-egapp2 open-ils.acq: [ERR :17550:Order.pm:4263:1645045643191706] ACQ lineitem update failed to produce a matching marc att
ribute for upc => 4422333332
So the step to create the line item marc with the new UPC info fails...
I wonder if it has anything to do with the acq.lineitem_marc_attr_definition for UPC that says that the indicater 1 needs to be 1.
INSERT INTO acq.lineitem_marc_attr_definition ( code, description, xpath, remove ) VALUES ('upc', 'UPC', '//*[@tag="024" and @ind1="1"]/*[@code="a"]', $r$(?:-|\s.+$)$r$);
But the code to add in the UPC field doesn't set that?
I was just looking at this behavior.. and I noticed this error message in the logs.
2022-02-16 15:11:47 virt-egapp2 open-ils.acq: [ERR :17550: Order.pm: 4263:1645045643 191706] ACQ lineitem update failed to produce a matching marc att
ribute for upc => 4422333332
So the step to create the line item marc with the new UPC info fails...
I wonder if it has anything to do with the acq.lineitem_ marc_attr_ definition for UPC that says that the indicater 1 needs to be 1.
INSERT INTO acq.lineitem_ marc_attr_ definition ( code, description, xpath, remove ) VALUES ('upc', 'UPC', '//*[@tag="024" and @ind1=" 1"]/*[@ code="a" ]', $r$(?:-|\s.+$)$r$);
But the code to add in the UPC field doesn't set that?
https:/ /git.evergreen- ils.org/ ?p=Evergreen. git;a=blob; f=Open- ILS/src/ perlmods/ lib/OpenILS/ Application/ Acq/Order. pm;hb=3db804784 4d9cb5cb8d78fba c47d72a84808bfd a#l4245
4238 my %tags = (
4239 isbn => '020',
4240 issn => '022',
4241 upc => '024'
4242 );
4243
4244 my $marc_field = MARC::Field->new(
4245 $tags{$attr_name}, '', '','a' => $attr_value);
So the newly added UPC never gets found in the lineitem marc, and the change is rolled back?