removed extra KOHA_CONF line
[koha_fer] / misc / dumpmarc.pl
index cee3d48..b8fba0c 100755 (executable)
@@ -3,6 +3,12 @@
 
 
 use strict;
+BEGIN {
+    # find Koha's Perl modules
+    # test carefully before changing this
+    use FindBin;
+    eval { require "$FindBin::Bin/kohalib.pl" };
+}
 
 # Koha modules used
 use MARC::File::USMARC;
@@ -10,12 +16,13 @@ use MARC::Record;
 use MARC::Batch;
 
 use Getopt::Long;
-my ( $input_marc_file,$number) = ('',0);
+my ( $input_marc_file,$number,$nowarning) = ('',0);
 my $version;
 GetOptions(
     'file:s'    => \$input_marc_file,
     'n:s' => \$number,
-    'v' => \$version
+    'v' => \$version,
+    'w' => \$nowarning,
 );
 
 warn "NUM : $number\n";
@@ -26,6 +33,7 @@ parameters :
 \tv : this version/help screen
 \tfile /path/to/file/to/dump : the file to dump
 \tn : the number of the record to dump. If missing, all the file is dumped
+\tw : warning and strict off. If your dump fail, try -w option. It it works, then, the file is iso2709, but a buggy one !
 SAMPLE : ./dumpmarc.pl -file /home/paul/koha.dev/local/npl -n 1
 EOF
 ;
@@ -33,8 +41,8 @@ die;
 }
 
 my $batch = MARC::Batch->new( 'USMARC', $input_marc_file );
-$batch->warnings_off();
-$batch->strict_off();
+$batch->warnings_off() unless $nowarning;
+$batch->strict_off() unless $nowarning;
 my $i=1;
 while ( my $record = $batch->next() ) {
        print "\nNUMBER $i =>\n".$record->as_formatted() if ($i eq $number || $number eq 0);