5 use FS::UID qw(adminsuidsetup);
6 use FS::Record qw(qsearch);
10 { 'header' => 'pkgnum',
11 'callback' => sub { shift->cust_svc->pkgnum; },
13 { 'header' => 'svcpart',
14 'callback' => sub { shift->cust_svc->svcpart; },
16 { 'header' => 'Service',
17 'callback' => sub { shift->cust_svc->part_svc->svc; },
30 my $user = shift or die &usage;
33 my $agentnum = shift or die &usage;
35 my $csv = new Text::CSV_XS;
37 $csv->combine( map { ref($_) ? $_->{'header'} : $_ } @fields ) or die;
38 print $csv->string."\n";
40 my @svc_broadband = qsearch({
41 'select' => 'svc_broadband.*',
42 'table' => 'svc_broadband',
43 'addl_from' => 'LEFT JOIN cust_svc USING (svcnum)
44 LEFT JOIN cust_pkg USING (pkgnum)
45 LEFT JOIN cust_main USING ( custnum )',
47 'extra_sql' => "WHERE cust_main.agentnum = $agentnum",
50 foreach my $svc_broadband ( @svc_broadband ) {
51 $csv->combine( map { ref($_) ? &{$_->{'callback'}}($svc_broadband)
52 : $svc_broadband->$_()
56 print $csv->string."\n";