|| $self->ut_foreign_key('billpkgnum', 'cust_bill_pkg', 'billpkgnum' )
|| $self->ut_number('taxnum') #cust_bill_pkg/tax_rate key, based on taxtype
|| $self->ut_enum('taxtype', [ qw( FS::cust_main_county FS::tax_rate ) ] )
- || $self->ut_foreign_key('pkgnum', 'cust_pkg', 'pkgnum' )
+ || $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;
qsearchs( 'cust_location', { 'locationnum' => $self->locationnum } );
}
+=item taxname
+
+Returns the tax name (for populating the itemdesc field).
+
+=cut
+
+sub taxname {
+ my $self = shift;
+ my $cust_main_county = FS::cust_main_county->by_key($self->taxnum)
+ or return '';
+ $cust_main_county->taxname || 'Tax';
+}
+
=item desc
Returns a description for this tax line item constituent. Currently this
} #for $i
} else {
# the more complicated case
- $log->warn("mismatched charges and tax links in pkg#$pkgnum",
+ $log->warning("mismatched charges and tax links in pkg#$pkgnum",
object => $cust_bill);
my $tax_amount = sum(map {$_->amount} @tax_links);
# remove all tax link records and recreate them to be 1:1 with
=cut
1;
-