[freeside-commits] branch master updated. 74b63c87c33cdd97f7b9239e626d34bded497e20

Ivan ivan at 420.am
Mon Dec 17 13:44:23 PST 2012


The branch, master has been updated
       via  74b63c87c33cdd97f7b9239e626d34bded497e20 (commit)
       via  5fb29670d6be68d1f378c3a5c1216a399e022bd8 (commit)
      from  d0002d9941b90fc390bfc4c3382fd092cd5a3594 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 74b63c87c33cdd97f7b9239e626d34bded497e20
Author: Ivan Kohler <ivan at freeside.biz>
Date:   Mon Dec 17 13:44:22 2012 -0800

    add line item report, RT#18676

diff --git a/httemplate/search/report_cust_bill_pkg.html b/httemplate/search/report_cust_bill_pkg.html
new file mode 100644
index 0000000..4f6ee78
--- /dev/null
+++ b/httemplate/search/report_cust_bill_pkg.html
@@ -0,0 +1,118 @@
+<& /elements/header.html, mt('Line item report') &>
+
+<FORM ACTION="cust_bill_pkg.cgi" METHOD="GET">
+<!--<INPUT TYPE="hidden" NAME="magic" VALUE="_date">-->
+
+<TABLE BGCOLOR="#cccccc" CELLSPACING=0
+
+<& /elements/tr-select-agent.html,
+     curr_value    => scalar( $cgi->param('agentnum') ),
+     #label         => emt('Line items for agent: '),
+     disable_empty => 0,
+&>
+
+<& /elements/tr-select-cust_main-status.html,
+     label => emt('Customer status'),
+&>
+
+<!-- customer
+<& /elements/tr-select-cust_class.html,
+     'label'        => emt('Class'),
+     'multiple'     => 1,
+     'pre_options'  => [ '' => emt('(none)') ],
+     'all_selected' => 1,
+&>
+-->
+
+<& /elements/tr-input-beginning_ending.html &>
+
+<!-- needs support in cust_bill_pkg.cgi
+<& /elements/tr-input-lessthan_greaterthan.html,
+     label   => emt('Amount'),
+     field   => 'amount',
+&>
+-->
+
+<!-- customer payment method i guess
+  <& /elements/tr-select-payby.html,
+                label   => emt('Payment method:'),
+                payby_type   => 'cust',
+                multiple     => 1,
+                all_selected => 1,
+  &>
+-->
+
+<TR>
+  <TD ALIGN="right"><INPUT TYPE="checkbox" NAME="nottax" VALUE="Y" onClick="nottax_changed(this)" onChange="nottax_change(thid)"></TD>
+  <TD><% mt('Omit taxes') |h %></TD>
+</TD>
+
+<TR>
+  <TD ALIGN="right"><INPUT TYPE="checkbox" NAME="istax" VALUE="Y" onClick="istax_changed(this)" onChange="istax_change(thid)"></TD>
+  <TD><% mt('Taxes only') |h %></TD>
+</TD>
+
+<!--
+<TR>
+  <TD ALIGN="right"><INPUT TYPE="checkbox" NAME="credit" VALUE="Y"></TD>
+  <TD><% mt("Credit (what's this do?)") |h %></TD>
+</TD>
+-->
+
+</TABLE>
+
+<SCRIPT TYPE="text/javascript">
+  function nottax_changed (what) {
+    if (what.checked && what.form.istax.checked) {
+      what.form.istax.checked = false;
+    }
+  }
+  function istax_changed (what) {
+    if (what.checked && what.form.nottax.checked) {
+      what.form.nottax.checked = false;
+    }
+  }
+</SCRIPT>
+
+<BR>
+<INPUT TYPE="submit" VALUE="<% mt('Get Report') |h %>">
+
+</FORM>
+
+<& /elements/footer.html &>
+<%init>
+
+#Financial reports?
+die "access denied"
+  unless $FS::CurrentUser::CurrentUser->access_right('List invoices');
+
+my $conf = new FS::Conf;
+
+#other available params (cust_bill_pkg.cgi):
+#
+#distribute = 1
+#
+#(when nottax)
+#  use_override something about part_pkg
+#  classnum package class
+#  taxclass / taxclassNULL
+#  exempt_cust
+#  exempt_pkg
+#  region (country:state:county:city:district)
+#  taxable
+#  out (of taxable region)
+#  usage
+#(when istax)
+#  locationtaxid (& district/city/ciounty/state)
+#  out (of taxable region)
+#  taxclassNULL
+#  report_group (itemdesc)
+#  itemdesc
+#
+#taxname/taxnameNULL cust_main_county
+#taxnum cust_main_county
+#credit (hmm need to look more at what this does)
+
+
+</%init>
+

