10 |
my $i = shift || 0; # isis repeatable number |
my $i = shift || 0; # isis repeatable number |
11 |
my $codepage = shift || die "parse_format must be called with codepage!"; |
my $codepage = shift || die "parse_format must be called with codepage!"; |
12 |
if ($type eq "isis") { |
if ($type eq "isis") { |
13 |
return parse_iso_format($format,$row,$i,$codepage,'isis_sf'); |
return parse_iso_format($format,$row,$i,$codepage,'hash_sf'); |
14 |
} elsif ($type eq "excel") { |
} elsif ($type eq "excel") { |
15 |
return parse_excel_format($format,$row,$i,$codepage); |
return parse_excel_format($format,$row,$i,$codepage); |
16 |
} elsif ($type eq "marc") { |
} elsif ($type eq "marc") { |
17 |
return parse_iso_format($format,$row,$i,$codepage,'marc_sf'); |
return parse_iso_format($format,$row,$i,$codepage,'marc_sf'); |
18 |
} elsif ($type eq "feed") { |
} elsif ($type eq "feed") { |
19 |
return parse_feed_format($format,$row,$i,$codepage); |
return parse_feed_format($format,$row,$i,$codepage); |
20 |
|
} elsif ($type eq "dbf") { |
21 |
|
return parse_iso_format($format,$row,$i,$codepage,'hash_sf'); |
22 |
|
} else { |
23 |
|
confess "FATAL: unknown type '$type'"; |
24 |
} |
} |
25 |
} |
} |
26 |
|
|
77 |
# print STDERR "\n#### $f"; |
# print STDERR "\n#### $f"; |
78 |
# this is EBSCO special to support numeric subfield in |
# this is EBSCO special to support numeric subfield in |
79 |
# form of 856#3 |
# form of 856#3 |
80 |
if ($f =~ s/^(\d\d\d)#*(\w?)//) { |
if ($f =~ s/^(\d\d\d*)#*(\w?)//) { |
81 |
push @fmt,$1; |
push @fmt,$1; |
82 |
if ($2) { |
if ($2) { |
83 |
push @fmt,$2; |
push @fmt,$2; |