projects
/
freeside.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
b7cb050
)
agent-virt package summary report, RT#16534
author
Ivan Kohler
<ivan@freeside.biz>
Thu, 8 Mar 2012 06:25:52 +0000
(22:25 -0800)
committer
Ivan Kohler
<ivan@freeside.biz>
Thu, 8 Mar 2012 06:25:52 +0000
(22:25 -0800)
httemplate/search/cust_pkg_summary.cgi
patch
|
blob
|
history
diff --git
a/httemplate/search/cust_pkg_summary.cgi
b/httemplate/search/cust_pkg_summary.cgi
index
fc71c81
..
cea4cdc
100644
(file)
--- a/
httemplate/search/cust_pkg_summary.cgi
+++ b/
httemplate/search/cust_pkg_summary.cgi
@@
-21,8
+21,11
@@
</TR>
</TABLE>
<%init>
</TR>
</TABLE>
<%init>
+
+my $curuser = $FS::CurrentUser::CurrentUser;
+
die "access denied"
die "access denied"
- unless $
FS::CurrentUser::CurrentU
ser->access_right('List packages');
+ unless $
curu
ser->access_right('List packages');
my $title = 'Package Summary Report';
my ($begin, $end) = FS::UI::Web::parse_beginning_ending($cgi);
my $title = 'Package Summary Report';
my ($begin, $end) = FS::UI::Web::parse_beginning_ending($cgi);
@@
-61,7
+64,19
@@
if( !$begin ) {
splice @head, 1, 1;
}
splice @head, 1, 1;
}
-foreach my $part_pkg (qsearch('part_pkg', {} )) {
+my $agentnums_sql = $curuser->agentnums_sql(
+ 'null' => 1,
+ 'table' => 'part_pkg',
+ );
+
+my $extra_sql = " WHERE $agentnums_sql";
+
+foreach my $part_pkg (qsearch({ 'table' => 'part_pkg',
+ 'hashref' => {},
+ 'extra_sql' => $extra_sql,
+ })
+ )
+{
my @row = ();
next if !$part_pkg->freq; # exclude one-time packages
push @row, $part_pkg->pkg;
my @row = ();
next if !$part_pkg->freq; # exclude one-time packages
push @row, $part_pkg->pkg;
@@
-70,10
+85,15
@@
foreach my $part_pkg (qsearch('part_pkg', {} )) {
if($cond) {
my $result = qsearchs({
'table' => 'h_cust_pkg',
if($cond) {
my $result = qsearchs({
'table' => 'h_cust_pkg',
+ 'addl_from' => $addl_from.
+ ' LEFT JOIN cust_main USING ( custnum )',
+
'hashref' => {},
'select' => 'count(*)',
'hashref' => {},
'select' => 'count(*)',
- 'addl_from' => $addl_from,
- 'extra_sql' => 'WHERE pkgpart = '.$part_pkg->pkgpart.$cond,
+ 'extra_sql' => 'WHERE pkgpart = '.$part_pkg->pkgpart.$cond.
+ ' AND '. $curuser->agentnums_sql(
+ 'table' => 'cust_main',
+ ),
});
$row[$i] = $result->getfield('count');
$totals[$i] += $row[$i];
});
$row[$i] = $result->getfield('count');
$totals[$i] += $row[$i];