combine ticket notification scrips, #15353
[freeside.git] / httemplate / search / report_receivables.cgi
index fdd3779..9c5c0e2 100755 (executable)
@@ -1,19 +1,39 @@
-<!-- mason kludge -->
-<%
+<& elements/cust_main_dayranges.html,
+                 'title'       => emt('Accounts Receivable Aging Summary'),
+                 'range_sub'   => \&balance,
+                 'payment_links' => 1,
+&>
+<%init>
 
-my $user = getotaker;
+die "access denied"
+  unless $FS::CurrentUser::CurrentUser->access_right('Receivables report')
+      or $FS::CurrentUser::CurrentUser->access_right('Financial reports');
 
-print header('Current Receivables Report Results');
+</%init>
+<%once>
 
-open (REPORT, "freeside-receivables-report -v $user |");
+#Example:
+#
+# my $balance = balance(
+#   $start, $end, $offset,
+#   'no_as'  => 1, #set to true when using in a WHERE clause (supress AS clause)
+#                 #or 0 / omit when using in a SELECT clause as a column
+#                 #  ("AS balance_$start_$end")
+#   'sum'    => 1, #set to true to get a SUM() of the values, for totals
+#
+#   #obsolete? options for totals (passed to cust_main::balance_date_sql)
+#   'total'  => 1, #set to true to remove all customer comparison clauses
+#   'join'   => $join,   #JOIN clause
+#   'where'  => \@where, #WHERE clause hashref (elements "AND"ed together)
+# )
 
-print '<PRE>';
-while(<REPORT>) {
-  print $_;
-}
-print '</PRE>';
-
-print '</BODY></HTML>';
+sub balance {
+  my($start, $end, $cutoff) = @_; #, %opt ?
 
-%>
+  FS::cust_main->balance_date_sql( $start, $end, 
+        'cutoff' => $cutoff,
+        'unapplied_date'=>1,
+  );
+}
 
+</%once>