1 <& elements/search.html,
3 'name_singular' => 'sales person',
4 # 'redirect' => sub { #my( $sales, $cgi ) = @);
7 'header' => [ 'Sales person', 'Sales', 'Commission', ],
8 'fields' => [ 'salesperson', $sales_sub, $commission_sub, ],
9 'links' => [ '', $sales_link, $commission_link ],
11 'query' => { 'table' => 'sales', },
12 'count_query' => 'SELECT COUNT(*) FROM sales',
18 unless $FS::CurrentUser::CurrentUser->access_right('Financial reports');
20 my $conf = new FS::Conf;
22 my $money_char = $conf->config('money_char') || '$';
24 my($beginning, $ending) = FS::UI::Web::parse_beginning_ending($cgi, '');
26 my $date_format = $conf->config('date_format') || '%m/%d/%Y';
28 my $title = 'Sales person commission';
29 $title .= ': '. time2str($date_format, $beginning). ' to '.
30 time2str($date_format, $ending)
33 my $cust_main_sales = $cgi->param('cust_main_sales') eq 'Y' ? 'Y' : '';
35 my $sales_link = [ 'sales_pkg_class.html?'.
38 "cust_main_sales=$cust_main_sales;".
46 #efficiency improvement: ask the db for a sum instead of all the records
48 my @cust_bill_pkg = $sales->cust_bill_pkg(
51 'cust_main_sales' => $cust_main_sales,
53 $total_recur += $_->recur foreach @cust_bill_pkg;
55 $money_char. sprintf('%.2f', $total_recur);
58 my $commission_sub = sub {
61 #efficiency improvement: ask the db for a sum instead of all the records
63 my @cust_credit = $sales->cust_credit( $beginning, $ending );
64 $total_credit += $_->amount foreach @cust_credit;
66 $money_char. sprintf('%.2f', $total_credit);
69 my $commission_link = [ 'cust_credit.html?'.
72 "cust_main_sales=$cust_main_sales;".
73 'commission_salesnum=',