X-Git-Url: http://git.equinoxoli.org/?p=migration-tools.git;a=blobdiff_plain;f=mig-bin%2Fmig-stagebibs;h=e00c1d3785a7f870ffc4bf5b001aabc02507bfb3;hp=46244ec62d4fac267c8a757037af70671151d374;hb=8a79f8b63c0fa86175c05b4b3b637f01d3032cb8;hpb=5606c0a7d3d96f03864fc644261536cba07992af diff --git a/mig-bin/mig-stagebibs b/mig-bin/mig-stagebibs index 46244ec..e00c1d3 100755 --- a/mig-bin/mig-stagebibs +++ b/mig-bin/mig-stagebibs @@ -3,19 +3,27 @@ ############################################################################### =pod -=item B --file foo.xml +=item B --file foo.mrc.xml Takes a load of bibs from a UTF-8 MARC XML file and loads them into mig staging -table of bibio_record_entry. This is done with no checking of file validity +table of bibio_record_entry_legacy. This is done with no checking of file validity so records should be checked before hand and cleaned. -Takes one optional arguments: +Takes three optional arguments: --source Sets an x_source value on the staging table to the one supplied instead of the default of none. +--auth foo.mrc.xml + +This will load bibs into the authority_record_entry_legacy. + +--serial foo.mrc.xml + +This will load bibs into the serial_record_entry_legacy. + =back =cut @@ -48,6 +56,8 @@ my $next_arg_is_file = 0; my $append = 0; my $next_arg_is_source = 0; my $next_arg_is_stage = 0; +my $next_arg_is_base_table = 0; +my $next_arg_is_stage_table = 0; my $base_table = 'biblio_record_entry'; my $stage_table = 'biblio_record_entry_legacy'; my $source = 'default'; @@ -59,6 +69,14 @@ my $batch; binmode STDIN, ':utf8'; foreach my $arg (@ARGV) { + if ($arg eq '--auth') { + $base_table = 'authority_record_entry'; + $stage_table = 'authority_record_entry_legacy'; + } + if ($arg eq '--serial') { + $base_table = 'serial_record_entry'; + $stage_table = 'serial_record_entry_legacy'; + } if ($arg eq '--file') { $next_arg_is_file = 1; next; @@ -77,6 +95,24 @@ foreach my $arg (@ARGV) { $next_arg_is_source = 0; next; } + if ($arg eq '--base-table') { + $next_arg_is_base_table = 1; + next; + } + if ($next_arg_is_base_table) { + $base_table = $arg; + $next_arg_is_base_table = 0; + next; + } + if ($arg eq '--stage-table') { + $next_arg_is_stage_table = 1; + next; + } + if ($next_arg_is_stage_table) { + $stage_table = $arg; + $next_arg_is_stage_table = 0; + next; + } } my $bre_test = check_for_table($dbh,$base_table);