X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Foe.pl;h=3ee71e67f548c995b1a0f08e0f374de549c882a6;hb=edb2023a832f426553a7d90342ebc56200f325f1;hp=1c1135c2f66384ffbbea382c86bb56bfa4d8ca05;hpb=3fcf64fc989a816e02251ea66fdc2bb0552cd3bb;p=kivitendo-erp.git diff --git a/bin/mozilla/oe.pl b/bin/mozilla/oe.pl index 1c1135c2f..3ee71e67f 100644 --- a/bin/mozilla/oe.pl +++ b/bin/mozilla/oe.pl @@ -245,14 +245,14 @@ sub order_links { $form->{"$form->{vc}_id"} ||= $form->{"all_$form->{vc}"}->[0]->{id} if $form->{"all_$form->{vc}"}; - $form->backup_vars(qw(payment_id language_id taxzone_id salesman_id taxincluded cp_id intnotes shipto_id currency)); + $form->backup_vars(qw(payment_id language_id taxzone_id salesman_id taxincluded cp_id intnotes shipto_id delivery_term_id currency)); $form->{shipto} = 1 if $form->{id} || $form->{convert_from_oe_ids}; # get customer / vendor IR->get_vendor(\%myconfig, \%$form) if $form->{type} =~ /(purchase_order|request_quotation)/; IS->get_customer(\%myconfig, \%$form) if $form->{type} =~ /sales_(order|quotation)/; - $form->restore_vars(qw(payment_id language_id taxzone_id intnotes cp_id shipto_id)); + $form->restore_vars(qw(payment_id language_id taxzone_id intnotes cp_id shipto_id delivery_term_id)); $form->restore_vars(qw(currency)) if $form->{id}; $form->restore_vars(qw(taxincluded)) if $form->{id}; $form->restore_vars(qw(salesman_id)) if $editing; @@ -434,14 +434,17 @@ sub form_header { $form->{javascript} .= qq||; $form->header; - + if ($form->{CFDD_shipto} && $form->{CFDD_shipto_id} ) { + $form->{shipto_id} = $form->{CFDD_shipto_id}; + } $TMPL_VAR{HIDDENS} = [ map { name => $_, value => $form->{$_} }, qw(id action type vc formname media format proforma queued printed emailed title creditlimit creditremaining tradediscount business max_dunning_level dunning_amount shiptoname shiptostreet shiptozipcode - shiptocity shiptocountry shiptocontact shiptophone shiptofax + CFDD_shipto shipto_id CFDD_shipto_id shiptocity shiptocountry shiptocontact shiptophone shiptofax shiptodepartment_1 shiptodepartment_2 shiptoemail shiptocp_gender - message email subject cc bcc taxpart taxservice taxaccounts cursor_fokus), + message email subject cc bcc taxpart taxservice taxaccounts cursor_fokus + show_details), @custom_hiddens, map { $_.'_rate', $_.'_description', $_.'_taxnumber' } split / /, $form->{taxaccounts} ]; # deleted: discount @@ -523,6 +526,8 @@ sub form_footer { $form->{oldinvtotal} = $form->{invtotal}; + $TMPL_VAR{ALL_DELIVERY_TERMS} = SL::DB::Manager::DeliveryTerm->get_all_sorted(); + print $form->parse_html_template("oe/form_footer", { %TMPL_VAR, webdav => $::instance_conf->get_webdav, @@ -1667,6 +1672,7 @@ sub check_for_direct_delivery_yes { delete @{$form}{grep /^shipto/, keys %{ $form }}; map { s/^CFDD_//; $form->{$_} = $form->{"CFDD_${_}"} } grep /^CFDD_/, keys %{ $form }; $form->{shipto} = 1; + $form->{CFDD_shipto} = 1; purchase_order(); $main::lxdebug->leave_sub(); } @@ -1680,6 +1686,7 @@ sub check_for_direct_delivery_no { $form->{direct_delivery_checked} = 1; delete @{$form}{grep /^shipto/, keys %{ $form }}; + $form->{CFDD_shipto} = 0; purchase_order(); $main::lxdebug->leave_sub(); @@ -2066,7 +2073,9 @@ sub _oe_remove_delivered_or_billed_rows { next if $ord_quot->is_sales != $record->is_sales; foreach my $item (@{ $record->items }) { - $handled_base_qtys{ $item->parts_id } += $item->qty * $item->unit_obj->base_factor; + my $key = $item->parts_id; + $key .= ':' . $item->serialnumber if $item->serialnumber; + $handled_base_qtys{$key} += $item->qty * $item->unit_obj->base_factor; } }