|
Lines 465-471
sub order_line {
Link Here
|
| 465 |
# FTX free text for current orderline |
465 |
# FTX free text for current orderline |
| 466 |
# Pass vendor note in FTX free text segment |
466 |
# Pass vendor note in FTX free text segment |
| 467 |
if ( $orderline->order_vendornote ) { |
467 |
if ( $orderline->order_vendornote ) { |
| 468 |
my $vendornote = $orderline->order_vendornote; |
468 |
my $vendornote = encode_text( $orderline->order_vendornote ); |
| 469 |
chomp $vendornote; |
469 |
chomp $vendornote; |
| 470 |
my $ftx = 'FTX+LIN+++'; |
470 |
my $ftx = 'FTX+LIN+++'; |
| 471 |
$ftx .= $vendornote; |
471 |
$ftx .= $vendornote; |
|
Lines 489-495
sub order_line {
Link Here
|
| 489 |
# RFF : suppliers unique quotation reference number |
489 |
# RFF : suppliers unique quotation reference number |
| 490 |
if ( $orderline->suppliers_reference_number ) { |
490 |
if ( $orderline->suppliers_reference_number ) { |
| 491 |
$rff = join q{}, 'RFF+', $orderline->suppliers_reference_qualifier, |
491 |
$rff = join q{}, 'RFF+', $orderline->suppliers_reference_qualifier, |
| 492 |
':', $orderline->suppliers_reference_number, $seg_terminator; |
492 |
':', encode_text( $orderline->suppliers_reference_number ), $seg_terminator; |
| 493 |
$self->add_seg($rff); |
493 |
$self->add_seg($rff); |
| 494 |
} |
494 |
} |
| 495 |
|
495 |
|
|
Lines 576-582
sub gir_segments {
Link Here
|
| 576 |
my $orderfields = $params->{ol_fields}; |
576 |
my $orderfields = $params->{ol_fields}; |
| 577 |
my @onorderitems = @{ $params->{items} }; |
577 |
my @onorderitems = @{ $params->{items} }; |
| 578 |
|
578 |
|
| 579 |
my $budget_code = $orderfields->{budget_code}; |
579 |
my $budget_code = encode_text( $orderfields->{budget_code} ); |
| 580 |
my @segments; |
580 |
my @segments; |
| 581 |
my $sequence_no = 1; |
581 |
my $sequence_no = 1; |
| 582 |
my $lsq_field = C4::Context->preference('EdifactLSQ'); |
582 |
my $lsq_field = C4::Context->preference('EdifactLSQ'); |
|
Lines 590-616
sub gir_segments {
Link Here
|
| 590 |
} |
590 |
} |
| 591 |
if ( $item->{branchcode} ) { |
591 |
if ( $item->{branchcode} ) { |
| 592 |
push @gir_elements, |
592 |
push @gir_elements, |
| 593 |
{ identity_number => 'LLO', data => $item->{branchcode} }; |
593 |
{ identity_number => 'LLO', data => encode_text( $item->{branchcode} ) }; |
| 594 |
} |
594 |
} |
| 595 |
if ( $item->{itype} ) { |
595 |
if ( $item->{itype} ) { |
| 596 |
push @gir_elements, |
596 |
push @gir_elements, |
| 597 |
{ identity_number => 'LST', data => $item->{itype} }; |
597 |
{ identity_number => 'LST', data => encode_text( $item->{itype} ) }; |
| 598 |
} |
598 |
} |
| 599 |
|
599 |
|
| 600 |
# Handle LSQ mapping |
600 |
# Handle LSQ mapping |
| 601 |
if ( $lsq_field && $item->{$lsq_field} ) { |
601 |
if ( $lsq_field && $item->{$lsq_field} ) { |
| 602 |
push @gir_elements, |
602 |
push @gir_elements, |
| 603 |
{ identity_number => 'LSQ', data => $item->{$lsq_field} }; |
603 |
{ identity_number => 'LSQ', data => encode_text( $item->{$lsq_field} ) }; |
| 604 |
} |
604 |
} |
| 605 |
|
605 |
|
| 606 |
# Handle LSL mapping |
606 |
# Handle LSL mapping |
| 607 |
if ( $lsl_field && $item->{$lsl_field} ) { |
607 |
if ( $lsl_field && $item->{$lsl_field} ) { |
| 608 |
push @gir_elements, |
608 |
push @gir_elements, |
| 609 |
{ identity_number => 'LSL', data => $item->{$lsl_field} }; |
609 |
{ identity_number => 'LSL', data => encode_text( $item->{$lsl_field} ) }; |
| 610 |
} |
610 |
} |
| 611 |
if ( $item->{itemcallnumber} ) { |
611 |
if ( $item->{itemcallnumber} ) { |
| 612 |
push @gir_elements, |
612 |
push @gir_elements, |
| 613 |
{ identity_number => 'LSM', data => $item->{itemcallnumber} }; |
613 |
{ identity_number => 'LSM', data => encode_text( $item->{itemcallnumber} ) }; |
| 614 |
} |
614 |
} |
| 615 |
|
615 |
|
| 616 |
# itemcallnumber -> shelfmark |
616 |
# itemcallnumber -> shelfmark |
|
Lines 618-624
sub gir_segments {
Link Here
|
| 618 |
push @gir_elements, |
618 |
push @gir_elements, |
| 619 |
{ |
619 |
{ |
| 620 |
identity_number => 'LVT', |
620 |
identity_number => 'LVT', |
| 621 |
data => $orderfields->{servicing_instruction} |
621 |
data => encode_text( $orderfields->{servicing_instruction} ) |
| 622 |
}; |
622 |
}; |
| 623 |
} |
623 |
} |
| 624 |
my $e_cnt = 0; # count number of elements so we dont exceed 5 per segment |
624 |
my $e_cnt = 0; # count number of elements so we dont exceed 5 per segment |
|
Lines 663-669
sub lin_segment {
Link Here
|
| 663 |
my ( $line_number, $item_number_id ) = @_; |
663 |
my ( $line_number, $item_number_id ) = @_; |
| 664 |
|
664 |
|
| 665 |
if ($item_number_id) { |
665 |
if ($item_number_id) { |
| 666 |
$item_number_id = "++${item_number_id}:EN"; |
666 |
$item_number_id = "++" . encode_text($item_number_id) . ":EN"; |
| 667 |
} else { |
667 |
} else { |
| 668 |
$item_number_id = q||; |
668 |
$item_number_id = q||; |
| 669 |
} |
669 |
} |
|
Lines 688-694
sub additional_product_id {
Link Here
|
| 688 |
} |
688 |
} |
| 689 |
|
689 |
|
| 690 |
# function id set to 5 states this is the main product id |
690 |
# function id set to 5 states this is the main product id |
| 691 |
return "PIA+5+$product_id:$product_code$seg_terminator"; |
691 |
return "PIA+5+" . encode_text($product_id) . ":$product_code$seg_terminator"; |
| 692 |
} |
692 |
} |
| 693 |
|
693 |
|
| 694 |
sub message_date_segment { |
694 |
sub message_date_segment { |