File Coverage

blib/lib/Finance/AMEX/Transaction/CBNOT/Detail.pm
Criterion Covered Total %
statement 134 134 100.0
branch n/a
condition n/a
subroutine 128 128 100.0
pod 125 125 100.0
total 387 387 100.0


line stmt bran cond sub pod time code
1             package Finance::AMEX::Transaction::CBNOT::Detail 0.005;
2              
3 9     9   49 use strict;
  9         18  
  9         216  
4 9     9   36 use warnings;
  9         15  
  9         188  
5              
6             # ABSTRACT: Parse AMEX Chargeback Notification Files (CBNOT) Detail Rows
7              
8 9     9   36 use base 'Finance::AMEX::Transaction::CBNOT::Base';
  9         18  
  9         24940  
9              
10             sub field_map {
11             return {
12 248     248 1 11804 REC_TYPE => [1, 1],
13             SE_NUMB => [7, 10],
14             CM_ACCT_NUMB => [27, 19],
15             CURRENT_CASE_NUMBER => [47, 11],
16             FINCAP_TRACKING_ID_A => [47, 11],
17             FINCAP_TRACKING_A_DATE => [47, 3],
18             FINCAP_TRACKING_A_PCID => [50, 6],
19             FINCAP_TRACKING_A_SEQUENCE => [56, 2],
20             CSS_CASE_NUMBER => [47, 7],
21             SS_CASE_NUMBER => [47, 9],
22             CURRENT_ACTION_NUMBER => [58, 2],
23             PREVIOUS_CASE_NUMBER => [60, 11],
24             CSS_P_CASE_NUMBER => [60, 11],
25             PREVIOUS_ACTION_NUMBER => [71, 2],
26             RESOLUTION => [73, 1],
27             FROM_SYSTEM => [74, 1],
28             REJECTS_TO_SYSTEM => [75, 1],
29             DISPUTES_TO_SYSTEM => [76, 1],
30             DATE_OF_ADJUSTMENT => [77, 8],
31             DATE_OF_CHARGE => [85, 8],
32             AMEX_ID => [93, 7],
33             CASE_TYPE => [105, 6],
34             LOC_NUMB => [111, 15],
35             CB_REAS_CODE => [126, 3],
36             CB_AMOUNT => [129, 17],
37             CB_ADJUSTMENT_NUMBER => [146, 6],
38             CB_RESOLUTION_ADJ_NUMBER => [152, 6],
39             CB_REFERENCE_CODE => [158, 12],
40             BILLED_AMOUNT => [183, 17],
41             SOC_AMOUNT => [200, 17],
42             SOC_INVOICE_NUMBER => [217, 6],
43             ROC_INVOICE_NUMBER => [223, 6],
44             FOREIGN_AMT => [229, 15],
45             CURRENCY => [244, 3],
46             SUPP_TO_FOLLOW => [247, 1],
47             CM_NAME1 => [248, 30],
48             CM_NAME2 => [278, 30],
49             CM_ADDR1 => [308, 30],
50             CM_ADDR2 => [338, 30],
51             CM_CITY_STATE => [368, 30],
52             CM_ZIP => [398, 9],
53             CM_FIRST_NAME_1 => [407, 12],
54             CM_MIDDLE_NAME_1 => [419, 12],
55             CM_LAST_NAME_1 => [431, 20],
56             CM_ORIG_ACCT_NUM => [451, 15],
57             CM_ORIG_NAME => [466, 30],
58             CM_ORIG_FIRST_NAME => [496, 12],
59             CM_ORIG_MIDDLE_NAME => [508, 12],
60             CM_ORIG_LAST_NAME => [520, 20],
61             NOTE1 => [540, 66],
62             NOTE2 => [606, 78],
63             NOTE3 => [684, 60],
64             NOTE4 => [744, 60],
65             NOTE5 => [804, 60],
66             NOTE6 => [864, 60],
67             NOTE7 => [924, 60],
68             TRIUMPH_SEQ_NO => [984, 2],
69             AIRLINE_TKT_NUM => [1031, 14],
70             AL_SEQUENCE_NUMBER => [1045, 2],
71             FOLIO_REF => [1047, 18],
72             MERCH_ORDER_NUM => [1065, 10],
73             MERCH_ORDER_DATE => [1075, 8],
74             CANC_NUM => [1083, 20],
75             CANC_DATE => [1103, 8],
76             FINCAP_TRACKING_ID => [1111, 11],
77             FINCAP_TRACKING_DATE => [1111, 3],
78             FINCAP_TRACKING_PCID => [1114, 6],
79             FINCAP_TRACKING_SEQUENCE => [1120, 2],
80             FINCAP_FILE_SEQ_NUM => [1122, 6],
81             FINCAP_BATCH_NUMBER => [1128, 4],
82             FINCAP_BATCH_INVOICE_DT => [1132, 8],
83             LABEL1 => [1140, 25],
84             DATA1 => [1165, 25],
85             LABEL2 => [1190, 25],
86             DATA2 => [1215, 25],
87             LABEL3 => [1240, 25],
88             DATA3 => [1265, 25],
89             LABEL4 => [1290, 25],
90             DATA4 => [1315, 25],
91             LABEL5 => [1340, 25],
92             DATA5 => [1365, 25],
93             LABEL6 => [1390, 25],
94             DATA6 => [1415, 25],
95             LABEL7 => [1440, 25],
96             DATA7 => [1465, 25],
97             LABEL8 => [1490, 25],
98             DATA8 => [1515, 25],
99             LABEL9 => [1540, 25],
100             DATA9 => [1565, 25],
101             LABEL10 => [1590, 25],
102             DATA10 => [1615, 25],
103             LABEL11 => [1640, 25],
104             DATA11 => [1665, 25],
105             CM_ACCNT_NUMB_EXD => [1690, 19],
106             CASE_NUMBER_EXD => [1715, 16],
107             IND_FORM_CODE => [1766, 2],
108             IND_REF_NUMBER => [1768, 30],
109             LOC_REF_NUMBER => [1801, 15],
110             PASSENGER_NAME => [1816, 20],
111             PASSENGER_FIRST_NAME => [1836, 12],
112             PASSENGER_MIDDLE_NAME => [1848, 12],
113             PASSENGER_LAST_NAME => [1860, 20],
114             SE_PROCESS_DATE => [1880, 3],
115             RETURN_DATE => [1883, 6],
116             CREDIT_RECEIPT_NUMBER => [1889, 15],
117             RETURN_TO_NAME => [1904, 24],
118             RETURN_TO_STREET => [1928, 17],
119             CARD_DEPOSIT => [1945, 1],
120             ASSURED_RESERVATION => [1946, 1],
121             RES_CANCELLED => [1947, 1],
122             RES_CANCELLED_DATE => [1948, 6],
123             CANCEL_ZONE => [1954, 2],
124             RESERVATION_MADE_FOR => [1955, 6],
125             RESERVATION_LOCATION => [1961, 20],
126             RESERVATION_MADE_ON => [1981, 6],
127             RENTAL_AGREEMENT_NUMBER => [1987, 20],
128             MERCHANDISE_TYPE => [2005, 6],
129             MERCHANDISE_RETURNED => [2025, 1],
130             RETURNED_NAME => [2026, 24],
131             RETURNED_DATE => [2050, 6],
132             RETURNED_HOW => [2056, 18],
133             RETURNED_REASON => [2064, 50],
134             STORE_CREDIT_RECEIVED => [2114, 1],
135             };
136             }
137              
138 4     4 1 1013 sub type {return 'DETAIL'}
139              
140 2     2 1 881 sub REC_TYPE {return $_[0]->_get_column('REC_TYPE')}
141 2     2 1 892 sub SE_NUMB {return $_[0]->_get_column('SE_NUMB')}
142 2     2 1 883 sub CM_ACCT_NUMB {return $_[0]->_get_column('CM_ACCT_NUMB')}
143 2     2 1 895 sub CURRENT_CASE_NUMBER {return $_[0]->_get_column('CURRENT_CASE_NUMBER')}
144 2     2 1 913 sub FINCAP_TRACKING_ID_A {return $_[0]->_get_column('FINCAP_TRACKING_ID_A')}
145 2     2 1 881 sub FINCAP_TRACKING_A_DATE {return $_[0]->_get_column('FINCAP_TRACKING_A_DATE')}
146 2     2 1 893 sub FINCAP_TRACKING_A_PCID {return $_[0]->_get_column('FINCAP_TRACKING_A_PCID')}
147 2     2 1 887 sub FINCAP_TRACKING_A_SEQUENCE {return $_[0]->_get_column('FINCAP_TRACKING_A_SEQUENCE')}
148 2     2 1 901 sub CSS_CASE_NUMBER {return $_[0]->_get_column('CSS_CASE_NUMBER')}
149 2     2 1 892 sub SS_CASE_NUMBER {return $_[0]->_get_column('SS_CASE_NUMBER')}
150 2     2 1 892 sub CURRENT_ACTION_NUMBER {return $_[0]->_get_column('CURRENT_ACTION_NUMBER')}
151 2     2 1 919 sub PREVIOUS_CASE_NUMBER {return $_[0]->_get_column('PREVIOUS_CASE_NUMBER')}
152 2     2 1 878 sub CSS_P_CASE_NUMBER {return $_[0]->_get_column('CSS_P_CASE_NUMBER')}
153 2     2 1 894 sub PREVIOUS_ACTION_NUMBER {return $_[0]->_get_column('PREVIOUS_ACTION_NUMBER')}
154 2     2 1 943 sub RESOLUTION {return $_[0]->_get_column('RESOLUTION')}
155 2     2 1 898 sub FROM_SYSTEM {return $_[0]->_get_column('FROM_SYSTEM')}
156 2     2 1 913 sub REJECTS_TO_SYSTEM {return $_[0]->_get_column('REJECTS_TO_SYSTEM')}
157 2     2 1 959 sub DISPUTES_TO_SYSTEM {return $_[0]->_get_column('DISPUTES_TO_SYSTEM')}
158 2     2 1 873 sub DATE_OF_ADJUSTMENT {return $_[0]->_get_column('DATE_OF_ADJUSTMENT')}
159 2     2 1 936 sub DATE_OF_CHARGE {return $_[0]->_get_column('DATE_OF_CHARGE')}
160 2     2 1 896 sub AMEX_ID {return $_[0]->_get_column('AMEX_ID')}
161 2     2 1 929 sub CASE_TYPE {return $_[0]->_get_column('CASE_TYPE')}
162 2     2 1 957 sub LOC_NUMB {return $_[0]->_get_column('LOC_NUMB')}
163 2     2 1 914 sub CB_REAS_CODE {return $_[0]->_get_column('CB_REAS_CODE')}
164 2     2 1 882 sub CB_AMOUNT {return $_[0]->_get_column('CB_AMOUNT')}
165 2     2 1 878 sub CB_ADJUSTMENT_NUMBER {return $_[0]->_get_column('CB_ADJUSTMENT_NUMBER')}
166 2     2 1 889 sub CB_RESOLUTION_ADJ_NUMBER {return $_[0]->_get_column('CB_RESOLUTION_ADJ_NUMBER')}
167 2     2 1 926 sub CB_REFERENCE_CODE {return $_[0]->_get_column('CB_REFERENCE_CODE')}
168 2     2 1 883 sub BILLED_AMOUNT {return $_[0]->_get_column('BILLED_AMOUNT')}
169 2     2 1 905 sub SOC_AMOUNT {return $_[0]->_get_column('SOC_AMOUNT')}
170 2     2 1 892 sub SOC_INVOICE_NUMBER {return $_[0]->_get_column('SOC_INVOICE_NUMBER')}
171 2     2 1 894 sub ROC_INVOICE_NUMBER {return $_[0]->_get_column('ROC_INVOICE_NUMBER')}
172 2     2 1 886 sub FOREIGN_AMT {return $_[0]->_get_column('FOREIGN_AMT')}
173 2     2 1 931 sub CURRENCY {return $_[0]->_get_column('CURRENCY')}
174 2     2 1 888 sub SUPP_TO_FOLLOW {return $_[0]->_get_column('SUPP_TO_FOLLOW')}
175 2     2 1 883 sub CM_NAME1 {return $_[0]->_get_column('CM_NAME1')}
176 2     2 1 943 sub CM_NAME2 {return $_[0]->_get_column('CM_NAME2')}
177 2     2 1 881 sub CM_ADDR1 {return $_[0]->_get_column('CM_ADDR1')}
178 2     2 1 944 sub CM_ADDR2 {return $_[0]->_get_column('CM_ADDR2')}
179 2     2 1 877 sub CM_CITY_STATE {return $_[0]->_get_column('CM_CITY_STATE')}
180 2     2 1 892 sub CM_ZIP {return $_[0]->_get_column('CM_ZIP')}
181 2     2 1 896 sub CM_FIRST_NAME_1 {return $_[0]->_get_column('CM_FIRST_NAME_1')}
182 2     2 1 886 sub CM_MIDDLE_NAME_1 {return $_[0]->_get_column('CM_MIDDLE_NAME_1')}
183 2     2 1 890 sub CM_LAST_NAME_1 {return $_[0]->_get_column('CM_LAST_NAME_1')}
184 2     2 1 910 sub CM_ORIG_ACCT_NUM {return $_[0]->_get_column('CM_ORIG_ACCT_NUM')}
185 2     2 1 877 sub CM_ORIG_NAME {return $_[0]->_get_column('CM_ORIG_NAME')}
186 2     2 1 946 sub CM_ORIG_FIRST_NAME {return $_[0]->_get_column('CM_ORIG_FIRST_NAME')}
187 2     2 1 952 sub CM_ORIG_MIDDLE_NAME {return $_[0]->_get_column('CM_ORIG_MIDDLE_NAME')}
188 2     2 1 879 sub CM_ORIG_LAST_NAME {return $_[0]->_get_column('CM_ORIG_LAST_NAME')}
189 2     2 1 901 sub NOTE1 {return $_[0]->_get_column('NOTE1')}
190 2     2 1 904 sub NOTE2 {return $_[0]->_get_column('NOTE2')}
191 2     2 1 878 sub NOTE3 {return $_[0]->_get_column('NOTE3')}
192 2     2 1 909 sub NOTE4 {return $_[0]->_get_column('NOTE4')}
193 2     2 1 877 sub NOTE5 {return $_[0]->_get_column('NOTE5')}
194 2     2 1 933 sub NOTE6 {return $_[0]->_get_column('NOTE6')}
195 2     2 1 941 sub NOTE7 {return $_[0]->_get_column('NOTE7')}
196 2     2 1 894 sub TRIUMPH_SEQ_NO {return $_[0]->_get_column('TRIUMPH_SEQ_NO')}
197 2     2 1 889 sub AIRLINE_TKT_NUM {return $_[0]->_get_column('AIRLINE_TKT_NUM')}
198 2     2 1 903 sub AL_SEQUENCE_NUMBER {return $_[0]->_get_column('AL_SEQUENCE_NUMBER')}
199 2     2 1 893 sub FOLIO_REF {return $_[0]->_get_column('FOLIO_REF')}
200 2     2 1 897 sub MERCH_ORDER_NUM {return $_[0]->_get_column('MERCH_ORDER_NUM')}
201 2     2 1 885 sub MERCH_ORDER_DATE {return $_[0]->_get_column('MERCH_ORDER_DATE')}
202 2     2 1 921 sub CANC_NUM {return $_[0]->_get_column('CANC_NUM')}
203 2     2 1 889 sub CANC_DATE {return $_[0]->_get_column('CANC_DATE')}
204 2     2 1 934 sub FINCAP_TRACKING_ID {return $_[0]->_get_column('FINCAP_TRACKING_ID')}
205 2     2 1 892 sub FINCAP_TRACKING_DATE {return $_[0]->_get_column('FINCAP_TRACKING_DATE')}
206 2     2 1 908 sub FINCAP_TRACKING_PCID {return $_[0]->_get_column('FINCAP_TRACKING_PCID')}
207 2     2 1 456 sub FINCAP_TRACKING_SEQUENCE {return $_[0]->_get_column('FINCAP_TRACKING_SEQUENCE')}
208 2     2 1 887 sub FINCAP_FILE_SEQ_NUM {return $_[0]->_get_column('FINCAP_FILE_SEQ_NUM')}
209 2     2 1 1012 sub FINCAP_BATCH_NUMBER {return $_[0]->_get_column('FINCAP_BATCH_NUMBER')}
210 2     2 1 888 sub FINCAP_BATCH_INVOICE_DT {return $_[0]->_get_column('FINCAP_BATCH_INVOICE_DT')}
211 2     2 1 975 sub LABEL1 {return $_[0]->_get_column('LABEL1')}
212 2     2 1 921 sub DATA1 {return $_[0]->_get_column('DATA1')}
213 2     2 1 882 sub LABEL2 {return $_[0]->_get_column('LABEL2')}
214 2     2 1 884 sub DATA2 {return $_[0]->_get_column('DATA2')}
215 2     2 1 896 sub LABEL3 {return $_[0]->_get_column('LABEL3')}
216 2     2 1 881 sub DATA3 {return $_[0]->_get_column('DATA3')}
217 2     2 1 880 sub LABEL4 {return $_[0]->_get_column('LABEL4')}
218 2     2 1 903 sub DATA4 {return $_[0]->_get_column('DATA4')}
219 2     2 1 879 sub LABEL5 {return $_[0]->_get_column('LABEL5')}
220 2     2 1 894 sub DATA5 {return $_[0]->_get_column('DATA5')}
221 2     2 1 881 sub LABEL6 {return $_[0]->_get_column('LABEL6')}
222 2     2 1 930 sub DATA6 {return $_[0]->_get_column('DATA6')}
223 2     2 1 913 sub LABEL7 {return $_[0]->_get_column('LABEL7')}
224 2     2 1 894 sub DATA7 {return $_[0]->_get_column('DATA7')}
225 2     2 1 907 sub LABEL8 {return $_[0]->_get_column('LABEL8')}
226 2     2 1 979 sub DATA8 {return $_[0]->_get_column('DATA8')}
227 2     2 1 882 sub LABEL9 {return $_[0]->_get_column('LABEL9')}
228 2     2 1 884 sub DATA9 {return $_[0]->_get_column('DATA9')}
229 2     2 1 885 sub LABEL10 {return $_[0]->_get_column('LABEL10')}
230 2     2 1 878 sub DATA10 {return $_[0]->_get_column('DATA10')}
231 2     2 1 909 sub LABEL11 {return $_[0]->_get_column('LABEL11')}
232 2     2 1 897 sub DATA11 {return $_[0]->_get_column('DATA11')}
233 2     2 1 464 sub CM_ACCNT_NUMB_EXD {return $_[0]->_get_column('CM_ACCNT_NUMB_EXD')}
234 2     2 1 885 sub CASE_NUMBER_EXD {return $_[0]->_get_column('CASE_NUMBER_EXD')}
235 2     2 1 880 sub IND_FORM_CODE {return $_[0]->_get_column('IND_FORM_CODE')}
236 2     2 1 896 sub IND_REF_NUMBER {return $_[0]->_get_column('IND_REF_NUMBER')}
237 2     2 1 898 sub LOC_REF_NUMBER {return $_[0]->_get_column('LOC_REF_NUMBER')}
238 2     2 1 906 sub PASSENGER_NAME {return $_[0]->_get_column('PASSENGER_NAME')}
239 2     2 1 927 sub PASSENGER_FIRST_NAME {return $_[0]->_get_column('PASSENGER_FIRST_NAME')}
240 2     2 1 901 sub PASSENGER_MIDDLE_NAME {return $_[0]->_get_column('PASSENGER_MIDDLE_NAME')}
241 2     2 1 948 sub PASSENGER_LAST_NAME {return $_[0]->_get_column('PASSENGER_LAST_NAME')}
242 2     2 1 907 sub SE_PROCESS_DATE {return $_[0]->_get_column('SE_PROCESS_DATE')}
243 2     2 1 896 sub RETURN_DATE {return $_[0]->_get_column('RETURN_DATE')}
244 2     2 1 930 sub CREDIT_RECEIPT_NUMBER {return $_[0]->_get_column('CREDIT_RECEIPT_NUMBER')}
245 2     2 1 989 sub RETURN_TO_NAME {return $_[0]->_get_column('RETURN_TO_NAME')}
246 2     2 1 886 sub RETURN_TO_STREET {return $_[0]->_get_column('RETURN_TO_STREET')}
247 2     2 1 888 sub CARD_DEPOSIT {return $_[0]->_get_column('CARD_DEPOSIT')}
248 2     2 1 915 sub ASSURED_RESERVATION {return $_[0]->_get_column('ASSURED_RESERVATION')}
249 2     2 1 936 sub RES_CANCELLED {return $_[0]->_get_column('RES_CANCELLED')}
250 2     2 1 897 sub RES_CANCELLED_DATE {return $_[0]->_get_column('RES_CANCELLED_DATE')}
251 2     2 1 953 sub CANCEL_ZONE {return $_[0]->_get_column('CANCEL_ZONE')}
252 2     2 1 901 sub RESERVATION_MADE_FOR {return $_[0]->_get_column('RESERVATION_MADE_FOR')}
253 2     2 1 879 sub RESERVATION_LOCATION {return $_[0]->_get_column('RESERVATION_LOCATION')}
254 2     2 1 884 sub RESERVATION_MADE_ON {return $_[0]->_get_column('RESERVATION_MADE_ON')}
255 2     2 1 886 sub RENTAL_AGREEMENT_NUMBER {return $_[0]->_get_column('RENTAL_AGREEMENT_NUMBER')}
256 2     2 1 875 sub MERCHANDISE_TYPE {return $_[0]->_get_column('MERCHANDISE_TYPE')}
257 2     2 1 894 sub MERCHANDISE_RETURNED {return $_[0]->_get_column('MERCHANDISE_RETURNED')}
258 2     2 1 877 sub RETURNED_NAME {return $_[0]->_get_column('RETURNED_NAME')}
259 2     2 1 877 sub RETURNED_DATE {return $_[0]->_get_column('RETURNED_DATE')}
260 2     2 1 900 sub RETURNED_HOW {return $_[0]->_get_column('RETURNED_HOW')}
261 2     2 1 899 sub RETURNED_REASON {return $_[0]->_get_column('RETURNED_REASON')}
262 2     2 1 967 sub STORE_CREDIT_RECEIVED {return $_[0]->_get_column('STORE_CREDIT_RECEIVED')}
263              
264             1;
265              
266             __END__