[Koha-devel] Module MARC::Record doesn't set well lenght in leader.

Zeno Tajoli z.tajoli at cineca.it
Sun Sep 29 22:41:46 CEST 2013


Hi to all,

[sorry the previous mail is incomplete]

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  17155
          '_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');
the real value of 240 $9 is '171553', not '17155'.

The real value of 850 $a is 'IT-RoAPU', not 'IT-RoAP'

The real value of 999 $c is '328', not '32'

As I see the problem start for word 'Qohélet' in the tag 240 and 630.

I don't know why the leght is wrong and I don't have idea how to fix it.

Chees
Zeno Tajoli


-- 
Dr. Zeno Tajoli
Dipartimento Gestione delle Informazioni e della Conoscenza
z.tajoli at cineca.it
fax +39 02 2135520
CINECA - Sede operativa di Segrate


More information about the Koha-devel mailing list