X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2Fcust_tax_exempt_pkg_void.pm;h=ed793d53be80aa028fa2562976c663a78a40471e;hb=672c4452d590bc853f21f016b291496651156c8b;hp=51c85b463da2cc21e7df1e1e0079739a16c4136a;hpb=f24c4bebce257bfcc61ba07fd3d16c5c0d730071;p=freeside.git diff --git a/FS/FS/cust_tax_exempt_pkg_void.pm b/FS/FS/cust_tax_exempt_pkg_void.pm index 51c85b463..ed793d53b 100644 --- a/FS/FS/cust_tax_exempt_pkg_void.pm +++ b/FS/FS/cust_tax_exempt_pkg_void.pm @@ -110,15 +110,26 @@ and replace methods. sub check { my $self = shift; - my $error = + my $error = $self->ut_number('exemptpkgnum') || $self->ut_foreign_key('billpkgnum', 'cust_bill_pkg_void', 'billpkgnum' ) - || $self->ut_foreign_key('taxnum', 'cust_main_county', 'taxnum') - || $self->ut_number('year') - || $self->ut_number('month') + || $self->ut_enum('taxtype', [ 'FS::cust_main_county', 'FS::tax_rate' ]) + || $self->ut_number('taxnum') + || $self->ut_numbern('year') + || $self->ut_numbern('month') || $self->ut_numbern('creditbillpkgnum') #no FK check, will have been del'ed || $self->ut_money('amount') + || $self->ut_flag('exempt_cust') + || $self->ut_flag('exempt_setup') + || $self->ut_flag('exempt_recur') + || $self->ut_flag('exempt_cust_taxname') + || $self->ut_flag('exempt_monthly') ; + + $self->get('taxtype') =~ /^FS::(\w+)$/; + my $rate_table = $1; + $error ||= $self->ut_foreign_key('taxnum', $rate_table, 'taxnum'); + return $error if $error; $self->SUPER::check;