[freeside-commits] branch FREESIDE_4_BRANCH updated. e8a2419cd7a38f6861c9826143ac16b923a69111
Mark Wells
mark at 420.am
Mon Nov 14 00:05:25 PST 2016
The branch, FREESIDE_4_BRANCH has been updated
via e8a2419cd7a38f6861c9826143ac16b923a69111 (commit)
from 60f03007647bdd937354846c83f33475abe1f150 (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 e8a2419cd7a38f6861c9826143ac16b923a69111
Author: Mark Wells <mark at freeside.biz>
Date: Sun Nov 13 23:58:32 2016 -0800
fix upgrade issues with old voided tax records, #73360
diff --git a/FS/FS/cust_bill_pkg_tax_location.pm b/FS/FS/cust_bill_pkg_tax_location.pm
index 7c67c2d..4a641be 100644
--- a/FS/FS/cust_bill_pkg_tax_location.pm
+++ b/FS/FS/cust_bill_pkg_tax_location.pm
@@ -125,7 +125,7 @@ sub check {
|| $self->ut_number('pkgnum', 'cust_pkg', 'pkgnum' )
|| $self->ut_foreign_key('locationnum', 'cust_location', 'locationnum' )
|| $self->ut_money('amount')
- || $self->ut_foreign_key('taxable_billpkgnum', 'cust_bill_pkg', 'billpkgnum')
+ || $self->ut_foreign_keyn('taxable_billpkgnum', 'cust_bill_pkg', 'billpkgnum')
;
return $error if $error;
diff --git a/FS/FS/cust_bill_pkg_tax_location_void.pm b/FS/FS/cust_bill_pkg_tax_location_void.pm
index 7b79e6f..bb4a5af 100644
--- a/FS/FS/cust_bill_pkg_tax_location_void.pm
+++ b/FS/FS/cust_bill_pkg_tax_location_void.pm
@@ -119,7 +119,7 @@ sub check {
|| $self->ut_number('pkgnum', 'cust_pkg', 'pkgnum' )
|| $self->ut_foreign_key('locationnum', 'cust_location', 'locationnum' )
|| $self->ut_money('amount')
- || $self->ut_foreign_key('taxable_billpkgnum', 'cust_bill_pkg_void', 'billpkgnum')
+ || $self->ut_foreign_keyn('taxable_billpkgnum', 'cust_bill_pkg_void', 'billpkgnum')
;
return $error if $error;
diff --git a/FS/FS/cust_bill_pkg_void.pm b/FS/FS/cust_bill_pkg_void.pm
index 9bfd41f..2cbfa02 100644
--- a/FS/FS/cust_bill_pkg_void.pm
+++ b/FS/FS/cust_bill_pkg_void.pm
@@ -296,6 +296,7 @@ sub _upgrade_data { # class method
my $error;
# fix voids with tax from before July 2013, when the taxable_billpkgnum
# field was added to the void table
+ local $FS::Record::nowarn_classload = 1;
my $search = FS::Cursor->new({
'table' => 'cust_bill_pkg_tax_location_void',
'hashref' => { 'taxable_billpkgnum' => '' }
@@ -307,11 +308,14 @@ sub _upgrade_data { # class method
my $unvoid = qsearchs({
'table' => 'h_cust_bill_pkg_tax_location',
'hashref' => { 'billpkgtaxlocationnum' => $num },
+ 'extra_sql' => ' AND taxable_billpkgnum IS NOT NULL',
'order_by' => ' ORDER BY history_date DESC LIMIT 1'
});
if (!$unvoid) {
# should never happen
- die "billpkgtaxlocationnum $num: could not find pre-void history record to restore taxable_billpkgnum.";
+ # but should this be fatal? or wait until someone actually tries to
+ # use the record?
+ warn "billpkgtaxlocationnum $num: could not find pre-void history record to restore taxable_billpkgnum.";
}
if ($unvoid) {
$void->set('taxable_billpkgnum', $unvoid->taxable_billpkgnum);
-----------------------------------------------------------------------
Summary of changes:
FS/FS/cust_bill_pkg_tax_location.pm | 2 +-
FS/FS/cust_bill_pkg_tax_location_void.pm | 2 +-
FS/FS/cust_bill_pkg_void.pm | 6 +++++-
3 files changed, 7 insertions(+), 3 deletions(-)
More information about the freeside-commits
mailing list