[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