X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;ds=sidebyside;f=bin%2Fmozilla%2Foe.pl;h=9508f736f9b85987ddd2ccaab65b861dd197020c;hb=6881b4bd6a669dd991b227ecf41c3e8662806595;hp=73c70b30f1a1a506bd19311008e3ab279e65c35a;hpb=4fa7102b36468079313df9e579f7537d49aab859;p=kivitendo-erp.git
diff --git a/bin/mozilla/oe.pl b/bin/mozilla/oe.pl
index 73c70b30f..9508f736f 100644
--- a/bin/mozilla/oe.pl
+++ b/bin/mozilla/oe.pl
@@ -153,6 +153,8 @@ sub edit {
check_oe_access();
+ $form->{taxincluded_changed_by_user} = 1;
+
# show history button
$form->{javascript} = qq||;
#/show hhistory button
@@ -475,16 +477,12 @@ sub form_footer {
$TMPL_VAR{notes} = qq||;
$TMPL_VAR{intnotes} = qq||;
- IS->get_customer(\%myconfig, \%$form) if $form->{type} =~ /sales_(order|quotation)/;
+ my $paymet_id = $::form->{payment_id};
+ IS->get_customer(\%myconfig, $::form) if $form->{type} =~ /sales_(order|quotation)/;
+ $::form->{payment_id} = $paymet_id;
if ( $form->{vc} eq 'customer' && !$form->{taxincluded_changed_by_user} ) {
- if ( $form->{taxincluded_checked} eq 'y' ) {
- $form->{taxincluded} = 1;
- } elsif ( $form->{taxincluded_checked} eq 'n' ) {
- $form->{taxincluded} = 0;
- } else {
- $form->{taxincluded} = $myconfig{taxincluded_checked};
- }
+ $form->{taxincluded} = defined($form->{taxincluded_checked}) ? $form->{taxincluded_checked} : $myconfig{taxincluded_checked};
}
if (!$form->{taxincluded}) {
@@ -783,6 +781,7 @@ sub orders {
my @columns = (
"transdate", "reqdate",
"id", $ordnumber,
+ "customernumber",
"name", "netamount",
"tax", "amount",
"curr", "employee",
@@ -842,6 +841,7 @@ sub orders {
'ordnumber' => { 'text' => $locale->text('Order'), },
'quonumber' => { 'text' => $form->{type} eq "request_quotation" ? $locale->text('RFQ') : $locale->text('Quotation'), },
'name' => { 'text' => $form->{vc} eq 'customer' ? $locale->text('Customer') : $locale->text('Vendor'), },
+ 'customernumber' => { 'text' => $locale->text('Customer Number'), },
'netamount' => { 'text' => $locale->text('Amount'), },
'tax' => { 'text' => $locale->text('Tax'), },
'amount' => { 'text' => $locale->text('Total'), },
@@ -1629,11 +1629,25 @@ sub save_as_new {
delete($form->{$idx});
}
- # clear reqdate unless changed
- if ($form->{reqdate} && $form->{id}) {
+ # clear reqdate and transdate unless changed
+ if ( $form->{reqdate} && $form->{id} ) {
my $saved_order = OE->retrieve_simple(id => $form->{id});
- if ($saved_order && $saved_order->{reqdate} eq $form->{reqdate}) {
- delete $form->{reqdate};
+ if ( $saved_order && $saved_order->{reqdate} eq $form->{reqdate} && $saved_order->{transdate} eq $form->{transdate} ) {
+
+ my $dbh = $form->get_standard_dbh;
+
+ my $wday = (localtime(time))[6];
+ my $next_workday = $wday == 5 ? 3 : $wday == 6 ? 2 : 1;
+
+ my $query = 'SELECT
+ date(current_date + interval \''. $next_workday .' days\') AS reqdate,
+ date(current_date) AS transdate';
+ my $ref = selectfirst_hashref_query($form, $dbh, $query);
+
+ map(
+ { $form->{$_} = $ref->{$_} }
+ keys %{$ref}
+ );
}
}