$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}"} = $form->{$form->{vc}};
+ $form->{"old$form->{vc}"} .= qq|--$form->{"$form->{vc}_id"}| unless ($form->{"old$form->{vc}"} =~ m/--\d+$/);
$lxdebug->leave_sub();
}
$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";
# 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!!!');
$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}) {
($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);
'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};
+ 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};
push @options, $locale->text('Open') if $form->{open};
push @options, $locale->text('Closed') if $form->{closed};
push @options, $locale->text('Delivered') if $form->{delivered};
}
}
- # 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;
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);
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 });