1 |
# |
# |
2 |
# get_sf($marc,'field'[,'subfield']) |
# marc_sf($marc,'field'[,'subfield']) |
3 |
# |
# |
4 |
# e.g. get_sf($row,'700','a') |
# e.g. marc_sf($row,'700','a') |
5 |
# |
# |
6 |
sub get_sf { |
sub marc_sf { |
7 |
my $marc = shift @_; |
my $marc = shift @_ || die "marc_sf: needs record"; |
8 |
my $f = shift @_; |
my $f = shift @_ || die "marc_sf: needs field name"; |
9 |
my $s = shift @_; |
my $s = shift @_; |
10 |
|
|
11 |
my $i = shift @_ || 0; |
my $i = shift @_ || 0; |
12 |
|
|
13 |
my @out = $marc->getvalue({record=>$marc->marc_count(),field=>$f,subfield=>$s,delimiter=>" "}); |
my @out; |
14 |
|
if ($s) { |
15 |
|
@out = $marc->subfield($f,$s); |
16 |
|
} else { |
17 |
|
@out = $marc->field($f)->as_string() if ($marc->field($f)); |
18 |
|
} |
19 |
|
|
20 |
return $out[$i] if (@out && $out[$i]); |
return $out[$i] if (@out && $out[$i]); |
21 |
} |
} |
22 |
|
|