Hi to all,

I have a problem with creating marc21 records with module MARC::Record
I create marc records from reading a text file, but the module doesn't set a correct lenght in the leader. So same subfields are cutted and I loose data inside subfiels and inside indicator.

An example of problematic record:
 DB<10> x $record
0  MARC::Record=HASH(0x53904f8)
   '_fields' => ARRAY(0x5471fa8)
      0  MARC::Field=HASH(0x54694b8)
         '_data' => 328
         '_is_control_field' => 1
         '_tag' => 001
         '_warnings' => ARRAY(0x53bb8d8)
              empty array
      1  MARC::Field=HASH(0x545ea10)
         '_data' => 'IT-RoAPU'
         '_is_control_field' => 1
         '_tag' => 003
         '_warnings' => ARRAY(0x545df00)
              empty array
      2  MARC::Field=HASH(0x5460d78)
         '_data' => 20130929162908.0
         '_is_control_field' => 1
         '_tag' => 005
         '_warnings' => ARRAY(0x592ee28)
              empty array
[...]
     15  MARC::Field=HASH(0x546b1a8)
         '_ind1' => 0
         '_ind2' => 0
         '_is_control_field' => 0
         '_subfields' => ARRAY(0x541c940)
            0  'a'
            1  'Biblia.'
            2  'p'
            3  'V.T.'
            4  'p'
            5  'Qohélet'
            6  'x'
            7  'Commenti.'
            8  9
            9  171552
         '_tag' => 630
         '_warnings' => ARRAY(0x5465538)
              empty array
      16  MARC::Field=HASH(0x5465a18)
         '_ind1' => ' '
         '_ind2' => ' '
         '_is_control_field' => 0
         '_subfields' => ARRAY(0x5466cd0)
            0  'a'
            1  'Biblia.'
            2  'p'
            3  'V.T.'
            4  'p'
            5  'Qohélet.'
            6  'l'
            7  'Inglese.'
            8  'f'
            9  1988.
            10  9
            11
         '_tag' => 240
         '_warnings' => ARRAY(0x5477168)
              empty array
      17  MARC::Field=HASH(0x5462fa8)
         '_ind1' => ' '
         '_ind2' => ' '
         '_is_control_field' => 0
         '_subfields' => ARRAY(0x541eb38)
            0  'a'
            1  'IT-RoAP'
         '_tag' => 850
         '_warnings' => ARRAY(0x5931948)
              empty array
      18  MARC::Field=HASH(0x5469788)
         '_ind1' => ' '
         '_ind2' => ' '
         '_is_control_field' => 0
         '_subfields' => ARRAY(0x5472170)
            0  'c'
            1  32
         '_tag' => 999
         '_warnings' => ARRAY(0x54693f8)
              empty array

   '_leader' => '00859nam a2200265 i 4500'
   '_warnings' => ARRAY(0x53682b0)
0 'Invalid record length in record 324: Leader says 00859 bytes but it\'s actually 861' 1 'field does not end in end of field character in tag 630 in record 324' 2 'field does not end in end of field character in tag 240 in record 324' 3 "Invalid indicators \"\c^02\" forced to blanks in record 324 for tag 240\cJ" 4 'field does not end in end of field character in tag 850 in record 324' 5 "Invalid indicators \"3\c^ \" forced to blanks in record 324 for tag 850\cJ" 6 'field does not end in end of field character in tag 999 in record 324' 7 "Invalid indicators \"U\c^ \" forced to blanks in record 324 for tag 999\cJ"

In fact indicator of tag 240 are wrong (the correct values are '02');






--
Dr. Zeno Tajoli
Dipartimento Gestione delle Informazioni e della Conoscenza
[email protected]
fax +39 02 2135520
CINECA - Sede operativa di Segrate
_______________________________________________
Koha-devel mailing list
[email protected]
http://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel
website : http://www.koha-community.org/
git : http://git.koha-community.org/
bugs : http://bugs.koha-community.org/

Reply via email to