summaryrefslogtreecommitdiff
path: root/FS/FS/cust_main_exemption.pm
diff options
context:
space:
mode:
authorIvan Kohler <ivan@freeside.biz>2012-05-08 15:34:25 -0700
committerIvan Kohler <ivan@freeside.biz>2012-05-08 15:34:25 -0700
commita68564e6856a7ea63763eeaf7962a5cb2df649af (patch)
tree45022b1dc0208ac6c3fdc5f413e25598c815dab7 /FS/FS/cust_main_exemption.pm
parent52cf6949df47667d9864f5807549aa68789ef2fa (diff)
separate tax exemption numbers for individual exemptions w/tax-cust_exempt-groups, RT#17658
Diffstat (limited to 'FS/FS/cust_main_exemption.pm')
-rw-r--r--FS/FS/cust_main_exemption.pm10
1 files changed, 10 insertions, 0 deletions
diff --git a/FS/FS/cust_main_exemption.pm b/FS/FS/cust_main_exemption.pm
index 06d22b7..c6f3d5e 100644
--- a/FS/FS/cust_main_exemption.pm
+++ b/FS/FS/cust_main_exemption.pm
@@ -3,6 +3,7 @@ package FS::cust_main_exemption;
use strict;
use base qw( FS::Record );
use FS::Record qw( qsearch qsearchs );
+use FS::Conf;
use FS::cust_main;
=head1 NAME
@@ -44,6 +45,9 @@ Customer (see L<FS::cust_main>)
taxname
+=item exempt_number
+
+Exemption number
=back
@@ -108,9 +112,15 @@ sub check {
$self->ut_numbern('exemptionnum')
|| $self->ut_foreign_key('custnum', 'cust_main', 'custnum')
|| $self->ut_text('taxname')
+ || $self->ut_textn('exempt_number')
;
return $error if $error;
+ my $conf = new FS::Conf;
+ if ( ! $self->exempt_number && $conf->exists('tax-cust_exempt-groups-require_individual_nums') ) {
+ return 'Tax exemption number required for '. $self->taxname. ' exemption';
+ }
+
$self->SUPER::check;
}