83 lines
2.7 KiB
Python
83 lines
2.7 KiB
Python
'''
|
|
Generate Hitex transmission files
|
|
|
|
The AS400 essentially transmits copies of the FINMAS and FINDET files, which can be found in STMDATA, directly to
|
|
the Hitex/Syn-fin/Applied. As such I used the record formats for those files to buld the MASTER and DETAIL record format strings
|
|
you see below.
|
|
|
|
I strongly doubt Hitex/Syn-fin/Applied require _all_ of the fields in these tables. Who requires what, though, remains
|
|
a mystery. I've listed the description of the fields as they appear in the AS400 in the order they need to be passed to
|
|
the format() command below.
|
|
|
|
* denotes fields that are definitely expanding.
|
|
|
|
FINMAS Fields, IN ORDER:
|
|
Address 1
|
|
Customer Name
|
|
Customer Number (4 digit bill to account)
|
|
Ship to Number (2 digit shipto sub-account)
|
|
* These 2 fields (6 digits) --> 10 digit account #
|
|
Ship to Name
|
|
Ship to Address 1
|
|
Ship to Address 2
|
|
Ship to City
|
|
Ship to State
|
|
Ship to Zip
|
|
Ship to Country
|
|
Country Code
|
|
Packing List Number
|
|
* 5 digit --> 10 digit
|
|
Shipping Suffix (?)
|
|
Box Number (?)
|
|
Stain Repellent Code
|
|
* 1 char --> 5 char
|
|
Backing Code
|
|
* 1 char --> 5 char
|
|
Complete Code (?)
|
|
Number of Labels Needed (?)
|
|
Date yyMMdd
|
|
* yyMMdd --> YYYYMMdd (Preferable, not required)
|
|
Finish Code
|
|
* 4 char --> 5 char
|
|
|
|
FINDET Fields, IN ORDER:
|
|
Packing List Number
|
|
* 5 digit --> 10 digit
|
|
Shipping Suffix (?)
|
|
Box Number (?)
|
|
Pattern Name
|
|
Style 1
|
|
Style 2
|
|
Color Number
|
|
Order Number
|
|
* 6 character --> 10 digit
|
|
P/O Number
|
|
Roll Number
|
|
* 5 digit --> 10 digit
|
|
Stain Repellent Code
|
|
* 1 char --> 5 char
|
|
Backing Code
|
|
* 1 char --> 5 char
|
|
Complete Code (?)
|
|
Cut off Yards
|
|
Cut off Eights
|
|
Finished Yards
|
|
Finished Eights
|
|
Finisher Invoice Number
|
|
Finisher BOL Number
|
|
Finisher Description
|
|
Application Code (?)
|
|
Finish Code
|
|
* 4 char --> 5 char
|
|
Customer Pattern
|
|
Customer Color
|
|
'''
|
|
|
|
MASTER_RECORD_FORMAT = '{:30s}{:30s}{:4s}{:2s}{:30s}{:30s}{:30s}{:20s}{:2s}{:05d}{:20s}{:10s}{:05d}{:1s}{:02d}{:1s}{:1s}{:1s}{:03d}{:06d}{:4s}'
|
|
DETAIL_RECORD_FORMAT = '{:05d}{:1s}{:02d}{:15s}{:>4s}{:06d}{:04d}{:6s}{:15s}{:05d}{:1s}{:1s}{:1s}{:03d}{:01d}{:03d}{:01d}{:7s}{:06d}{:15s}{:2}{:4s}{:15}{:20}'
|
|
|
|
if __name__ == '__main__':
|
|
print MASTER_RECORD_FORMAT.format('PER ROUTING GUIDE','', '', '', 'SUNBURY TEXTILE MILLS, INC.', 'MILLER STREET',
|
|
'', 'SUNBURY', 'PA', 17801, '', '', 54065, '', 0, '', '', '', 1, 160719, '')
|
|
#print DETAIL_RECORD_FORMAT.format(18342, ' ', 0, 'SYNTAX', 'P', 9953, 2301, 'U51959', '729005S', 25524, '', '', '', 62, 0, 0, 0, '251348', 65, '', '54', '', '', '15310/565/STRAWBERRY')
|