commit 5fb29670d6be68d1f378c3a5c1216a399e022bd8
Author: Ivan Kohler <ivan at freeside.biz>
Date:   Mon Dec 17 13:39:43 2012 -0800

    add line item report, RT#18676, add quotation reports & reorganize report menu

diff --git a/httemplate/elements/menu.html b/httemplate/elements/menu.html
index 66e8bf6..b4356f2 100644
--- a/httemplate/elements/menu.html
+++ b/httemplate/elements/menu.html
@@ -130,6 +130,8 @@ tie my %report_invoices, 'Tie::IxHash',
   'Open invoices' => [ \%report_invoices_open, 'Open invoices' ],
   'All invoices'  => [ $fsurl. 'search/cust_bill.html?date', 'List all invoices' ],
   'Advanced invoice reports' => [ $fsurl.'search/report_cust_bill.html', 'by agent, date range, etc.' ],
+  'separator'     => '',
+  'Line items'    => [ $fsurl. 'search/report_cust_bill_pkg.html', 'Individual line item detail' ],
 ;
 
 tie my %report_discounts, 'Tie::IxHash',
@@ -231,13 +233,13 @@ foreach my $svcdb ( FS::part_svc->svc_tables() ) {
 }
 
 tie my %report_packages, 'Tie::IxHash';
