[Koha-patches] [biblibre-integration 07/19] Bug Fixing : GetMarcItem

Henri-Damien LAURENT henridamien.laurent at biblibre.com
Fri Aug 28 23:47:42 CEST 2009


Adding Item2Marc
Using  itemtag in order to add subfields to the correct field
---
 C4/Items.pm |   18 ++++++++++++------
 1 files changed, 12 insertions(+), 6 deletions(-)

diff --git a/C4/Items.pm b/C4/Items.pm
index 4d53d91..e8e0cef 100644
--- a/C4/Items.pm
+++ b/C4/Items.pm
@@ -46,6 +46,7 @@ BEGIN {
         AddItem
         AddItemBatchFromMarc
         ModItemFromMarc
+		Item2Marc
         ModItem
         ModDateLastSeen
         ModItemTransfer
@@ -1648,23 +1649,28 @@ sub GetMarcItem {
 
     # Tack on 'items.' prefix to column names so that TransformKohaToMarc will work.
     # Also, don't emit a subfield if the underlying field is blank.
+
+    
+    return Item2Marc($itemrecord,$biblionumber);
+
+}
+sub Item2Marc {
+	my ($itemrecord,$biblionumber)=@_;
     my $mungeditem = { 
         map {  
             defined($itemrecord->{$_}) && $itemrecord->{$_} ne '' ? ("items.$_" => $itemrecord->{$_}) : ()  
         } keys %{ $itemrecord } 
     };
     my $itemmarc = TransformKohaToMarc($mungeditem);
+    my ( $itemtag, $itemsubfield ) = GetMarcFromKohaField("items.itemnumber",GetFrameworkCode($biblionumber)||'');
 
     my $unlinked_item_subfields = _parse_unlinked_item_subfields_from_xml($mungeditem->{'items.more_subfields_xml'});
     if (defined $unlinked_item_subfields and $#$unlinked_item_subfields > -1) {
-        my @fields = $itemmarc->fields();
-        if ($#fields > -1) {
-            $fields[0]->add_subfields(@$unlinked_item_subfields);
+		foreach my $field ($itemmarc->field($itemtag)){
+            $field->add_subfields(@$unlinked_item_subfields);
         }
     }
-    
-    return $itemmarc;
-
+	return $itemmarc;
 }
 
 =head1 PRIVATE FUNCTIONS AND VARIABLES
-- 
1.6.0.4




More information about the Koha-patches mailing list