Lines 202-213
sub add_field {
Link Here
|
202 |
if ( $fieldName > 10 ) { |
202 |
if ( $fieldName > 10 ) { |
203 |
foreach my $value ( @values ) { |
203 |
foreach my $value ( @values ) { |
204 |
my $field = MARC::Field->new( $fieldName, '', '', "$subfieldName" => $value ); |
204 |
my $field = MARC::Field->new( $fieldName, '', '', "$subfieldName" => $value ); |
205 |
$record->append_fields( $field ); |
205 |
$record->insert_fields_ordered( $field ); |
206 |
} |
206 |
} |
207 |
} else { |
207 |
} else { |
208 |
foreach my $value ( @values ) { |
208 |
foreach my $value ( @values ) { |
209 |
my $field = MARC::Field->new( $fieldName, $value ); |
209 |
my $field = MARC::Field->new( $fieldName, $value ); |
210 |
$record->append_fields( $field ); |
210 |
$record->insert_fields_ordered( $field ); |
211 |
} |
211 |
} |
212 |
} |
212 |
} |
213 |
} |
213 |
} |
Lines 230-236
sub _update_field {
Link Here
|
230 |
if ( $fieldName < 10 ) { |
230 |
if ( $fieldName < 10 ) { |
231 |
foreach my $value ( @values ) { |
231 |
foreach my $value ( @values ) { |
232 |
my $field = MARC::Field->new( $fieldName, $value ); |
232 |
my $field = MARC::Field->new( $fieldName, $value ); |
233 |
$record->append_fields( $field ); |
233 |
$record->insert_fields_ordered( $field ); |
234 |
} |
234 |
} |
235 |
} else { |
235 |
} else { |
236 |
warn "Invalid operation, trying to add a new field without subfield"; |
236 |
warn "Invalid operation, trying to add a new field without subfield"; |
Lines 273-279
sub _update_subfield {
Link Here
|
273 |
## Field does not exist, create it. |
273 |
## Field does not exist, create it. |
274 |
foreach my $value ( @values ) { |
274 |
foreach my $value ( @values ) { |
275 |
my $field = MARC::Field->new( $fieldName, '', '', "$subfieldName" => $values[$i++] ); |
275 |
my $field = MARC::Field->new( $fieldName, '', '', "$subfieldName" => $values[$i++] ); |
276 |
$record->append_fields( $field ); |
276 |
$record->insert_fields_ordered( $field ); |
277 |
} |
277 |
} |
278 |
} |
278 |
} |
279 |
} |
279 |
} |
Lines 568-574
sub _copy_move_field {
Link Here
|
568 |
@from_fields = map { $_ <= @from_fields ? $from_fields[ $_ - 1 ] : () } @$field_numbers; |
568 |
@from_fields = map { $_ <= @from_fields ? $from_fields[ $_ - 1 ] : () } @$field_numbers; |
569 |
} |
569 |
} |
570 |
|
570 |
|
571 |
my @new_fields; |
|
|
572 |
for my $from_field ( @from_fields ) { |
571 |
for my $from_field ( @from_fields ) { |
573 |
my $new_field = $from_field->clone; |
572 |
my $new_field = $from_field->clone; |
574 |
$new_field->{_tag} = $toFieldName; # Should be replaced by set_tag, introduced by MARC::Field 2.0.4 |
573 |
$new_field->{_tag} = $toFieldName; # Should be replaced by set_tag, introduced by MARC::Field 2.0.4 |
Lines 588-596
sub _copy_move_field {
Link Here
|
588 |
$record->delete_field( $to_fields[0] ); |
587 |
$record->delete_field( $to_fields[0] ); |
589 |
} |
588 |
} |
590 |
} |
589 |
} |
591 |
push @new_fields, $new_field; |
590 |
$record->insert_grouped_field( $new_field ); |
592 |
} |
591 |
} |
593 |
$record->append_fields( @new_fields ); |
|
|
594 |
} |
592 |
} |
595 |
|
593 |
|
596 |
sub _copy_move_subfield { |
594 |
sub _copy_move_subfield { |
597 |
- |
|
|