=item taxnum - primary key (assigned automatically for new tax rates)
+=item district - tax district (optional)
+
=item city
=item county
$self->exempt_amount(0) unless $self->exempt_amount;
$self->ut_numbern('taxnum')
+ || $self->ut_alphan('district')
|| $self->ut_textn('city')
|| $self->ut_textn('county')
|| $self->ut_anything('state')
sub sql_taxclass_sameregion {
my $self = shift;
- my $same_query = 'SELECT taxclass FROM cust_main_county '.
+ my $same_query = 'SELECT DISTINCT taxclass FROM cust_main_county '.
' WHERE taxnum != ? AND country = ?';
my @same_param = ( 'taxnum', 'country' );
foreach my $opt_field (qw( state county )) {
my ($mon,$year) =
(localtime( $cust_bill_pkg->sdate || $invoice_date ) )[4,5];
$mon++;
- my $freq = $part_pkg->freq || 1;
+ my $freq = $cust_bill_pkg->freq;
+ unless ($freq) {
+ $freq = $part_pkg->freq || 1; # less trustworthy fallback
+ }
if ( $freq !~ /(\d+)$/ ) {
$dbh->rollback if $oldAutoCommit;
return "daily/weekly package definitions not (yet?)".
'taxnum' => $self->taxnum,
'year' => 1900+$year,
'month' => $mon,
- 'amount' => sprintf("%.2f", $addl ),
+ 'amount' => sprintf('%.2f', $addl ),
} );
if ($cust_bill_pkg->billpkgnum) {
$cust_tax_exempt_pkg->billpkgnum($cust_bill_pkg->billpkgnum);