map { $form->{selectdepartment} .= "<option>$_->{description}--$_->{id}\n" } @{ $form->{all_departments} || [] };
}
- my $department = qq|
+ my $department;
+ $department = qq|
<tr>
<th align=right nowrap>| . $locale->text('Department') . qq|</th>
<td colspan=3><select name=department>$form->{selectdepartment}</select></td>
}
my $projectnumber =
- NTI($main::cgi->popup_menu('-name' => "project_id",
+ NTI($::request->{cgi}->popup_menu('-name' => "project_id",
'-values' => \@project_values,
'-labels' => \%project_labels));
my $form = $main::form;
my %myconfig = %main::myconfig;
my $locale = $main::locale;
- my $cgi = $main::cgi;
+ my $cgi = $::request->{cgi};
my $report = SL::ReportGenerator->new(\%myconfig, $form);
$form->{ $form->{ct} } = $form->{name};
$form->{"$form->{ct}_id"} = $ref->{ctid};
- map { $form->{$_} = () } qw(invnumber invdate duedate);
+ map { $form->{$_} = () } qw(invnumber invdate duedate amount open);
$form->{total} = 0;
foreach my $item (qw(c0 c30 c60 c90)) {
$form->{$item} = ();
push @{ $form->{invnumber} }, $ref->{invnumber};
push @{ $form->{invdate} }, $ref->{transdate};
push @{ $form->{duedate} }, $ref->{duedate};
+ push @{ $form->{amount} }, $form->format_amount(\%myconfig, $ref->{amount} / $ref->{exchangerate}, 2);
+ push @{ $form->{open} }, $form->format_amount(\%myconfig, $ref->{open} / $ref->{exchangerate}, 2);
foreach my $item (qw(c0 c30 c60 c90)) {
if ($ref->{exchangerate} * 1) {
- $ref->{$item} =
- $form->round_amount($ref->{$item} / $ref->{exchangerate}, 2);
+ # add only the open amount of the invoice to the aging, not the total amount
+ $ref->{"${item}"} = $form->round_amount($ref->{open} / $ref->{exchangerate}, 2) if $ref->{overduedays} < 30 and $item eq 'c0';
+ $ref->{"${item}"} = $form->round_amount($ref->{open} / $ref->{exchangerate}, 2) if $ref->{overduedays} >= 30 and $ref->{overduedays} < 60 and $item eq 'c30';
+ $ref->{"${item}"} = $form->round_amount($ref->{open} / $ref->{exchangerate}, 2) if $ref->{overduedays} >= 60 and $ref->{overduedays} < 90 and $item eq 'c60';
+ $ref->{"${item}"} = $form->round_amount($ref->{open} / $ref->{exchangerate}, 2) if $ref->{overduedays} >= 90 and $item eq 'c90';
}
$form->{"${item}total"} += $ref->{$item};
$form->{total} += $ref->{$item};