-<& elements/search.html,
- 'title' => $sales->salesperson. ' commission package classes',
- 'name_singular' => 'package class',
- 'header' => [ 'Package class', 'Sales', 'Commission', ],
- 'fields' => [ 'classname', sub{'XXX';}, sub{'XXX';}, ],
- #'links'
- 'query' => { 'table' => 'sales_pkg_class',
- 'hashref' => { 'salesnum' => $salesnum },
- },
- 'count_query' => "SELECT COUNT(*) FROM sales_pkg_class WHERE salesnum = $salesnum",
+<& elements/commission.html,
+ 'title' => $title,
+ 'name_singular' => 'package class',
+ 'header' => [ 'Package class' ],
+ 'fields' => [ 'classname' ],
+ 'links' => [ '' ],
+ 'align' => 'l',
+ 'query' => \%query,
+ 'count_query' => $count_query,
+ 'sales_detail_link' => $sales_link,
+ 'credit_detail_link' => $commission_link,
&>
<%init>
die "access denied"
unless $FS::CurrentUser::CurrentUser->access_right('Financial reports');
+my $conf = new FS::Conf;
+
$cgi->param('salesnum') =~ /^(\d+)$/ or die 'illegal salesnum';
my $salesnum = $1;
-my $sales = qsearchs('sales', { 'salesnum'=>$salesnum } )
- or die 'unknown salesnum';
+my $sales = FS::sales->by_key($salesnum);
+
+my $title = $sales->salesperson . ' commission';
+
+my %query = ( 'table' => 'sales_pkg_class',
+ 'addl_from' => ' LEFT JOIN pkg_class USING (classnum)',
+ 'hashref' => { 'salesnum' => $salesnum },
+ );
+my $count_query = "SELECT COUNT(*) FROM sales_pkg_class WHERE salesnum = $salesnum";
+
+my $cust_main_sales = $cgi->param('cust_main_sales') eq 'Y' ? 'Y' : '';
+$query{'cust_main_sales'} = $cust_main_sales;
+
+my $sales_link = [ 'cust_bill_pkg.cgi?nottax=1;'.
+ "cust_main_sales=$cust_main_sales;salesnum=$salesnum;" .
+ 'classnum=',
+ sub { shift->classnum || 0 },
+ ];
+
+my $commission_link = [ 'cust_credit.html?'.
+ "cust_main_sales=$cust_main_sales;" .
+ "commission_salesnum=$salesnum;" .
+ 'classnum=',
+ 'classnum'
+ ];
</%init>