File Coverage

blib/lib/Finance/AMEX/Transaction/GRRCN/FeeRevenue.pm
Criterion Covered Total %
statement 34 34 100.0
branch 2 2 100.0
condition n/a
subroutine 21 21 100.0
pod 18 18 100.0
total 75 75 100.0


line stmt bran cond sub pod time code
1             package Finance::AMEX::Transaction::GRRCN::FeeRevenue 0.005;
2              
3 10     10   1264 use strict;
  10         23  
  10         245  
4 10     10   48 use warnings;
  10         18  
  10         234  
5              
6             # ABSTRACT: Parse AMEX Global Reconciliation (GRRCN) Fees and Revenues Record Rows
7              
8 10     10   40 use base 'Finance::AMEX::Transaction::GRRCN::Base';
  10         20  
  10         5162  
9              
10             sub field_map {
11 4     4 1 15 my ($self) = @_;
12              
13 4         68 my $map = [
14             {RECORD_TYPE => [1, 10]},
15             {PAYEE_MERCHANT_ID => [11, 15]},
16             {AMERICAN_EXPRESS_PAYMENT_NUMBER => [26, 10]},
17             {PAYMENT_DATE => [36, 8]},
18             {PAYMENT_CURRENCY => [44, 3]},
19             {SUBMISSION_MERCHANT_ID => [47, 15]},
20             {MERCHANT_LOCATION_ID => [62, 15]},
21             {FEE_OR_REVENUE_AMOUNT => [77, 16]},
22             {FEE_OR_REVENUE_DESCRIPTION => [93, 80]},
23             {ASSET_BILLING_AMOUNT => [173, 16]},
24             {ASSET_BILLING_DESCRIPTION => [189, 65]},
25             {ASSET_BILLING_TAX => [254, 16]},
26             {PAY_IN_GROSS_INDICATOR => [270, 1]},
27             {BATCH_CODE => [271, 3]},
28             {BILL_CODE => [274, 3]},
29             {FILLER1 => [277, 524]},
30             ];
31              
32 4 100       184 if ($self->file_version >= 3.01) {
33 1         2 pop @{$map}; # the last filler column changes for v3.01, so we remove it
  1         2  
34              
35 1         3 push @{$map} => (
  1         6  
36             {SELLER_ID => [277, 20]}, # v3.01
37             {FILLER1 => [267, 504]}, # v3.01
38             );
39             }
40              
41 4         71 return $map;
42             }
43              
44 2     2 1 541 sub type {return 'FEEREVENUE'}
45              
46 3     3 1 31 sub RECORD_TYPE {return $_[0]->_get_column('RECORD_TYPE')}
47 1     1 1 499 sub PAYEE_MERCHANT_ID {return $_[0]->_get_column('PAYEE_MERCHANT_ID')}
48 1     1 1 476 sub AMERICAN_EXPRESS_PAYMENT_NUMBER {return $_[0]->_get_column('AMERICAN_EXPRESS_PAYMENT_NUMBER')}
49 1     1 1 470 sub PAYMENT_DATE {return $_[0]->_get_column('PAYMENT_DATE')}
50 1     1 1 475 sub PAYMENT_CURRENCY {return $_[0]->_get_column('PAYMENT_CURRENCY')}
51 1     1 1 470 sub SUBMISSION_MERCHANT_ID {return $_[0]->_get_column('SUBMISSION_MERCHANT_ID')}
52 1     1 1 538 sub MERCHANT_LOCATION_ID {return $_[0]->_get_column('MERCHANT_LOCATION_ID')}
53 1     1 1 517 sub FEE_OR_REVENUE_AMOUNT {return $_[0]->_get_column('FEE_OR_REVENUE_AMOUNT')}
54 1     1 1 477 sub FEE_OR_REVENUE_DESCRIPTION {return $_[0]->_get_column('FEE_OR_REVENUE_DESCRIPTION')}
55 1     1 1 495 sub ASSET_BILLING_AMOUNT {return $_[0]->_get_column('ASSET_BILLING_AMOUNT')}
56 1     1 1 485 sub ASSET_BILLING_DESCRIPTION {return $_[0]->_get_column('ASSET_BILLING_DESCRIPTION')}
57 1     1 1 476 sub ASSET_BILLING_TAX {return $_[0]->_get_column('ASSET_BILLING_TAX')}
58 1     1 1 567 sub PAY_IN_GROSS_INDICATOR {return $_[0]->_get_column('PAY_IN_GROSS_INDICATOR')}
59 1     1 1 491 sub BATCH_CODE {return $_[0]->_get_column('BATCH_CODE')}
60 1     1 1 502 sub BILL_CODE {return $_[0]->_get_column('BILL_CODE')}
61 2     2 1 923 sub SELLER_ID {return $_[0]->_get_column('SELLER_ID')}
62              
63             1;
64              
65             __END__