X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fap.pl;h=a18c638a74e6d25a6d2346f7378369d724314fbe;hb=2387a1fccb259789836aa1a9da44528be4d63bec;hp=77e9d368c7e0ae0d9e5b922e269b3e21ba940cfb;hpb=d319704a66e9be64da837ccea10af6774c2b0838;p=kivitendo-erp.git diff --git a/bin/mozilla/ap.pl b/bin/mozilla/ap.pl index 77e9d368c..a18c638a7 100644 --- a/bin/mozilla/ap.pl +++ b/bin/mozilla/ap.pl @@ -79,6 +79,7 @@ sub add { unless $form->{callback}; &create_links; + AP->get_transdate(\%myconfig, $form); &display_form; $lxdebug->leave_sub(); @@ -112,23 +113,24 @@ sub create_links { $duedate = $form->{duedate}; IR->get_vendor(\%myconfig, \%$form); - + $form->{taxincluded} = $taxincluded; $form->{duedate} = $duedate if $duedate; $form->{oldvendor} = "$form->{vendor}--$form->{vendor_id}"; + $form->{rowcount} = 1; # build the popup menus $form->{taxincluded} = ($form->{id}) ? $form->{taxincluded} : "checked"; map { $tax .= - qq|\n"; } else { $form->{"select$key"} .= - "\n"; + "\n"; } } $form->{$key} = $form->{"select$key"}; # if there is a value we have an old entry - $j = 0; + my $j = 0; + my $k = 0; + for $i (1 .. scalar @{ $form->{acc_trans}{$key} }) { if ($key eq "AP_paid") { @@ -194,13 +198,14 @@ sub create_links { $akey = $key; $akey =~ s/AP_//; - if ($key eq "AP_tax") { + if (($key eq "AP_tax") || ($key eq "AR_tax")) { $form->{"${key}_$form->{acc_trans}{$key}->[$i-1]->{accno}"} = "$form->{acc_trans}{$key}->[$i-1]->{accno}--$form->{acc_trans}{$key}->[$i-1]->{description}"; $form->{"${akey}_$form->{acc_trans}{$key}->[$i-1]->{accno}"} = $form->round_amount( - $form->{acc_trans}{$key}->[$i - 1]->{amount} / $exchangerate * -1, - 2); + $form->{acc_trans}{$key}->[$i - 1]->{amount} / $exchangerate, + 2); + if ($form->{"$form->{acc_trans}{$key}->[$i-1]->{accno}_rate"} > 0) { $totaltax += $form->{"${akey}_$form->{acc_trans}{$key}->[$i-1]->{accno}"}; @@ -212,35 +217,38 @@ sub create_links { $withholdingrate += $form->{"$form->{acc_trans}{$key}->[$i-1]->{accno}_rate"}; } - $formtax = - $form->round_amount( - $form->{acc_trans}{$key}->[$i - 1]->{amount} / $exchangerate, - 2) * -1; + $index = $form->{acc_trans}{$key}->[$i - 1]->{index}; + $form->{"tax_$index"} = + $form->{acc_trans}{$key}->[$i - 1]->{amount} * -1; + $totaltax += $form->{"tax_$index"}; + } else { - $form->{"${akey}_$i"} = + $k++; + $form->{"${akey}_$k"} = $form->round_amount( $form->{acc_trans}{$key}->[$i - 1]->{amount} / $exchangerate, 2); if ($akey eq 'amount') { + $form->{rowcount}++; $form->{"${akey}_$i"} *= -1; $totalamount += $form->{"${akey}_$i"}; $form->{taxrate} = $form->{acc_trans}{$key}->[$i - 1]->{rate}; - $form->{rowcount}++; - $form->{"oldprojectnumber_$i"} = $form->{"projectnumber_$i"} = + $form->{"oldprojectnumber_$k"} = $form->{"projectnumber_$k"} = "$form->{acc_trans}{$key}->[$i-1]->{projectnumber}"; - $form->{"project_id_$i"} = + $form->{"project_id_$k"} = "$form->{acc_trans}{$key}->[$i-1]->{project_id}"; } - $form->{"${key}_$i"} = + $form->{"${key}_$k"} = "$form->{acc_trans}{$key}->[$i-1]->{accno}--$form->{acc_trans}{$key}->[$i-1]->{description}"; + my $q_description = quotemeta($form->{acc_trans}{$key}->[$i-1]->{description}); $form->{"select${key}"} =~ - /(