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 #
$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
}
$column_data{"unit"} = "<td>" .
- ($qty_readonly ? " " :
AM->unit_select_html($is_part ? $dimension_units :
$is_assigned ? $service_units : $all_units,
"unit_$i", $this_unit,
- $is_assigned ? $form->{"unit_$i"} : undef))
+ $is_assigned ? $form->{"unit_$i"} : undef)
. "</td>";
# build in drop down list for pricesgroups
<b>$serialnumber</b> <input name="serialnumber_$i" size=15 value="$form->{"serialnumber_$i"}">|;
}
- print qq|
- <b>$projectnumber</b> <input name="projectnumber_$i" size=10 value="$form->{"projectnumber_$i"}">
- <input type=hidden name="oldprojectnumber_$i" value="$form->{"projectnumber_$i"}">
- <input type=hidden name="project_id_$i" value="$form->{"project_id_$i"}">
-|;
+ print qq|<b>$projectnumber</b> | .
+ 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')
############## ENDE Neueintrag ##################
map { $form->{"${_}_base"} += $linetotal }
- (split / /, $form->{"taxaccounts_$i"});
+ (split(/ /, $form->{"taxaccounts_$i"}));
$form->{invsubtotal} += $linetotal;
}
<input name="new_taxaccounts_$i" type=hidden value="$ref->{taxaccounts}">
<input name="new_partsgroup_$i" type=hidden value="$ref->{partsgroup}">
<input name="new_formel_$i" type=hidden value="$ref->{formel}">
-<input name="new_longdescription_$i" type=hidden value="$ref->{longdescription}">
+<input name="new_longdescription_$i" type=hidden value="| . Q($ref->{longdescription}) . qq|">
<input name="new_not_discountable_$i" type=hidden value="$ref->{not_discountable}">
<input name="new_part_payment_id_$i" type=hidden value="$ref->{part_payment_id}">
<input name="new_partnotes_$i" type="hidden" value="| . Q($ref->{"partnotes"}) . qq|">
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
exit;
}
+ Common::webdav_folder($form) if ($webdav);
+
# if ( $form->{print_and_post}
# && $form->{second_run}
# && ($form->{action} eq "display_form")) {
$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;
quotation();
}
-sub e_mail {
+sub edit_e_mail {
$lxdebug->enter_sub();
if ($form->{second_run}) {
$form->{print_and_post} = 0;
. $locale->text('Credit Note');
}
- if ($form->{type} eq 'ship_order') {
- $type = qq|<select name=formname>
- <option value=pick_list $form->{PD}{pick_list}>|
- . $locale->text('Pick List') . qq|
- <option value=packing_list $form->{PD}{packing_list}>|
- . $locale->text('Packing List');
- }
-
- if ($form->{type} eq 'receive_order') {
- $type = qq|<select name=formname>
- <option value=bin_list $form->{PD}{bin_list}>|
- . $locale->text('Bin List');
- }
-
if ($form->{media} eq 'email') {
$media = qq|<select name=sendmode>
<option value=attachment $form->{SM}{attachment}>|
}
$form->{groupitems} = "checked" if $form->{groupitems};
+ $form->{remove_draft} = "checked" if $form->{remove_draft};
print qq|
<td>| . $locale->text('Group Items') . qq|</td>
- <td><input name=groupitems type=checkbox class=checkbox $form->{groupitems}></td>
+ <td><input name=groupitems type=checkbox class=checkbox $form->{groupitems}></td>|;
+
+ print qq|
+ <td>| . $locale->text('Remove Draft') . qq|</td>
+ <td><input name=remove_draft type=checkbox class=checkbox $form->{remove_draft}></td>| if (!$form->{id} && $form->{draft_id});
+ print qq|
</tr>
</table>
</td>
# $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') {
$form->{rowcount}--;
&{"$display_form"};
+ # saving the history
+ if(!exists $form->{addition}) {
+ $form->{addition} = "PRINTED";
+ $form->save_history($form->dbconnect(\%myconfig));
+ }
+ # /saving the history
exit;
}
}
$language_saved = $form->{language_id};
$payment_id_saved = $form->{payment_id};
+ $salesman_id_saved = $form->{salesman_id};
&{"$form->{vc}_details"}();
}
($form->{employee}) = split /--/, $form->{employee};
- ($form->{warehouse}, $form->{warehouse_id}) = split /--/, $form->{warehouse};
# create the form variables
if ($order) {
IS->invoice_details(\%myconfig, \%$form, $locale);
}
+ $form->get_salesman(\%myconfig, $salesman_id_saved);
+
if ($form->{shipto_id}) {
$form->get_shipto(\%myconfig);
}
}
$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} = "";
$lxdebug->leave_sub();
}
-
sub set_duedate {
$lxdebug->enter_sub();