fix TeleAPI import (what kind of crack was Christopher smoking that he couldn't fix...
[freeside.git] / FS / FS / cust_bill_pkg_void.pm
index 9bfd41f..883869b 100644 (file)
@@ -115,7 +115,7 @@ freeform string (deprecated)
 
 =item reasonnum 
 
-reason for voiding the payment (see L<FS::reson>)
+reason for voiding the payment (see L<FS::reason>)
 
 =back
 
@@ -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);