}
}
- $form->{amount}{ $form->{id} }{ $form->{AR} } = $netamount + $tax;
+ # Invoice Summary includes Rounding
+ my $rounding = $form->round_amount(
+ $form->round_amount($netamount + $tax, 2, 1) - $form->round_amount($netamount + $tax, 2), 2
+ );
+ my $rnd_accno = $rounding == 0 ? 0
+ : $rounding > 0 ? $form->{rndgain_accno}
+ : $form->{rndloss_accno};
+ $form->{amount}{ $form->{id} }{ $form->{AR} } = $form->round_amount($netamount + $tax, 2, 1);
$form->{paid} =
$form->round_amount($form->{paid} * $form->{exchangerate} + $diff, 2);
do_query($form, $dbh, $query, @values);
}
}
+ if (!$payments_only && ($rnd_accno != 0)) {
+ $query =
+ qq|INSERT INTO acc_trans (trans_id, chart_id, amount, transdate, tax_id, taxkey, project_id, chart_link)
+ VALUES (?, (SELECT id FROM chart WHERE accno = ?), ?, ?, (SELECT id FROM tax WHERE taxkey=0), 0, ?, (SELECT link FROM chart WHERE accno = ?))|;
+ @values = (conv_i($trans_id), $rnd_accno, $rounding, conv_date($form->{invdate}), conv_i($project_id), $rnd_accno);
+ do_query($form, $dbh, $query, @values);
+ $rnd_accno = 0;
+ }
}
# deduct payment differences from diff
return;
}
- $amount = $netamount + $tax;
+ $amount = $form->round_amount( $netamount + $tax, 2, 1);
# save AR record
#erweiterung fuer lieferscheinnummer (donumber) 12.02.09 jb
(SELECT c.accno FROM chart c WHERE d.income_accno_id = c.id) AS income_accno,
(SELECT c.accno FROM chart c WHERE d.expense_accno_id = c.id) AS expense_accno,
(SELECT c.accno FROM chart c WHERE d.fxgain_accno_id = c.id) AS fxgain_accno,
- (SELECT c.accno FROM chart c WHERE d.fxloss_accno_id = c.id) AS fxloss_accno
+ (SELECT c.accno FROM chart c WHERE d.fxloss_accno_id = c.id) AS fxloss_accno,
+ (SELECT c.accno FROM chart c WHERE d.rndgain_accno_id = c.id) AS rndgain_accno,
+ (SELECT c.accno FROM chart c WHERE d.rndloss_accno_id = c.id) AS rndloss_accno
${query_transdate}
FROM defaults d|;
push @{ $ref->{matches} ||= [] }, $::locale->text('Model') . ': ' . join ', ', map { $_->{model} } @{ $mm_by_id{$ref->{id}} };
}
- if ($ref->{ean} eq $::form->{"partnumber_$i"}) {
+ if (($::form->{"partnumber_$i"} ne '') && ($ref->{ean} eq $::form->{"partnumber_$i"})) {
push @{ $ref->{matches} ||= [] }, $::locale->text('EAN') . ': ' . $ref->{ean};
}