X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fcust_credit.pm;h=f63d86f9919365a3e38bd061ec990cb039cdffe2;hb=817c1ce0e1cbcfd1f684222c66f46dd13b2d6dd7;hp=76fdecbdf9e77b426375a48c73f2180dfe24f462;hpb=7b40e0e045368d350529d78208be0e6124f94b5a;p=freeside.git diff --git a/FS/FS/cust_credit.pm b/FS/FS/cust_credit.pm index 76fdecbdf..f63d86f99 100644 --- a/FS/FS/cust_credit.pm +++ b/FS/FS/cust_credit.pm @@ -558,7 +558,7 @@ sub _upgrade_data { # class method $class->_upgrade_otaker(%opts); if ( !FS::upgrade_journal->is_done('cust_credit__tax_link') - and !$conf->exists('enable_taxproducts') ) { + and !$conf->config('tax_data_vendor') ) { # RT#25458: fix credit line item applications that should refer to a # specific tax allocation my @cust_credit_bill_pkg = qsearch({ @@ -852,16 +852,16 @@ sub credit_lineitems { foreach my $invnum ( sort { $a <=> $b } keys %cust_credit_bill ) { - my $arrayref_or_error = - $cust_main->calculate_taxes( + local $@; + my $arrayref_or_error = eval { $cust_main->calculate_taxes( $cust_bill_pkg{$invnum}, # list of taxable items that we're crediting $taxlisthash{$invnum}, # list of tax-item bindings $cust_bill_pkg{$invnum}->[0]->cust_bill->_date, # invoice time - ); + ) }; - unless ( ref( $arrayref_or_error ) ) { + if ( $@ ) { $dbh->rollback if $oldAutoCommit; - return "Error calculating taxes: $arrayref_or_error"; + return "Error calculating taxes: $@"; } my %tax_links; # {tax billpkgnum}{nontax billpkgnum}