Revision 5f82335a
Von Sven Schöling vor 11 Monaten hinzugefügt
bin/mozilla/is.pl | ||
---|---|---|
256 | 256 |
$form->{"forex_$i"} = $form->{"exchangerate_$i"}; |
257 | 257 |
$form->{"source_$i"} = $form->{acc_trans}{$key}->[$i - 1]->{source}; |
258 | 258 |
$form->{"memo_$i"} = $form->{acc_trans}{$key}->[$i - 1]->{memo}; |
259 |
$form->{"defaultcurrency_paid_$i"} = $form->{acc_trans}{$key}->[$i - 1]->{defaultcurrency_paid}; |
|
260 |
$form->{"fx_transaction_$i"} = $form->{acc_trans}{$key}->[$i - 1]->{fx_transaction}; |
|
261 |
|
|
259 | 262 |
|
260 | 263 |
$form->{paidaccounts} = $i; |
261 | 264 |
# hook for calc of of defaultcurrency_paid and check if banktransaction has a record exchangerate |
262 |
if ($form->{"exchangerate_$i"}) { |
|
265 |
if ($form->{"exchangerate_$i"} && $form->{"acc_trans_id_$i"}) {
|
|
263 | 266 |
my $bt_acc_trans = SL::DB::Manager::BankTransactionAccTrans->find_by(acc_trans_id => $form->{"acc_trans_id_$i"}); |
264 | 267 |
if ($bt_acc_trans) { |
265 | 268 |
if ($bt_acc_trans->bank_transaction->exchangerate > 0) { |
... | ... | |
268 | 271 |
$form->{"record_forex_$i"} = 1; |
269 | 272 |
} |
270 | 273 |
} |
271 |
$form->{"defaultcurrency_paid_$i"} = $form->{"paid_$i"} * $form->{"exchangerate_$i"}; |
|
274 |
if (!$form->{"fx_transaction_$i"}) { |
|
275 |
# this is a banktransaction that was paid in internal currency. revert paid/defaultcurrency_paid |
|
276 |
$form->{"defaultcurrency_paid_$i"} = $form->{"paid_$i"}; |
|
277 |
$form->{"paid_$i"} /= $form->{"exchangerate_$i"}; |
|
278 |
} |
|
279 |
$form->{"defaultcurrency_paid_$i"} //= $form->{"paid_$i"} * $form->{"exchangerate_$i"}; |
|
272 | 280 |
$form->{"defaultcurrency_totalpaid"} += $form->{"defaultcurrency_paid_$i"}; |
273 | 281 |
} # end hook defaultcurrency_paid |
274 | 282 |
|
Auch abrufbar als: Unified diff
IS: fx_transaction payments
Es wird jetzt das fx_transaction flag durchgereicht, wenn die Zahlung im
FGrontend angelegt wurde, oder in Fremdwährung in der Datenbank gefunden
wurde.
Interne Währungszahlungen werden initial ohne fx_transaction geladen,
dann aber wie "normale" Fremdbuchungen durchgereicht
Im Gegensatz zu AP/AR wird hier direkt create_links aufgerufen.