projects
/
freeside.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
5979429
)
update warnings re: census tract length so real errors are easier to spot, RT#86245
author
Ivan Kohler
<ivan@freeside.biz>
Thu, 3 Mar 2022 20:25:06 +0000
(12:25 -0800)
committer
Ivan Kohler
<ivan@freeside.biz>
Thu, 3 Mar 2022 20:25:06 +0000
(12:25 -0800)
FS/FS/Report/FCC_477.pm
patch
|
blob
|
history
diff --git
a/FS/FS/Report/FCC_477.pm
b/FS/FS/Report/FCC_477.pm
index
760f6f2
..
29505f8
100644
(file)
--- a/
FS/FS/Report/FCC_477.pm
+++ b/
FS/FS/Report/FCC_477.pm
@@
-320,7
+320,7
@@
sub report {
my $num_errors = 0;
foreach my $row (@$data) {
if ( $class->can($check_method) ) { # they don't all have these
my $num_errors = 0;
foreach my $row (@$data) {
if ( $class->can($check_method) ) { # they don't all have these
- my $eh = $class->$check_method( $row );
+ my $eh = $class->$check_method( $row
, 'date'=>$opt{'date'}
);
$num_errors++ if keys(%$eh);
push @$error, $eh
}
$num_errors++ if keys(%$eh);
push @$error, $eh
}
@@
-442,12
+442,19
@@
sub fbs_sql {
sub fbs_check {
my $class = shift;
my $row = shift;
sub fbs_check {
my $class = shift;
my $row = shift;
+
+ my %opt = @_;
+ my $date = $opt{date} || time;
+ my $census_digits = ($date < 1601449200) ? 11 : 15; # 9/30/2020, halfway
+ # between the two filing
+ # dates when it changed
+
my %e;
#censustract
if ( length($row->[0]) == 0 ) {
$e{'censustract_null'} = 'The package location has no census tract.';
my %e;
#censustract
if ( length($row->[0]) == 0 ) {
$e{'censustract_null'} = 'The package location has no census tract.';
- } elsif ($row->[0] !~ /^\d{
11
}$/) {
- $e{'censustract_bad'} =
'The census tract must be exactly 11 digits.'
;
+ } elsif ($row->[0] !~ /^\d{
$census_digits
}$/) {
+ $e{'censustract_bad'} =
"The census tract must be exactly $census_digits digits."
;
}
#technology
}
#technology
@@
-515,12
+522,18
@@
sub fvs_sql {
sub fvs_check {
my $class = shift;
my $row = shift;
sub fvs_check {
my $class = shift;
my $row = shift;
+ my %opt = @_;
+ my $date = $opt{date} || time;
+ my $census_digits = ($date < 1601449200) ? 11 : 15; # 9/30/2020, halfway
+ # between the two filing
+ # dates when it changed
+
my %e;
#censustract
if ( length($row->[0]) == 0 ) {
$e{'censustract_null'} = 'The package location has no census tract.';
my %e;
#censustract
if ( length($row->[0]) == 0 ) {
$e{'censustract_null'} = 'The package location has no census tract.';
- } elsif ($row->[0] !~ /^\d{
11
}$/) {
- $e{'censustract_bad'} =
'The census tract must be exactly 11 digits.'
;
+ } elsif ($row->[0] !~ /^\d{
$census_digits
}$/) {
+ $e{'censustract_bad'} =
"The census tract must be exactly $census_digits digits."
;
}
return \%e;
}
}
return \%e;
}