X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;ds=inline;f=bin%2Fmozilla%2Fio.pl;h=6fa6718a71e345c01f90fa68905d4a03404517da;hb=7712480e4a082f84a2229f5b1a90d79a6c01255b;hp=820ad48f2fd106c333c9306afb3f768bccca4130;hpb=f16abae9524dc7ffd6c40bc37784791883e29739;p=kivitendo-erp.git diff --git a/bin/mozilla/io.pl b/bin/mozilla/io.pl index 820ad48f2..6fa6718a7 100644 --- a/bin/mozilla/io.pl +++ b/bin/mozilla/io.pl @@ -134,7 +134,7 @@ sub display_row { my $colspan = $#column_index + 1; $form->{invsubtotal} = 0; - map { $form->{"${_}_base"} = 0 } (split / /, $form->{taxaccounts}); + map { $form->{"${_}_base"} = 0 } (split(/ /, $form->{taxaccounts})); ######################################## # Eintrag fuer Version 2.2.0 geaendert # @@ -242,6 +242,13 @@ sub display_row { $delvar = 'reqdate'; } + my %projectnumber_labels = (); + my @projectnumber_values = (""); + foreach my $item (@{ $form->{"ALL_PROJECTS"} }) { + push(@projectnumber_values, $item->{"id"}); + $projectnumber_labels{$item->{"id"}} = $item->{"projectnumber"}; + } + for $i (1 .. $numrows) { # undo formatting @@ -486,11 +493,12 @@ sub display_row { $serialnumber |; } - print qq| - $projectnumber - - -|; + print qq|$projectnumber | . + NTI($cgi->popup_menu('-name' => "project_id_$i", + '-values' => \@projectnumber_values, + '-labels' => \%projectnumber_labels, + '-default' => $form->{"project_id_$i"})); + if ($form->{type} eq 'invoice' or $form->{type} =~ /order/) { my $reqdate_term = ($form->{type} eq 'invoice') @@ -511,7 +519,7 @@ sub display_row { ############## ENDE Neueintrag ################## map { $form->{"${_}_base"} += $linetotal } - (split / /, $form->{"taxaccounts_$i"}); + (split(/ /, $form->{"taxaccounts_$i"})); $form->{invsubtotal} += $linetotal; } @@ -667,9 +675,10 @@ sub select_item { - + + {id}> @@ -732,7 +741,9 @@ sub item_selected { $sellprice = $form->parse_amount(\%myconfig, $form->{"sellprice_$i"}); map { $form->{"${_}_$i"} = $form->{"new_${_}_$j"} } - qw(id partnumber description sellprice listprice inventory_accno income_accno expense_accno bin unit weight assembly taxaccounts partsgroup formel longdescription not_discountable); + qw(id partnumber description sellprice listprice inventory_accno + income_accno expense_accno bin unit weight assembly taxaccounts + partsgroup formel longdescription not_discountable partnotes); if ($form->{"part_payment_id_$i"} ne "") { $form->{payment_id} = $form->{"part_payment_id_$i"}; } @@ -878,6 +889,9 @@ sub display_form { relink_accounts(); + my $new_rowcount = $form->{"rowcount"} * 1 + 1; + $form->{"project_id_${new_rowcount}"} = $form->{"globalproject_id"}; + $form->language_payment(\%myconfig); # if we have a display_form @@ -886,6 +900,8 @@ sub display_form { exit; } + Common::webdav_folder($form) if ($webdav); + # if ( $form->{print_and_post} # && $form->{second_run} # && ($form->{action} eq "display_form")) { @@ -1112,12 +1128,12 @@ sub invoicetotal { $amount = $sellprice * (1 - $discount / 100) * $qty; map { $form->{"${_}_base"} += $amount } - (split / /, $form->{"taxaccounts_$i"}); + (split (/ /, $form->{"taxaccounts_$i"})); $form->{oldinvtotal} += $amount; } map { $form->{oldinvtotal} += ($form->{"${_}_base"} * $form->{"${_}_rate"}) } - split / /, $form->{taxaccounts} + split(/ /, $form->{taxaccounts}) if !$form->{taxincluded}; $form->{oldtotalpaid} = 0; @@ -1177,6 +1193,10 @@ sub order { $form->{cp_id} *= 1; require "$form->{path}/$form->{script}"; + my $script = $form->{"script"}; + $script =~ s|.*/||; + $script =~ s|.pl$||; + $locale = new Locale($language, $script); map { $form->{"select$_"} = "" } ($form->{vc}, currency); @@ -1322,7 +1342,7 @@ sub e_mail { my $attachment_filename = $formname_translations{$form->{"formname"}}; my $prefix; - if ($form->{"type"} =~ /invoice/) { + if (grep({ $form->{"type"} eq $_ } qw(invoice credit_note))) { $prefix = "inv"; } elsif ($form->{"type"} =~ /_quotation$/) { $prefix = "quo"; @@ -1474,8 +1494,6 @@ sub print_options { $myconfig{"default_media"} ? $myconfig{"default_media"} : "screen"; - $lxdebug->message(0, "fm $form->{media}"); - $form->{"printer_id"} = defined($form->{"printer_id"}) ? $form->{"printer_id"} : $myconfig{"default_printer_id"} ? $myconfig{"default_printer_id"} : @@ -1542,20 +1560,6 @@ sub print_options { . $locale->text('Credit Note'); } - if ($form->{type} eq 'ship_order') { - $type = qq| - {PD}{pick_list}>| - . $locale->text('Pick List') . qq| - {PD}{packing_list}>| - . $locale->text('Packing List'); - } - - if ($form->{type} eq 'receive_order') { - $type = qq| - {PD}{bin_list}>| - . $locale->text('Bin List'); - } - if ($form->{media} eq 'email') { $media = qq| {SM}{attachment}>| @@ -1653,10 +1657,16 @@ sub print_options { } $form->{groupitems} = "checked" if $form->{groupitems}; + $form->{remove_draft} = "checked" if $form->{remove_draft}; print qq| | . $locale->text('Group Items') . qq| - {groupitems}> + {groupitems}>|; + + print qq| + | . $locale->text('Remove Draft') . qq| + {remove_draft}>| if (!$form->{id} && $form->{draft_id}); + print qq| @@ -1757,8 +1767,7 @@ sub print_form { if (($form->{type} eq 'invoice') && ($form->{formname} eq 'proforma') ) { $inv = "inv"; $due = "due"; - $form->{"${inv}date"} = $form->{transdate}; - $form->{"invdate"} = $form->{transdate}; + $form->{"${inv}date"} = $form->{invdate}; $form->{label} = $locale->text('Proforma Invoice'); $numberfld = "sonumber"; $order = 0; @@ -1822,7 +1831,7 @@ sub print_form { $inv = "quo"; $due = "req"; $form->{"${inv}date"} = $form->{transdate}; - $form->{"invdate"} = $form->{transdate}; + $form->{"invdate"} = $form->{transdate}; $form->{label} = $locale->text('Proforma Invoice'); $numberfld = "sqnumber"; $order = 1; @@ -1840,7 +1849,9 @@ sub print_form { $form->isblank("email", $locale->text('E-mail address missing!')) if ($form->{media} eq 'email'); $form->isblank("${inv}date", - $locale->text($form->{label} . ' Date missing!')); + $locale->text($form->{label}) + . ": " + . $locale->text(' Date missing!')); # $locale->text('Invoice Number missing!') # $locale->text('Invoice Date missing!') @@ -1852,7 +1863,8 @@ sub print_form { # $locale->text('Quotation Date missing!') # assign number - if (!$form->{"${inv}number"} && !$form->{preview}) { + $form->{what_done} = $form->{formname}; + if (!$form->{"${inv}number"} && !$form->{preview} && !$form->{id}) { $form->{"${inv}number"} = $form->update_defaults(\%myconfig, $numberfld); if ($form->{media} ne 'email') { @@ -1865,6 +1877,12 @@ sub print_form { $form->{rowcount}--; &{"$display_form"}; + # saving the history + if(!exists $form->{addition}) { + $form->{addition} = "PRINTED"; + $form->save_history($form->dbconnect(\%myconfig)); + } + # /saving the history exit; } } @@ -1898,7 +1916,6 @@ sub print_form { } ($form->{employee}) = split /--/, $form->{employee}; - ($form->{warehouse}, $form->{warehouse_id}) = split /--/, $form->{warehouse}; # create the form variables if ($order) { @@ -2041,6 +2058,24 @@ sub print_form { } $queued = $form->{queued}; +# saving the history + if(!exists $form->{addition}) { + if($form->{media} =~ /printer/) { + $form->{addition} = "PRINTED"; + } + elsif($form->{media} =~ /email/) { + $form->{addition} = "MAILED"; + } + elsif($form->{media} =~ /queue/) { + $form->{addition} = "QUEUED"; + } + elsif($form->{media} =~ /screen/) { + $form->{addition} = "SCREENED"; + } + $form->save_history($form->dbconnect(\%myconfig)); + } + # /saving the history + $form->parse_template(\%myconfig, $userspath); $form->{callback} = ""; @@ -2328,7 +2363,6 @@ sub relink_accounts { $lxdebug->leave_sub(); } - sub set_duedate { $lxdebug->enter_sub();