use POSIX qw(strftime);
+use SL::DO;
use SL::FU;
use SL::OE;
use SL::IR;
set_headings("edit");
&order_links;
+
+ $form->{rowcount} = 0;
+ foreach $ref (@{ $form->{form_details} }) {
+ $form->{rowcount}++;
+ map { $form->{"${_}_$form->{rowcount}"} = $ref->{$_} } keys %{$ref};
+ }
+
&prepare_order;
+
if ($form->{print_and_save}) {
$form->{language_id} = $language_id;
$form->{printer_id} = $printer_id;
}
+
&display_form;
$lxdebug->leave_sub();
# the content from the field)
$form->error($locale->text('Collective Orders only work for orders from one customer!'))
if $form->{rowcount} && $form->{type} eq 'sales_order'
- && defined $form->{customer} && $form->{customer} eq '');
+ && defined $form->{customer} && $form->{customer} eq '';
$form->{"$form->{vc}_id"} ||= $form->{"all_$form->{vc}"}->[0]->{id} if $form->{"all_$form->{vc}"};
$form->{employee} = "$form->{employee}--$form->{employee_id}";
# build vendor/customer drop down comatibility... don't ask
- $form->{"old$form->{vc}"} = $form->{"select$form->{vc}"} = 1;
-
- # departments
- if (@{ $form->{all_departments} }) {
- $form->{department} = "$form->{department}--$form->{department_id}";
- $form->{selectdepartment} = join "\n", "<option>", map "<option>$_->{description}--$_->{id}</option>", @{ $form->{all_departments} };
+ if (@{ $form->{"all_$form->{vc}"} }) {
+ $form->{"select$form->{vc}"} = 1;
+ $form->{$form->{vc}} = qq|$form->{$form->{vc}}--$form->{"$form->{vc}_id"}|;
}
+ $form->{"old$form->{vc}"} = $form->{$form->{vc}};
+ $form->{"old$form->{vc}"} .= qq|--$form->{"$form->{vc}_id"}| unless ($form->{"old$form->{vc}"} =~ m/--\d+$/);
+
$lxdebug->leave_sub();
}
$form->{formname} ||= $form->{type};
- foreach $ref (@{ $form->{form_details} }) {
- $form->{rowcount}++;
- map { $form->{"${_}_$form->{rowcount}"} = $ref->{$_} } keys %{$ref};
- }
+ # format discounts if values come from db. either as single id, or as a collective order
+ my $format_discounts = $form->{id} || $form->{convert_from_oe_ids};
+
for my $i (1 .. $form->{rowcount}) {
$form->{"reqdate_$i"} ||= $form->{"deliverydate_$i"};
- $form->{"discount_$i"} = $form->format_amount(\%myconfig, $form->{"discount_$i"} * ($form->{id} ? 100 : 1));
+ $form->{"discount_$i"} = $form->format_amount(\%myconfig, $form->{"discount_$i"} * ($format_discounts ? 100 : 1));
$form->{"sellprice_$i"} = $form->format_amount(\%myconfig, $form->{"sellprice_$i"});
$form->{"qty_$i"} = $form->format_amount(\%myconfig, $form->{"qty_$i"});
}
# Container for template variables. Unfortunately this has to be visible in form_footer too, so not my.
our %TMPL_VAR = ();
- $form->{employee_id} = $form->{old_employee_id} if $form->{old_employee_id};
- $form->{salesman_id} = $form->{old_salesman_id} if $form->{old_salesman_id};
-
$form->{defaultcurrency} = $form->get_default_currency(\%myconfig);
$form->{employee_id} = $form->{old_employee_id} if $form->{old_employee_id};
$form->{salesman_id} = $form->{old_salesman_id} if $form->{old_salesman_id};
- map { $form->{$_} = H($form->{$_}) }
- qw(shippingpoint shipvia notes intnotes shiptoname
- shiptostreet shiptozipcode shiptocity shiptocountry shiptocontact
- shiptophone shiptofax shiptodepartment_1 shiptodepartment_2);
-
# use JavaScript Calendar or not
$form->{jsscript} = 1;
- $TMPL_VAR{button1} = qq|
- <td nowrap><input name=transdate id=transdate size=11 title="$myconfig{dateformat}" value="$form->{transdate}" onBlur=\"check_right_date_format(this)\">
- <input type=button name=transdate id="trigger1" value=| . $locale->text('button') . qq|></td>
- |;
- $TMPL_VAR{button2} = qq|
- <td nowrap width="13"><input name=reqdate id=reqdate size=11 title="$myconfig{dateformat}" value="$form->{reqdate}" onBlur=\"check_right_date_format(this)\">
- <input type=button name=reqdate name=reqdate id="trigger2" value=| . $locale->text('button') . qq|></td>
- |;
- #write Trigger
- $TMPL_VAR{jsscript} = Form->write_trigger(\%myconfig, "2", "transdate", "BL", "trigger1", "reqdate", "BL", "trigger2");
# openclosed checkboxes
my @tmp;
$form->{"closed"} ? "checked" : "", $locale->text('Closed') if $form->{id};
$TMPL_VAR{openclosed} = sprintf qq|<tr><td colspan=%d align=center>%s</td></tr>\n|, 2 * scalar @tmp, join "\n", @tmp if @tmp;
- # set option selected
- foreach $item ($form->{vc}, 'currency', 'department', ($form->{vc} eq "customer" ? 'customer' : 'vendor')) {
- $form->{"select$item"} =~ s/ selected//;
- $form->{"select$item"} =~ s/option>\Q$form->{$item}\E/option selected>$form->{$item}/;
- }
-
- #quote select[customer|vendor] Bug 133
- $form->{"select$form->{vc}"} = $form->quote($form->{"select$form->{vc}"});
-
- #substitute \n and \r to \s (bug 543)
- $form->{"select$form->{vc}"} =~ s/[\n\r]/ /g;
-
+ # project ids
my @old_project_ids = ($form->{"globalproject_id"}, grep { $_ } map { $form->{"project_id_$_"} } 1..$form->{"rowcount"});
my $vc = $form->{vc} eq "customer" ? "customers" : "vendors";
"taxzones" => "ALL_TAXZONES",
"payments" => "ALL_PAYMENTS",
"currencies" => "ALL_CURRENCIES",
+ "departments" => "ALL_DEPARTMENTS",
$vc => { key => "ALL_" . uc($vc),
limit => $myconfig{vclimit} + 1 },
"price_factors" => "ALL_PRICE_FACTORS");
# label subs
$TMPL_VAR{sales_employee_labels} = sub { $_[0]->{name} || $_[0]->{login} };
- $TMPL_VAR{shipto_labels} = sub { join "; ", grep { $_ } map { $_[0]->{"shipto${_}" } } qw(name department_1 street city) };
- $TMPL_VAR{contact_labels} = sub { $_[0]->{"cp_name"} . ($_[0]->{cp_abteilung} ? " ($_[0]->{cp_abteilung})" : "") };
+ $TMPL_VAR{shipto_labels} = sub { join "; ", grep { $_ } map { $_[0]->{"shipto${_}" } } qw(name department_1 street city) };
+ $TMPL_VAR{contact_labels} = sub { join(', ', $_[0]->{"cp_name"}, $_[0]->{"cp_givenname"}) . ($_[0]->{cp_abteilung} ? " ($_[0]->{cp_abteilung})" : "") };
+ $TMPL_VAR{department_labels} = sub { "$_[0]->{description}--$_[0]->{id}" };
# vendor/customer
$TMPL_VAR{vc_keys} = sub { "$_[0]->{name}--$_[0]->{id}" };
@values = map { $_ } @{ $form->{ALL_CURRENCIES} };
%labels = map { $_ => $_ } @{ $form->{ALL_CURRENCIES} };
$form->{currency} = $form->{defaultcurrency} unless $form->{currency};
- $TMPL_VAR{show_exchangerate} = $form->{currency} ne $form->{defaultcurrency} && $form->{exchangerate};
+ $TMPL_VAR{show_exchangerate} = $form->{currency} ne $form->{defaultcurrency};
$TMPL_VAR{currencies} = NTI($cgi->popup_menu('-name' => 'currency', '-default' => $form->{"currency"},
'-values' => \@values, '-labels' => \%labels)) if scalar @values;
push @custom_hiddens, "forex";
# credit remaining
$creditwarning = (($form->{creditlimit} != 0) && ($form->{creditremaining} < 0) && !$form->{update}) ? 1 : 0;
$TMPL_VAR{is_credit_remaining_negativ} = ($form->{creditremaining} =~ /-/) ? "0" : "1";
-
+
# business
$TMPL_VAR{business_label} = ($form->{vc} eq "customer" ? $locale->text('Customer type') : $locale->text('Vendor type'));
- push @custom_hiddens, "ordnumber" if $form->{type} =~ /_quotation$/;
push @custom_hiddens, "customer_klass" if $form->{vc} eq 'customer';
$credittext = $locale->text('Credit Limit exceeded!!!');
max_dunning_level dunning_amount shiptoname shiptostreet shiptozipcode
shiptocity shiptocountry shiptocontact shiptophone shiptofax
shiptodepartment_1 shiptodepartment_2 shiptoemail
- message email subject cc bcc taxpart taxservice taxaccounts),
+ message email subject cc bcc taxpart taxservice taxaccounts cursor_fokus),
@custom_hiddens,
map { $_.'_rate', $_.'_description' } split / /, $form->{taxaccounts} ]; # deleted: discount
$introws = max 2, $form->numtextrows($form->{intnotes}, 35, 8);
$rows = max $rows, $introws;
- $TMPL_VAR{notes} = qq|<textarea name=notes rows=$rows cols=25 wrap=soft>$form->{notes}</textarea>|;
- $TMPL_VAR{intnotes} = qq|<textarea name=intnotes rows=$rows cols=35 wrap=soft>$form->{intnotes}</textarea>|;
+ $TMPL_VAR{notes} = qq|<textarea name=notes rows=$rows cols=25 wrap=soft>| . H($form->{notes}) . qq|</textarea>|;
+ $TMPL_VAR{intnotes} = qq|<textarea name=intnotes rows=$introws cols=35 wrap=soft>| . H($form->{intnotes}) . qq|</textarea>|;
if (!$form->{taxincluded}) {
}
}
- $form->{invsubtotal} = $form->format_amount(\%myconfig, $form->{invsubtotal}, 2, 0);
+# $form->{invsubtotal} = $form->format_amount(\%myconfig, $form->{invsubtotal}, 2, 0); # template does this
} else {
foreach $item (split / /, $form->{taxaccounts}) {
sub update {
$lxdebug->enter_sub();
-
+
my ($recursive_call) = shift;
check_oe_access();
map { $form->{$_} = $form->parse_amount(\%myconfig, $form->{$_}) } qw(exchangerate) unless $recursive_call;
$form->{update} = 1;
-
+
$payment_id = $form->{payment_id} if $form->{payment_id};
-
+
&check_name($form->{vc});
-
+
$form->{payment_id} = $payment_id if $form->{payment_id} eq "";
-
+
$buysell = 'buy';
$buysell = 'sell' if ($form->{vc} eq 'vendor');
- $form->{exchangerate} = $exchangerate if
- $form->{forex} = $exchangerate = $form->check_exchangerate(\%myconfig, $form->{currency}, $form->{transdate}, $buysell);
+ $form->{forex} = $form->check_exchangerate(\%myconfig, $form->{currency}, $form->{transdate}, $buysell);
+ $form->{exchangerate} = $form->{forex} if $form->{forex};
$exchangerate = $form->{exchangerate} || 1;
<input type=button name=transdateto name=transdateto id="trigger4" value=|
. $locale->text('button') . qq|></td>
|;
-
+ $button3 = qq|
+ <td><input name=reqdatefrom id=reqdatefrom size=11 title="$myconfig{dateformat}" onBlur=\"check_right_date_format(this)\">
+ <input type=button name=reqdatefrom id="trigger5" value=|
+ . $locale->text('button') . qq|></td>
+ |;
+ $button4 = qq|
+ <td><input name=reqdateto id=reqdateto size=11 title="$myconfig{dateformat}" onBlur=\"check_right_date_format(this)\">
+ <input type=button name=reqdateto name=reqdateto id="trigger6" value=|
+ . $locale->text('button') . qq|></td>
+ |;
+
#write Trigger
$jsscript =
- Form->write_trigger(\%myconfig, "2", "transdatefrom", "BR", "trigger3",
- "transdateto", "BL", "trigger4");
+ Form->write_trigger(\%myconfig, "4", "transdatefrom", "BR", "trigger3",
+ "transdateto", "BL", "trigger4",
+ "reqdatefrom", "BR", "trigger5", "reqdateto", "BL", "trigger6");
my $vc = $form->{vc} eq "customer" ? "customers" : "vendors";
push(@values, $item->{"id"});
$labels{$item->{"id"}} = $item->{"name"} ne "" ? $item->{"name"} : $item->{"login"};
}
-
+
#salesmen
my %labels_salesmen = ();
my @values_salesmen = ('');
my $vc_label = $form->{vc} eq "customer" ? $locale->text('Customer') : $locale->text('Vendor');
$vc =
$myconfig{vclimit} <= scalar(@values)
- ? qq|<input type="text" value="| . H(($form->{"old$form->{vc}"} =~ /^(.*)\-\-.*$/)) . qq|" name="$form->{vc}">|
+ ? qq|<input type="text" value="| . H(($form->{"old$form->{vc}"} =~ /^(.*)\-\-.*$/)) . qq|" name="$form->{vc}">|
: NTI($cgi->popup_menu('-name' => "$form->{vc}",
'-default' => $form->{"old$form->{vc}"},
'-onChange' => 'document.getElementById(\'update_button\').click();',
<td colspan="3">$projectnumber</td>
</tr>
<tr>
- <th align=right>| . $locale->text('From') . qq|</th> $button1
+ <th align=right>| . $locale->text('Order Date') . " " . $locale->text('From') . qq|</th> $button1
<th align=right>| . $locale->text('Bis') . qq|</th> $button2
</tr>
<input type=hidden name=sort value=transdate>
+ <tr>
+ <th align=right>| . $locale->text('Delivery Date') . " " . $locale->text('From') . qq|</th> $button3
+ <th align=right>| . $locale->text('Bis') . qq|</th> $button4
+ </tr>
+ <input type=hidden name=sort value=reqdate>
<tr>
<th align=right>| . $locale->text('Include in Report') . qq|</th>
<td colspan=5>
<tr>
<td><input name="l_name" class=checkbox type=checkbox value=Y checked> $vc_label</td>
<td><input name="l_employee" class=checkbox type=checkbox value=Y checked> $employee</td>
-
+
<td><input name="l_shipvia" class=checkbox type=checkbox value=Y> | . $locale->text('Ship via') . qq|</td>
</tr>
<tr>
($form->{ $form->{vc} }, $form->{"${form->{vc}}_id"}) = split(/--/, $form->{ $form->{vc} });
- $form->{sort} ||= 'transdate';
+ report_generator_set_default_sort('transdate', 1);
OE->transactions(\%myconfig, \%$form);
my @hidden_variables = map { "l_${_}" } @columns;
push @hidden_variables, "l_subtotal", $form->{vc}, qw(l_closed l_notdelivered open closed delivered notdelivered ordnumber quonumber
- transaction_description transdatefrom transdateto type vc employee_id salesman_id);
+ transaction_description transdatefrom transdateto type vc employee_id salesman_id
+ reqdatefrom reqdateto);
my $href = build_std_url('action=orders', grep { $form->{$_} } @hidden_variables);
'marge_percent' => { 'text' => $locale->text('Ertrag prozentual'), }
);
- foreach my $name (qw(id transdate reqdate quonumber ordnumber name employee salesman shipvia)) {
- $column_defs{$name}->{link} = $href . "&sort=$name";
+ foreach my $name (qw(id transdate reqdate quonumber ordnumber name employee salesman shipvia transaction_description)) {
+ my $sortdir = $form->{sort} eq $name ? 1 - $form->{sortdir} : $form->{sortdir};
+ $column_defs{$name}->{link} = $href . "&sort=$name&sortdir=$sortdir";
}
my %column_alignment = map { $_ => 'right' } qw(netamount tax amount curr);
$report->set_columns(%column_defs);
$report->set_column_order(@columns);
$report->set_export_options('orders', @hidden_variables);
- $report->set_sort_indicator($form->{sort}, 1);
+ $report->set_sort_indicator($form->{sort}, $form->{sortdir});
my @options;
my ($department) = split m/--/, $form->{department};
push @options, $locale->text('Order Number') . " : $form->{ordnumber}" if $form->{ordnumber};
push @options, $locale->text('Notes') . " : $form->{notes}" if $form->{notes};
push @options, $locale->text('Transaction description') . " : $form->{transaction_description}" if $form->{transaction_description};
- push @options, $locale->text('From') . " " . $locale->date(\%myconfig, $form->{transdatefrom}, 1) if $form->{transdatefrom};
- push @options, $locale->text('Bis') . " " . $locale->date(\%myconfig, $form->{transdateto}, 1) if $form->{transdateto};
+ if ( $form->{transdatefrom} or $form->{transdateto} ) {
+ push @options, $locale->text('Order Date');
+ push @options, $locale->text('From') . " " . $locale->date(\%myconfig, $form->{transdatefrom}, 1) if $form->{transdatefrom};
+ push @options, $locale->text('Bis') . " " . $locale->date(\%myconfig, $form->{transdateto}, 1) if $form->{transdateto};
+ };
+ if ( $form->{reqdatefrom} or $form->{reqdateto} ) {
+ push @options, $locale->text('Delivery Date');
+ push @options, $locale->text('From') . " " . $locale->date(\%myconfig, $form->{reqdatefrom}, 1) if $form->{reqdatefrom};
+ push @options, $locale->text('Bis') . " " . $locale->date(\%myconfig, $form->{reqdateto}, 1) if $form->{reqdateto};
+ };
push @options, $locale->text('Open') if $form->{open};
push @options, $locale->text('Closed') if $form->{closed};
push @options, $locale->text('Delivered') if $form->{delivered};
if ($form->{currency} ne $form->{defaultcurrency});
&validate_items;
-
- if($form->{payment_id}) {
+
+ if($form->{payment_id}) {
$payment_id = $form->{payment_id};
}
-
+
# if the name changed get new values
if (&check_name($form->{vc})) {
- if($form->{payment_id} eq "") {
+ if($form->{payment_id} eq "") {
$form->{payment_id} = $payment_id;
}
&update;
if ($form->{currency} ne $form->{defaultcurrency});
&validate_items;
-
- if($form->{payment_id}) {
+
+ if($form->{payment_id}) {
$payment_id = $form->{payment_id};
}
-
+
# if the name changed get new values
if (&check_name($form->{vc})) {
- if($form->{payment_id} eq "") {
+ if($form->{payment_id} eq "") {
$form->{payment_id} = $payment_id;
}
&update;
$form->{addition} = "SAVED";
$form->save_history($form->dbconnect(\%myconfig));
}
- # /saving the history
+ # /saving the history
$form->{simple_save} = 1;
if(!$form->{print_and_save}) {
$form->{addition} = "DELETED";
$form->save_history($form->dbconnect(\%myconfig));
}
- # /saving the history
+ # /saving the history
$form->info($msg);
exit();
}
$form->{ordnumber} = "";
$form->{quodate} = $form->{transdate};
}
-
+
$payment_id = $form->{payment_id} if $form->{payment_id};
-
+
# if the name changed get new values
if (&check_name($form->{vc})) {
$form->{payment_id} = $payment_id if $form->{payment_id} eq "";
}
}
- # close orders/quotations
- $form->{closed} = 1;
-
- # save order if one ordnumber has been given
- # if not it's most likely a collective order, which can't be saved back
- # so they just have to be closed
- if (($form->{ordnumber} ne '') || ($form->{quonumber} ne '')) {
- OE->close_order(\%myconfig, \%$form) if ($form->{id});
- } else {
- OE->close_orders(\%myconfig, \%$form);
- }
-
- $form->{transdate} = $form->{invdate} = $form->current_date(\%myconfig);
- $form->{duedate} = $form->current_date(\%myconfig, $form->{invdate}, $form->{terms} * 1);
+ $form->{convert_from_oe_ids} = $form->{id};
+ $form->{transdate} = $form->{invdate} = $form->current_date(\%myconfig);
+ $form->{duedate} = $form->current_date(\%myconfig, $form->{invdate}, $form->{terms} * 1);
+ $form->{shipto} = 1;
+ $form->{defaultcurrency} = $form->get_default_currency(\%myconfig);
- $form->{id} = '';
- $form->{closed} = 0;
+ delete @{$form}{qw(id closed)};
$form->{rowcount}--;
- $form->{shipto} = 1;
-
- $form->{defaultcurrency} = $form->get_default_currency(\%myconfig);
if ($form->{type} =~ /_order$/) {
$form->{exchangerate} = $exchangerate;
$buysell = 'sell';
}
- if ( $form->{type} eq 'sales_order'
+ if ( $form->{type} eq 'sales_order'
|| $form->{type} eq 'sales_quotation') {
$form->{title} = $locale->text('Add Sales Invoice');
$form->{script} = 'is.pl';
&invoice_links;
$form->{currency} = $currency;
- $form->{exchangerate} = "";
- $form->{forex} = "";
- $form->{exchangerate} = $exchangerate
- if (
- $form->{forex} = (
- $exchangerate =
- $form->check_exchangerate(
- \%myconfig, $form->{currency}, $form->{invdate}, $buysell
- )));
+ $form->{forex} = $form->check_exchangerate( \%myconfig, $form->{currency}, $form->{invdate}, $buysell);
+ $form->{exchangerate} = $form->{forex} || '';
$form->{creditremaining} -= ($form->{oldinvtotal} - $form->{ordtotal});
check_for_direct_delivery();
}
- if ( $form->{type} eq 'sales_quotation'
- || $form->{type} eq 'request_quotation') {
- OE->close_order(\%myconfig, \%$form);
- }
-
if ($form->{type} =~ /^sales_/) {
delete($form->{ordnumber});
}
check_oe_access();
$auth->assert('sales_order_edit');
- if ( $form->{type} eq 'sales_quotation'
- || $form->{type} eq 'request_quotation') {
- OE->close_order(\%myconfig, $form);
- }
-
if ($form->{type} eq "purchase_order") {
delete($form->{ordnumber});
}
$form->{cp_id} *= 1;
- $form->{title} = $locale->text('Add Sales Order');
- $form->{vc} = "customer";
- $form->{type} = "sales_order";
+ $form->{title} = $locale->text('Add Sales Order');
+ $form->{vc} = "customer";
+ $form->{type} = "sales_order";
&poso;
$form->{transdate} = $form->current_date(\%myconfig);
delete $form->{duedate};
- $form->{closed} = 0;
+ $form->{convert_from_oe_ids} = $form->{id};
+ $form->{closed} = 0;
- $form->{old_employee_id} = $form->{employee_id};
- $form->{old_salesman_id} = $form->{salesman_id};
+ $form->{old_employee_id} = $form->{employee_id};
+ $form->{old_salesman_id} = $form->{salesman_id};
# reset
- map { delete $form->{$_} }
- qw(id subject message cc bcc printed emailed queued customer vendor creditlimit creditremaining discount tradediscount oldinvtotal);
+ map { delete $form->{$_} } qw(id subject message cc bcc printed emailed queued customer vendor creditlimit creditremaining discount tradediscount oldinvtotal delivered
+ ordnumber);
for $i (1 .. $form->{rowcount}) {
- map({ $form->{"${_}_${i}"} = $form->parse_amount(\%myconfig,
- $form->{"${_}_${i}"})
- if ($form->{"${_}_${i}"}) }
- qw(ship qty sellprice listprice basefactor));
+ map { $form->{"${_}_${i}"} = $form->parse_amount(\%myconfig, $form->{"${_}_${i}"}) if ($form->{"${_}_${i}"}) } qw(ship qty sellprice listprice basefactor);
}
+ my %saved_vars = map { $_ => $form->{$_} } grep { $form->{$_} } qw(currency);
+
&order_links;
+ map { $form->{$_} = $saved_vars{$_} } keys %saved_vars;
+
&prepare_order;
# format amounts
for $i (1 .. $form->{rowcount} - 1) {
- map { $form->{"${_}_$i"} =~ s/\"/"/g }
- qw(partnumber description unit);
+ map { $form->{"${_}_$i"} =~ s/\"/"/g } qw(partnumber description unit);
}
&update;
require "bin/mozilla/do.pl";
- $form->{cp_id} *= 1;
- $form->{transdate} = $form->current_date(\%myconfig);
+ $form->{cp_id} *= 1;
+ $form->{convert_from_oe_ids} = $form->{id};
+ $form->{transdate} = $form->current_date(\%myconfig);
delete $form->{duedate};
- $form->{closed} = 0;
-
$form->{old_employee_id} = $form->{employee_id};
$form->{old_salesman_id} = $form->{salesman_id};
# reset
- map { delete $form->{$_} } qw(id subject message cc bcc printed emailed queued creditlimit creditremaining discount tradediscount oldinvtotal);
+ delete @{$form}{qw(id subject message cc bcc printed emailed queued creditlimit creditremaining discount tradediscount oldinvtotal closed delivered)};
for $i (1 .. $form->{rowcount}) {
map { $form->{"${_}_${i}"} = $form->parse_amount(\%myconfig, $form->{"${_}_${i}"}) if ($form->{"${_}_${i}"}) } qw(ship qty sellprice listprice basefactor);
my $content;
if (@{ $quotations }) {
- my $edit_url = build_std_url('script=oe.pl', 'action=edit', 'type=sales_quotation', 'vc=customer');
+ my $edit_url = build_std_url('script=oe.pl', 'action=edit');
$content = $form->parse_html_template('oe/report_for_todo_list', { 'QUOTATIONS' => $quotations,
'edit_url' => $edit_url });