Merge branch 'master' of git.esilibrary.com:migration-tools
authorRogan Hamby <rhamby@esilibrary.com>
Fri, 15 Dec 2017 18:34:48 +0000 (13:34 -0500)
committerRogan Hamby <rhamby@esilibrary.com>
Fri, 15 Dec 2017 18:34:48 +0000 (13:34 -0500)
sql/base/base.sql

index 6260f52..ed92afa 100644 (file)
@@ -2554,6 +2554,21 @@ CREATE OR REPLACE FUNCTION migration_tools.duplicate_template_but_change_delay (
     END;
 $$ LANGUAGE PLPGSQL STRICT VOLATILE;
 
+CREATE OR REPLACE FUNCTION migration_tools.get_marc_leader (TEXT) RETURNS TEXT AS $$
+    my ($marcxml) = @_;
+
+    use MARC::Record;
+    use MARC::File::XML;
+    use MARC::Field;
+
+    my $field;
+    eval {
+        my $marc = MARC::Record->new_from_xml($marcxml, 'UTF-8');
+        $field = $marc->leader();
+    };
+    return $field;
+$$ LANGUAGE PLPERLU STABLE;
+
 CREATE OR REPLACE FUNCTION migration_tools.get_marc_tag (TEXT, TEXT, TEXT, TEXT) RETURNS TEXT AS $$
     my ($marcxml, $tag, $subfield, $delimiter) = @_;