Fehler #703 » ar_ordered.diff
| SL/IS.pm | ||
|---|---|---|
|
}
|
||
|
}
|
||
|
my %ordered_accnos;
|
||
|
# special order for invoice_for_advance_payment
|
||
|
if ($form->{type} eq 'invoice_for_advance_payment') {
|
||
|
push @{$ordered_accnos{$form->{id}}}, $form->{AR};
|
||
|
push @{$ordered_accnos{$form->{id}}}, $advance_payment_clearing_chart->accno;
|
||
|
} else {
|
||
|
# no special order for non invoice_for_advance_payment
|
||
|
foreach my $trans_id (keys %{ $form->{amount} }) {
|
||
|
foreach my $accno (keys %{ $form->{amount}{$trans_id} }) {
|
||
|
push @{$ordered_accnos{$trans_id}}, $accno;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
foreach my $trans_id (keys %{ $form->{amount} }) {
|
||
|
foreach my $accno (keys %{ $form->{amount}{$trans_id} }) {
|
||
|
foreach my $accno (@{$ordered_accnos{$trans_id}}) {
|
||
|
next unless ($form->{expense_inventory} =~ /\Q$accno\E/);
|
||
|
$form->{amount}{$trans_id}{$accno} = $form->round_amount($form->{amount}{$trans_id}{$accno}, 2);
|
||
| ... | ... | |
|
}
|
||
|
}
|
||
|
foreach my $accno (keys %{ $form->{amount}{$trans_id} }) {
|
||
|
foreach my $accno (@{$ordered_accnos{$trans_id}}) {
|
||
|
$form->{amount}{$trans_id}{$accno} = $form->round_amount($form->{amount}{$trans_id}{$accno}, 2);
|
||
|
if (!$payments_only && ($form->{amount}{$trans_id}{$accno} != 0)) {
|
||