projects
/
freeside.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
f0034d8
)
padding with lines of all 9999s to blocks of 10 lines, RT#33622
author
Ivan Kohler
<ivan@freeside.biz>
Thu, 25 Jun 2015 17:33:06 +0000
(10:33 -0700)
committer
Ivan Kohler
<ivan@freeside.biz>
Thu, 25 Jun 2015 17:33:06 +0000
(10:33 -0700)
FS/FS/pay_batch/nacha.pm
patch
|
blob
|
history
diff --git
a/FS/FS/pay_batch/nacha.pm
b/FS/FS/pay_batch/nacha.pm
index
c8d784d
..
0361304
100644
(file)
--- a/
FS/FS/pay_batch/nacha.pm
+++ b/
FS/FS/pay_batch/nacha.pm
@@
-174,6
+174,15
@@
$DEBUG = 0;
my $batchnum = substr( ('0'x7). $pay_batch->batchnum, -7);
my $batchnum = substr( ('0'x7). $pay_batch->batchnum, -7);
+ my $lines = $batchcount + 4;
+ my $blocks = int($lines/10);
+ my $fill = '';
+
+ if ( my $remainder = $lines % 10 ) {
+ $blocks++;
+ $fill = ("\n".('9'x94))x( 10 - $remainder );
+ }
+
warn "building Batch & File Control Records\n" if $DEBUG;
###
warn "building Batch & File Control Records\n" if $DEBUG;
###
@@
-199,12
+208,18
@@
$DEBUG = 0;
'9'. #Record Type Code
'000001'. #Batch Counter (# of batch header recs)
'9'. #Record Type Code
'000001'. #Batch Counter (# of batch header recs)
- sprintf('%06d', $b
atchcount + 4). #num of physical blocks on the file..?
+ sprintf('%06d', $b
locks). #num of physical blocks on the file
sprintf('%08d', $batchcount). #total # of entry detail and addenda
$entry_hash.
sprintf('%012.0f', $batchtotal * 100). #Debit total
'000000000000'. #Credit total
sprintf('%08d', $batchcount). #total # of entry detail and addenda
$entry_hash.
sprintf('%012.0f', $batchtotal * 100). #Debit total
'000000000000'. #Credit total
- ( ' 'x39 ) #Reserved / blank
+ ( ' 'x39 ). #Reserved / blank
+
+ ###
+ # Pad with 9999 records to blocks of 10
+ ###
+
+ $fill
},
},