[freeside-commits] branch FREESIDE_4_BRANCH updated. ecd3448a5df4a9cda68d16a69356154c70db8703

Mark Wells mark at 420.am
Tue May 10 13:10:05 PDT 2016


The branch, FREESIDE_4_BRANCH has been updated
       via  ecd3448a5df4a9cda68d16a69356154c70db8703 (commit)
       via  1c4846d933aa91c399b3b38bc7a83f5bada4b745 (commit)
      from  b30e9711d10867152b7fc9312aff0fa035bdaffe (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 ecd3448a5df4a9cda68d16a69356154c70db8703
Author: Mark Wells <mark at freeside.biz>
Date:   Tue May 10 12:57:54 2016 -0700

    fix voided invoice report vs. customer classes, similar to #37243

diff --git a/httemplate/search/report_cust_bill_void.html b/httemplate/search/report_cust_bill_void.html
index 91209ae..65cce5f 100644
--- a/httemplate/search/report_cust_bill_void.html
+++ b/httemplate/search/report_cust_bill_void.html
@@ -24,7 +24,7 @@
       label         => mt('Customer Class'),
       field         => 'cust_classnum',
       multiple      => 1,
-     'pre_options'  => [ '' => emt('(none)') ],
+     'pre_options'  => [ '0' => emt('(none)') ],
      'all_selected' => 1,
   &>
 

commit 1c4846d933aa91c399b3b38bc7a83f5bada4b745
Author: Mark Wells <mark at freeside.biz>
Date:   Tue May 10 12:57:18 2016 -0700

    bulk void script, #42360

diff --git a/bin/bulk_void b/bin/bulk_void
new file mode 100755
index 0000000..a142818
--- /dev/null
+++ b/bin/bulk_void
@@ -0,0 +1,75 @@
+#!/usr/bin/perl
+
+use FS::Misc::Getopt;
+use FS::Record qw(qsearch qsearchs dbh);
+
+getopts('cpifXr:');
+my $dbh = dbh;
+$FS::UID::AutoCommit = 0;
+
+sub usage() {
+  "Usage: bulk_void  -s start -e end
+                  -r void_reason
+                  { -c | -p | -i }
+                  [ -X ]
+                  <user>
+-s, -e: date range (required)
+-r: void reason text (required)
+-c, -p, -i, -f: void credits, payments, invoices
+-X: commit changes
+";
+}
+
+if (!$opt{start} or !$opt{end} or !$opt{r}) {
+  die usage;
+}
+
+print "DRY RUN--changes will not be committed.\n" unless $opt{X};
+
+my $date = " WHERE _date >= $opt{start} AND _date <= $opt{end}";
+
+my %tables = (
+  c => 'cust_credit',
+  p => 'cust_pay',
+  i => 'cust_bill',
+);
+
+my $reason = $opt{r};
+
+foreach my $k (keys %tables) {
+  next unless $opt{$k};
+  my $table = $tables{$k};
+  debug("$table:");
+  my $done_count = 0;
+  my $error_count = 0;
+
+  my $cursor = FS::Cursor->new({
+    table     => $table,
+    extra_sql => $date,
+  });
+  my $error;
+  while (my $record = $cursor->fetch) {
+    $error = $record->void($reason);
+    if ( $error ) {
+      $error = "$table #" . $record->get($record->primary_key) . ": $error";
+      print "$error\n";
+      $error_count++;
+      if ( $opt{X} ) {
+        $dbh->rollback;
+        exit(1);
+      }
+    } else {
+      $done_count++;
+    }
+  }
+  print " $table voided: $done_count\n errors: $error_count\n";
+}
+
+if ( $opt{X} ) {
+  $dbh->commit;
+  print "Committed changes.\n";
+} else {
+  $dbh->rollback;
+  print "Reverted changes.\n";
+}
+

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

Summary of changes:
 bin/bulk_void                                |   75 ++++++++++++++++++++++++++
 httemplate/search/report_cust_bill_void.html |    2 +-
 2 files changed, 76 insertions(+), 1 deletion(-)
 create mode 100755 bin/bulk_void




More information about the freeside-commits mailing list