132 |
|
|
133 |
my $m; |
my $m; |
134 |
|
|
135 |
foreach my $r ( @{ $rec->{ $args->{from} } } ) { |
our $from_rec = $rec->{ $args->{from} }; |
136 |
|
|
137 |
|
foreach my $r ( @$from_rec ) { |
138 |
|
|
139 |
my $i1 = $r->{i1} || ' '; |
my $i1 = $r->{i1} || ' '; |
140 |
my $i2 = $r->{i2} || ' '; |
my $i2 = $r->{i2} || ' '; |
145 |
|
|
146 |
warn "### r = ",dump( $r ),$/ if $debug; |
warn "### r = ",dump( $r ),$/ if $debug; |
147 |
|
|
148 |
my ( $from_mapping, $to_mapping, $from_count, $to_count ); |
my ( $from_mapping, $from_count, $to_count ); |
149 |
|
our $to_mapping; |
150 |
foreach my $from_sf ( keys %{$r} ) { |
foreach my $from_sf ( keys %{$r} ) { |
151 |
# skip everything which isn't one char subfield (e.g. 'subfields') |
# skip everything which isn't one char subfield (e.g. 'subfields') |
152 |
next unless $from_sf =~ m/^\w$/; |
next unless $from_sf =~ m/^\w$/; |
197 |
warn "#### fill_in( $name, r, '$pre', $sf, $nr, '$post' )\n" if $debug; |
warn "#### fill_in( $name, r, '$pre', $sf, $nr, '$post' )\n" if $debug; |
198 |
my ( $from_sf, $from_nr ); |
my ( $from_sf, $from_nr ); |
199 |
if ( $name eq 'marc' ) { |
if ( $name eq 'marc' ) { |
200 |
die "no $sf/$nr in to_mapping: ",dump( $to_mapping ), " form record ",dump( $r ) unless defined $to_mapping->{$sf}->[$nr]; |
die "no $sf/$nr in to_mapping: ",dump( $to_mapping ), "\n>>>> from record ",dump( $r ), "\n>>>> full record = ",dump( $from_rec ) unless defined $to_mapping->{$sf}->[$nr]; |
201 |
( $from_sf, $from_nr ) = @{ $to_mapping->{$sf}->[$nr] }; |
( $from_sf, $from_nr ) = @{ $to_mapping->{$sf}->[$nr] }; |
202 |
} else { |
} else { |
203 |
( $from_sf, $from_nr ) = ( $sf, $nr ); |
( $from_sf, $from_nr ) = ( $sf, $nr ); |