X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;ds=inline;f=bin%2Fmozilla%2Fir.pl;h=ced248f4807b6a2f046461ad63db6dbbe9f5ca4d;hb=9263b0fac80043206bb1e32c47e2abbc3395d206;hp=c44ef42f362ac41d9a9274de11d54bad3578d700;hpb=b65a230d60e86d2c18a3ab7222379905aea5ecd7;p=kivitendo-erp.git
diff --git a/bin/mozilla/ir.pl b/bin/mozilla/ir.pl
index c44ef42f3..ced248f48 100644
--- a/bin/mozilla/ir.pl
+++ b/bin/mozilla/ir.pl
@@ -59,7 +59,7 @@ sub add {
return $main::lxdebug->leave_sub() if (load_draft_maybe());
- $form->{title} = $locale->text('Add Vendor Invoice');
+ $form->{title} = $locale->text('Record Vendor Invoice');
&invoice_links;
&prepare_invoice;
@@ -171,7 +171,7 @@ sub invoice_links {
foreach my $key (keys %{ $form->{AP_links} }) {
foreach my $ref (@{ $form->{AP_links}{$key} }) {
- $form->{"select$key"} .= "";
}
next unless $form->{acc_trans}{$key};
@@ -258,7 +258,7 @@ sub form_header {
$main::auth->assert('invoice_edit');
- our %TMPL_VAR = ();
+ my %TMPL_VAR = ();
my @custom_hiddens;
$form->{employee_id} = $form->{old_employee_id} if $form->{old_employee_id};
@@ -393,9 +393,17 @@ sub form_footer {
$form->{paidaccounts}++ if ($form->{"paid_$form->{paidaccounts}"});
$form->{paid_indices} = [ 1 .. $form->{paidaccounts} ];
+ # Standard Konto für Umlaufvermögen
+ my $accno_arap = IS->get_standard_accno_current_assets(\%myconfig, \%$form);
+
for my $i (1 .. $form->{paidaccounts}) {
$form->{"selectAP_paid_$i"} = $form->{selectAP_paid};
- $form->{"selectAP_paid_$i"} =~ s/option>\Q$form->{"AP_paid_$i"}\E/option selected>$form->{"AP_paid_$i"}/;
+ if (!$form->{"AP_paid_$i"}) {
+ $form->{"selectAP_paid_$i"} =~ s/option>$accno_arap--(.*?)>/option selected>$accno_arap--$1>/;
+ } else {
+ $form->{"selectAP_paid_$i"} =~ s/option>\Q$form->{"AP_paid_$i"}\E/option selected>$form->{"AP_paid_$i"}/;
+ }
+
$totalpaid += $form->{"paid_$i"};
}
@@ -463,12 +471,12 @@ sub update {
my $rows = scalar @{ $form->{item_list} };
if ($rows) {
- $form->{"qty_$i"} = 1 unless ($form->{"qty_$i"});
+ $form->{"qty_$i"} = 1 unless $form->parse_amount(\%myconfig, $form->{"qty_$i"});
if ($rows > 1) {
&select_item;
- exit;
+ ::end_of_request();
} else {
@@ -552,7 +560,7 @@ sub storno {
if(!exists $form->{addition} && $form->{id} ne "") {
$form->{snumbers} = qq|invnumber_| . $form->{invnumber};
$form->{addition} = "CANCELED";
- $form->save_history($form->dbconnect(\%myconfig));
+ $form->save_history;
}
# /saving the history
@@ -618,7 +626,7 @@ sub post_payment {
$form->{snumbers} = qq|invnumber_| . $form->{invnumber};
$form->{addition} = "PAYMENT POSTED";
$form->{what_done} = $form->{currency} . qq| | . $form->{paid} . qq| | . $locale->text("POSTED");
- $form->save_history($form->dbconnect(\%myconfig));
+ $form->save_history;
# /saving the history
}
@@ -664,9 +672,16 @@ sub post {
# if the vendor changed get new values
if (&check_name('vendor')) {
&update;
+ ::end_of_request();
+ }
+
+ if ($myconfig{mandatory_departments} && !$form->{department_id}) {
+ $form->{saved_message} = $::locale->text('You have to specify a department.');
+ update();
exit;
}
+ remove_emptied_rows();
&validate_items;
my $closedto = $form->datetonum($form->{closedto}, \%myconfig);
@@ -711,7 +726,7 @@ sub post {
$form->{snumbers} = qq|invnumber_| . $form->{invnumber};
$form->{addition} = "POSTED";
#$form->{what_done} = $locale->text("Rechnungsnummer") . qq| | . $form->{invnumber};
- $form->save_history($form->dbconnect(\%myconfig));
+ $form->save_history;
}
# /saving the history
remove_draft() if $form->{remove_draft};
@@ -777,7 +792,7 @@ sub yes {
if(!exists $form->{addition}) {
$form->{snumbers} = qq|invnumber_| . $form->{invnumber};
$form->{addition} = "DELETED";
- $form->save_history($form->dbconnect(\%myconfig));
+ $form->save_history;
}
# /saving the history
$form->redirect($locale->text('Invoice deleted!'));