final updates
authorJames Fournie <jfournie@sitka.bclibraries.ca>
Tue, 6 Mar 2012 00:07:10 +0000 (16:07 -0800)
committerJames Fournie <jfournie@sitka.bclibraries.ca>
Tue, 6 Mar 2012 00:07:10 +0000 (16:07 -0800)
marc_import_overdrive/overdrive-import.pl
marc_import_overdrive/overdrive-ingest-db-func.sql

index 8759ba2..1ee3c59 100755 (executable)
@@ -127,7 +127,7 @@ PROCESS: while ( try { $rec = $batch->next } otherwise { $rec = -1 } ) {
         if($uri->subfield('z')){
             $caption = 'EBOOK' if ($uri->subfield('z') =~ /Book/);
             $uri->delete_subfield(code => 'z');
-            $uri->add_subfields('z' => 'Click to access online (library card required)');
+            $uri->add_subfields('y' => 'Click to access online (library card required)');
 
             next unless($url =~ m/($overdrive_prefix)/);
 
@@ -145,7 +145,7 @@ PROCESS: while ( try { $rec = $batch->next } otherwise { $rec = -1 } ) {
 
     # add some arbitrary stuff as prescribed by our cataloguer overlords
     $rec = adjust_leader($rec);
-    $rec = process_custom_fields($rec);
+    $rec = process_custom_fields($rec,$caption);
 
 # -----------------
 # END Overdrive - specific code
@@ -208,7 +208,7 @@ PROCESS: while ( try { $rec = $batch->next } otherwise { $rec = -1 } ) {
         my $req = $cstore->request("open-ils.cstore.direct.biblio.record_entry.retrieve",$id)->gather(1);
         if($req){
             if($req->tcn_value ne $tcn_value){
-                print STDERR "incoming record (id:$id/tcn:$tcn_value) does not match record (id:".$req->id."/tcn:".$rec->tcn_value.")!\n" if $verbose;
+                print STDERR "incoming record (id:$id/tcn:$tcn_value) does not match record (id:".$req->id."/tcn:".$req->tcn_value.")!\n" if $verbose;
                 if($overwritetcn){
                     
                 }
@@ -221,7 +221,7 @@ PROCESS: while ( try { $rec = $batch->next } otherwise { $rec = -1 } ) {
             }
         } else {
             print STDERR "importing new record (id:$id/tcn:$tcn_value)\n" if $verbose;
-                
+            $bib->id(); # clear the id so it's autogen'd    
             $cstore->request("open-ils.cstore.transaction.begin")->gather(1);
             $req = $cstore->request("open-ils.cstore.direct.biblio.record_entry.create",$bib)->gather(1);
             $cstore->request("open-ils.cstore.transaction.commit")->gather(1);
@@ -250,7 +250,6 @@ sub adjust_leader {
 sub process_custom_fields{
     my $rec = shift;
     my $caption = shift;
-   
     my @newfields;
 
     push @newfields, MARC::Field->new(
index c891615..632f296 100755 (executable)
@@ -48,7 +48,7 @@ CREATE OR REPLACE FUNCTION sitka.overdrive_bc_add_uri_field( TEXT, TEXT, TEXT, T
     my $field856 = MARC::Field->new(
             '856' => ('4', '0'),
             u => $url_prefix . $tcn,
-            z => $uri_caption,
+            y => $uri_caption,
             9 => $shortname
     );