File Coverage

blib/lib/Finance/AMEX/Transaction/GRRCN/Submission.pm
Criterion Covered Total %
statement 43 43 100.0
branch n/a
condition n/a
subroutine 36 36 100.0
pod 33 33 100.0
total 112 112 100.0


line stmt bran cond sub pod time code
1             package Finance::AMEX::Transaction::GRRCN::Submission 0.005;
2              
3 9     9   60 use strict;
  9         16  
  9         226  
4 9     9   38 use warnings;
  9         15  
  9         199  
5              
6             # ABSTRACT: Parse AMEX Global Reconciliation (GRRCN) Submission or summary of charge (SOC) Rows
7              
8 9     9   39 use base 'Finance::AMEX::Transaction::GRRCN::Base';
  9         16  
  9         7691  
9              
10             sub field_map {
11 6     6 1 29 my ($self) = @_;
12              
13             return [
14 6         158 {RECORD_TYPE => [1, 10]},
15             {PAYEE_MERCHANT_ID => [11, 15]},
16             {SETTLEMENT_ACCOUNT_TYPE_CODE => [26, 3]},
17             {AMERICAN_EXPRESS_PAYMENT_NUMBER => [29, 10]},
18             {PAYMENT_DATE => [39, 8]},
19             {PAYMENT_CURRENCY => [47, 3]},
20             {SUBMISSION_MERCHANT_ID => [50, 15]},
21             {BUSINESS_SUBMISSION_DATE => [65, 8]},
22             {AMERICAN_EXPRESS_PROCESSING_DATE => [73, 8]},
23             {SUBMISSION_INVOICE_NUMBER => [81, 15]},
24             {SUBMISSION_CURRENCY => [96, 3]},
25             {FILLER1 => [99, 15]},
26             {SUBMISSION_EXCHANGE_RATE => [114, 15]},
27             {SUBMISSION_GROSS_AMOUNT_IN_SUBMISSION_CURRENCY => [129, 16]},
28             {SUBMISSION_GROSS_AMOUNT_IN_PAYMENT_CURRENCY => [145, 16]},
29             {SUBMISSION_DISCOUNT_AMOUNT => [161, 16]},
30             {SUBMISSION_SERVICE_FEE_AMOUNT => [177, 16]},
31             {SUBMISSION_TAX_AMOUNT => [193, 16]},
32             {SUBMISSION_NET_AMOUNT => [209, 16]},
33             {SUBMISSION_DISCOUNT_RATE => [225, 7]},
34             {SUBMISSION_TAX_RATE => [232, 7]},
35             {TRANSACTION_COUNT => [239, 7]},
36             {TRACKING_ID => [246, 11]},
37             {INSTALLMENT_NUMBER => [257, 5]},
38             {ACCELERATION_NUMBER => [262, 9]},
39             {ORIGINAL_SETTLEMENT_DATE => [271, 8]},
40             {ACCELERATION_DATE => [279, 8]},
41             {NUMBER_OF_DAYS_IN_ADVANCE => [287, 5]},
42             {SUBMISSION_ACCELERATION_FEE_AMOUNT => [292, 16]},
43             {SUBMISSION_ACCELERATION_FEE_NET_AMOUNT => [308, 16]},
44             {SUBMISSION_DEBIT_GROSS_AMOUNT => [324, 16]},
45             {SUBMISSION_CREDIT_GROSS_AMOUNT => [340, 16]},
46             {FILLER2 => [356, 445]},
47             ];
48             }
49              
50 6     6 1 1488 sub type {return 'SUBMISSION'}
51              
52 3     3 1 53 sub RECORD_TYPE {return $_[0]->_get_column('RECORD_TYPE')}
53 3     3 1 1489 sub PAYEE_MERCHANT_ID {return $_[0]->_get_column('PAYEE_MERCHANT_ID')}
54 3     3 1 1423 sub SETTLEMENT_ACCOUNT_TYPE_CODE {return $_[0]->_get_column('SETTLEMENT_ACCOUNT_TYPE_CODE')}
55 3     3 1 1458 sub AMERICAN_EXPRESS_PAYMENT_NUMBER {return $_[0]->_get_column('AMERICAN_EXPRESS_PAYMENT_NUMBER')}
56 3     3 1 1459 sub PAYMENT_DATE {return $_[0]->_get_column('PAYMENT_DATE')}
57 3     3 1 1446 sub PAYMENT_CURRENCY {return $_[0]->_get_column('PAYMENT_CURRENCY')}
58 3     3 1 1430 sub SUBMISSION_MERCHANT_ID {return $_[0]->_get_column('SUBMISSION_MERCHANT_ID')}
59 3     3 1 1397 sub BUSINESS_SUBMISSION_DATE {return $_[0]->_get_column('BUSINESS_SUBMISSION_DATE')}
60 3     3 1 1405 sub AMERICAN_EXPRESS_PROCESSING_DATE {return $_[0]->_get_column('AMERICAN_EXPRESS_PROCESSING_DATE')}
61 3     3 1 1452 sub SUBMISSION_INVOICE_NUMBER {return $_[0]->_get_column('SUBMISSION_INVOICE_NUMBER')}
62 3     3 1 1444 sub SUBMISSION_CURRENCY {return $_[0]->_get_column('SUBMISSION_CURRENCY')}
63 3     3 1 1451 sub SUBMISSION_EXCHANGE_RATE {return $_[0]->_get_column('SUBMISSION_EXCHANGE_RATE')}
64              
65             sub SUBMISSION_GROSS_AMOUNT_IN_SUBMISSION_CURRENCY {
66 3     3 1 1421 return $_[0]->_get_column('SUBMISSION_GROSS_AMOUNT_IN_SUBMISSION_CURRENCY');
67             }
68 3     3 1 1404 sub SUBMISSION_GROSS_AMOUNT_IN_PAYMENT_CURRENCY {return $_[0]->_get_column('SUBMISSION_GROSS_AMOUNT_IN_PAYMENT_CURRENCY')}
69 3     3 1 1416 sub SUBMISSION_DISCOUNT_AMOUNT {return $_[0]->_get_column('SUBMISSION_DISCOUNT_AMOUNT')}
70 3     3 1 1443 sub SUBMISSION_SERVICE_FEE_AMOUNT {return $_[0]->_get_column('SUBMISSION_SERVICE_FEE_AMOUNT')}
71 3     3 1 1461 sub SUBMISSION_TAX_AMOUNT {return $_[0]->_get_column('SUBMISSION_TAX_AMOUNT')}
72 3     3 1 1469 sub SUBMISSION_NET_AMOUNT {return $_[0]->_get_column('SUBMISSION_NET_AMOUNT')}
73 3     3 1 1399 sub SUBMISSION_DISCOUNT_RATE {return $_[0]->_get_column('SUBMISSION_DISCOUNT_RATE')}
74 3     3 1 1419 sub SUBMISSION_TAX_RATE {return $_[0]->_get_column('SUBMISSION_TAX_RATE')}
75 3     3 1 1448 sub TRANSACTION_COUNT {return $_[0]->_get_column('TRANSACTION_COUNT')}
76 3     3 1 1513 sub TRACKING_ID {return $_[0]->_get_column('TRACKING_ID')}
77 3     3 1 1473 sub INSTALLMENT_NUMBER {return $_[0]->_get_column('INSTALLMENT_NUMBER')}
78 3     3 1 1478 sub ACCELERATION_NUMBER {return $_[0]->_get_column('ACCELERATION_NUMBER')}
79 3     3 1 1417 sub ORIGINAL_SETTLEMENT_DATE {return $_[0]->_get_column('ORIGINAL_SETTLEMENT_DATE')}
80 3     3 1 1431 sub ACCELERATION_DATE {return $_[0]->_get_column('ACCELERATION_DATE')}
81 3     3 1 1424 sub NUMBER_OF_DAYS_IN_ADVANCE {return $_[0]->_get_column('NUMBER_OF_DAYS_IN_ADVANCE')}
82 3     3 1 1452 sub SUBMISSION_ACCELERATION_FEE_AMOUNT {return $_[0]->_get_column('SUBMISSION_ACCELERATION_FEE_AMOUNT')}
83 3     3 1 1454 sub SUBMISSION_ACCELERATION_FEE_NET_AMOUNT {return $_[0]->_get_column('SUBMISSION_ACCELERATION_FEE_NET_AMOUNT')}
84 3     3 1 1486 sub SUBMISSION_DEBIT_GROSS_AMOUNT {return $_[0]->_get_column('SUBMISSION_DEBIT_GROSS_AMOUNT')}
85 3     3 1 1434 sub SUBMISSION_CREDIT_GROSS_AMOUNT {return $_[0]->_get_column('SUBMISSION_CREDIT_GROSS_AMOUNT')}
86              
87             1;
88              
89             __END__