use base qw( FS::Record );
use strict;
-#use FS::Record qw( qsearch qsearchs );
+use FS::Record qw( qsearchs ); # qsearch qsearchs );
use FS::sales;
use FS::pkg_class;
$self->SUPER::check;
}
+sub pkg_class {
+ my $self = shift;
+ qsearchs('pkg_class', { 'classnum' => $self->classnum });
+}
+
+sub classname {
+ my $self = shift;
+ my $pkg_class = $self->pkg_class;
+ $pkg_class ? $pkg_class->classname : '(no package class)';
+}
+
=back
=head1 BUGS
'Sales Report' => [ $fsurl.'graph/report_cust_bill_pkg.html', 'Sales report and graph (by agent, package class and/or date range)' ],
'Rated Call Sales Report' => [ $fsurl.'graph/report_cust_bill_pkg_detail.html', 'Sales report and graph (by agent, package class, usage class and/or date range)' ],
'Sales with Advertising Source' => [ $fsurl.'search/report_cust_bill_pkg_referral.html' ],
- 'Sales with Agent Commissions' => [ $fsurl.'search/report_agent_commission.html' ],
+ 'Agent Commissions' => [ $fsurl.'search/report_agent_commission.html' ],
+ 'Sales Person Commissions' => [ $fsurl.'search/report_sales_commission.html' ],
;
tie my %report_financial, 'Tie::IxHash';
--- /dev/null
+<% include('/elements/header.html', 'Sales person commission report' ) %>
+
+<FORM ACTION="sales_commission.html">
+
+<TABLE BGCOLOR="#cccccc" CELLSPACING=0>
+
+<% include( '/elements/tr-select-agent.html' ) %>
+
+<% include( '/elements/tr-select-sales.html' ) %>
+
+<% include( '/elements/tr-input-beginning_ending.html', ) %>
+
+</TABLE>
+
+<BR>
+<INPUT TYPE="submit" VALUE="Get Report">
+
+<% include('/elements/footer.html') %>
+<%init>
+
+die "access denied"
+ unless $FS::CurrentUser::CurrentUser->access_right('Financial reports');
+
+</%init>
--- /dev/null
+<& elements/search.html,
+ 'title' => 'Sales person commission report',
+ 'name_singular' => 'sales person',
+# 'redirect' => sub { #my( $sales, $cgi ) = @);
+# $saleslink;
+# },
+ 'header' => [ 'Sales person', 'Sales', 'Commission', ],
+ 'fields' => [ 'salesperson', sub{'XXX';}, sub{'XXX';}, ],
+ 'links' => [ '', $saleslink, $commissionlink ],
+ 'query' => { 'table' => 'sales', },
+ 'count_query' => 'SELECT COUNT(*) FROM sales',
+ 'disableable' => 1,
+&>
+<%init>
+
+die "access denied"
+ unless $FS::CurrentUser::CurrentUser->access_right('Financial reports');
+
+my $saleslink = [ 'sales_pkg_class.html?salesnum=', 'salesnum' ];
+
+my $commissionlink = ''; #XXX
+
+</%init>
--- /dev/null
+<& 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",
+&>
+<%init>
+
+die "access denied"
+ unless $FS::CurrentUser::CurrentUser->access_right('Financial reports');
+
+$cgi->param('salesnum') =~ /^(\d+)$/ or die 'illegal salesnum';
+my $salesnum = $1;
+my $sales = qsearchs('sales', { 'salesnum'=>$salesnum } )
+ or die 'unknown salesnum';
+
+</%init>