-if (    $curuser->access_right('Edit package definitions')
-     || $curuser->access_right('Edit global package definitions')
-   )
-{
-  $report_packages{'Package definitions (by # active)'} =  [ $fsurl.'browse/part_pkg.cgi?active=1', 'Package definitions by number of active packages' ];
-  $report_packages{'separator'} =  '';
-}
+$report_packages{'Package definitions (by # active)'} =  [ $fsurl.'browse/part_pkg.cgi?active=1', 'Package definitions by number of active packages' ]
+  if    $curuser->access_right('Edit package definitions')
+     || $curuser->access_right('Edit global package definitions');
+$report_packages{'Package Costs Report'} = [ $fsurl.'graph/report_cust_pkg_cost.html', 'Package setup and recurring costs graph' ]
+  if $curuser->access_right('Financial reports');
+$report_packages{'separator'} =  ''
+  if keys %report_packages;
 if ( $curuser->access_right('Financial reports') ) {
   $report_packages{'Package churn'} =  [ $fsurl.'graph/report_cust_pkg.html', 'Orders, suspensions and cancellations summary graph' ];
   $report_packages{'separator2'} =  '';
@@ -292,6 +294,11 @@ tie my %report_ticketing, 'Tie::IxHash',
   'Advanced ticket reports' => [ $fsurl.'rt/Search/Build.html?NewQuery=1', 'List tickets by any criteria' ],
 ;
 
+tie my %report_employees, 'Tie::IxHash',
+  'Employee Commission Report' => [ $fsurl.'search/report_employee_commission.html', '' ],
+  'Employee Audit Report' => [ $fsurl.'search/report_employee_audit.html', 'Employee audit report' ],
+;
+
 tie my %report_bill_event, 'Tie::IxHash',
   'All billing events' => [ $fsurl.'search/report_cust_event.html', 'All billing events for a date range' ],
   'Billing event errors' => [ $fsurl.'search/report_cust_event.html?failed=1', 'Failed credit cards, processor or printer problems, etc.' ],
@@ -313,22 +320,31 @@ $report_payments{'Unapplied Payment Aging'} = [ $fsurl.'search/report_unapplied_
 $report_payments{'Deleted Payments / Payment history table'} = [ $fsurl.'search/report_h_cust_pay.html', 'Deleted payments / payment history table' ]
   if $conf->exists('payment-history-report');
 
+tie my %report_credits, 'Tie::IxHash',
+  'Credit Report' => [ $fsurl.'search/report_cust_credit.html', 'Credit report (by employee and/or date range)' ],
+  'Unapplied Credits' => [ $fsurl.'search/report_cust_credit.html?unapplied=1', 'Unapplied credit report (by type and/or date range)' ],
+;
+
+tie my %report_refunds, 'Tie::IxHash',
+  'Refund Report' => [ $fsurl.'search/report_cust_refund.html', 'Refund report (by type and/or date range)' ],
+  'Unapplied Refunds' => [ $fsurl.'search/report_cust_refund.html?unapplied=1', 'Unapplied refund report (by type and/or date range)' ],
+;
+
+tie my %report_sales, 'Tie::IxHash',
+  'Sales, Credits and Receipts' => [ $fsurl.'graph/report_money_time.html', 'Sales, credits and receipts summary graph' ],
+  'Daily Sales, Credits and Receipts' => [ $fsurl.'graph/report_money_time_daily.html', 'Sales, credits and receipts (broken down by day) summary graph' ],
+  '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' ],
+;
+
 tie my %report_financial, 'Tie::IxHash';
-if($curuser->access_right('Financial reports')) {
+if( $curuser->access_right('Financial reports') ) {
 
   %report_financial = (
-    'Sales, Credits and Receipts' => [ $fsurl.'graph/report_money_time.html', 'Sales, credits and receipts summary graph' ],
-    'Daily Sales, Credits and Receipts' => [ $fsurl.'graph/report_money_time_daily.html', 'Sales, credits and receipts (broken down by day) summary graph' ],
-    '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' ],
-    'Employee Commission Report' => [ $fsurl.'search/report_employee_commission.html', '' ],
-    'Credit Report' => [ $fsurl.'search/report_cust_credit.html', 'Credit report (by employee and/or date range)' ],
-    'Unapplied Credits' => [ $fsurl.'search/report_cust_credit.html?unapplied=1', 'Unapplied credit report (by type and/or date range)' ],
-    'Refund Report' => [ $fsurl.'search/report_cust_refund.html', 'Refund report (by type and/or date range)' ],
-    'Unapplied Refunds' => [ $fsurl.'search/report_cust_refund.html?unapplied=1', 'Unapplied refund report (by type and/or date range)' ],
-    'Package Costs Report' => [ $fsurl.'graph/report_cust_pkg_cost.html', 'Package setup and recurring costs graph' ],
-    'Employee Audit Report' => [ $fsurl.'search/report_employee_audit.html', 'Employee audit report' ],
+    'Sales' => [ \%report_sales, 'Sales reports', ],
+    'Credits' => [ \%report_credits, 'Credit reports', ],
+    'Refunds' => [ \%report_refunds, 'Refund reports', ],
   );
   $report_financial{'A/R Aging'} = [ $fsurl.'search/report_receivables.html', 'Accounts Receivable Aging report' ];
   $report_financial{'Prepaid Income'} = [ $fsurl.'search/report_prepaid_income.html', 'Prepaid income (unearned revenue)  report' ];
@@ -355,37 +371,39 @@ tie my %report_logs, 'Tie::IxHash';
   || $curuser->access_right('Configuration');
 
 tie my %report_menu, 'Tie::IxHash';
-$report_menu{'Prospects'}   = [ \%report_prospects, 'Prospect reports' ]
+$report_menu{'Prospects'}      = [ \%report_prospects, 'Prospect reports' ]
   if $curuser->access_right('List prospects');
-$report_menu{'Quotations'}  = [ \%report_quotations, 'Quotation reports' ]
+$report_menu{'Quotations'}     = [ \%report_quotations, 'Quotation reports' ]
   if $curuser->access_right('List quotations');
-$report_menu{'Customers'}   = [ \%report_customers, 'Customer reports'  ]
+$report_menu{'Customers'}      = [ \%report_customers, 'Customer reports'  ]
   if $curuser->access_right('List customers');
-$report_menu{'Invoices'}    =  [ \%report_invoices,  'Invoice reports'   ]
+$report_menu{'Invoices'}       =  [ \%report_invoices,  'Invoice reports'   ]
   if $curuser->access_right('List invoices');
-$report_menu{'Discounts'}   =  [ \%report_discounts, 'Discount reports'  ]
+$report_menu{'Discounts'}      =  [ \%report_discounts, 'Discount reports'  ]
   if $curuser->access_right('Financial reports');
-$report_menu{'Payments'}    =  [ \%report_payments,  'Payment reports'   ]
+$report_menu{'Payments'}       =  [ \%report_payments,  'Payment reports'   ]
   if $curuser->access_right('Financial reports');
-$report_menu{'Packages'}    =  [ \%report_packages,  'Package reports'   ]
+$report_menu{'Packages'}       =  [ \%report_packages,  'Package reports'   ]
   if $curuser->access_right('List packages');
-$report_menu{'Services'}    =  [ \%report_services,  'Services reports'  ]
+$report_menu{'Services'}       =  [ \%report_services,  'Services reports'  ]
   if $curuser->access_right('List services');
-$report_menu{'Inventory'}    =  [ \%report_inventory,  'Inventory reports'  ]
+$report_menu{'Inventory'}      =  [ \%report_inventory,  'Inventory reports'  ]
   if $curuser->access_right('Configuration'); #XXX List inventory?
-$report_menu{'Usage'} =  [ \%report_rating,    'Usage reports'  ]
+$report_menu{'Usage'}          =  [ \%report_rating,    'Usage reports'  ]
   if $curuser->access_right('List rating data');
-$report_menu{'Tickets'}   = [ \%report_ticketing, 'Ticket reports' ]
+$report_menu{'Tickets'}        = [ \%report_ticketing, 'Ticket reports' ]
   if $conf->config('ticket_system')
   ;#&& FS::TicketSystem->access_right(\%session, 'Something');
+$report_menu{'Employees'}      =  [ \%report_employees, 'Employee reports'  ]
+  if $curuser->access_right('Financial reports');
 $report_menu{'Billing events'} =  [ \%report_bill_event, 'Billing events' ]
   if $curuser->access_right('Billing event reports');
-$report_menu{'Financial'}  = [ \%report_financial, 'Financial reports' ]
+$report_menu{'Financial'}      = [ \%report_financial, 'Financial reports' ]
   if $curuser->access_right('Financial reports') 
   or $curuser->access_right('Receivables report');
-$report_menu{'Logs'} = [ \%report_logs, 'System and email logs' ]
+$report_menu{'Logs'}           = [ \%report_logs, 'System and email logs' ]
   if (keys %report_logs); # empty if the user has no rights to it
-$report_menu{'SQL Query'}  = [ $fsurl.'search/report_sql.html', 'SQL Query' ]
+$report_menu{'SQL Query'}      = [ $fsurl.'search/report_sql.html', 'SQL Query']
   if $curuser->access_right('Raw SQL');
 
 tie my %tools_importing, 'Tie::IxHash',

-----------------------------------------------------------------------

Summary of changes:
 httemplate/elements/menu.html               |   86 ++++++++++++--------
 httemplate/search/report_cust_bill_pkg.html |  118 +++++++++++++++++++++++++++
 2 files changed, 170 insertions(+), 34 deletions(-)
 create mode 100644 httemplate/search/report_cust_bill_pkg.html




More information about the freeside-commits mailing list