my @columns =
qw(transdate id type invnumber ordnumber name netamount tax amount paid datepaid
- due duedate transaction_description notes employee globalprojectnumber
+ due duedate transaction_description notes employee globalprojectnumber department
vendornumber country ustid taxzone payment_terms charts direct_debit);
my @hidden_variables = map { "l_${_}" } @columns;
push @hidden_variables, "l_subtotal", qw(open closed vendor invnumber ordnumber transaction_description notes project_id transdatefrom transdateto
- parts_partnumber parts_description);
+ parts_partnumber parts_description department_id);
my $href = build_std_url('action=ap_transactions', grep { $form->{$_} } @hidden_variables);
'notes' => { 'text' => $locale->text('Notes'), },
'employee' => { 'text' => $locale->text('Employee'), },
'globalprojectnumber' => { 'text' => $locale->text('Document Project Number'), },
+ 'department' => { 'text' => $locale->text('Department'), },
'vendornumber' => { 'text' => $locale->text('Vendor Number'), },
'country' => { 'text' => $locale->text('Country'), },
'ustid' => { 'text' => $locale->text('USt-IdNr.'), },
'direct_debit' => { 'text' => $locale->text('direct debit'), },
);
- foreach my $name (qw(id transdate duedate invnumber ordnumber name datepaid employee shippingpoint shipvia transaction_description direct_debit)) {
+ foreach my $name (qw(id transdate duedate invnumber ordnumber name datepaid employee shippingpoint shipvia transaction_description direct_debit department)) {
my $sortdir = $form->{sort} eq $name ? 1 - $form->{sortdir} : $form->{sortdir};
$column_defs{$name}->{link} = $href . "&sort=$name&sortdir=$sortdir";
}
$report->set_sort_indicator($form->{sort}, $form->{sortdir});
+ my $department_description;
+ $department_description = SL::DB::Manager::Department->find_by(id => $form->{department_id})->description if $form->{department_id};
+
my @options;
push @options, $locale->text('Vendor') . " : $form->{vendor}" if ($form->{vendor});
push @options, $locale->text('Contact Person') . " : $form->{cp_name}" if ($form->{cp_name});
- push @options, $locale->text('Department') . " : $form->{department}" if ($form->{department});
+ push @options, $locale->text('Department') . " : $department_description" if ($form->{department_id});
push @options, $locale->text('Invoice Number') . " : $form->{invnumber}" if ($form->{invnumber});
push @options, $locale->text('Order Number') . " : $form->{ordnumber}" if ($form->{ordnumber});
push @options, $locale->text('Notes') . " : $form->{notes}" if ($form->{notes});
return if !$::form->{id};
my $order_id = delete $::form->{id};
- my $order = SL::DB::Order->new(id => $order_id)->load;
+ my $order = SL::DB::Order->new(id => $order_id)->load(with => [ 'vendor', 'currency', 'payment_terms' ]);
return if $order->type ne 'purchase_order';
$::form->{taxincluded} = 1; # we use amount below, so tax is included
$::form->{transdate} = $today->to_kivitendo;
$::form->{duedate} = $today->to_kivitendo;
- $::form->{duedate} = $order->vendor->payment->calc_date(reference_date => $today)->to_kivitendo if $order->vendor->payment;
-
+ $::form->{duedate} = $order->payment_terms->calc_date(reference_date => $today)->to_kivitendo if $order->payment_terms;
create_links();
my $config_po_ap_workflow_chart_id = $::instance_conf->get_workflow_po_ap_chart_id;