hippo 0.0.4 → 0.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG +4 -5
- data/README.md +10 -5
- data/lib/hippo/parser.rb +19 -9
- data/lib/hippo/transaction_sets/HIPAA_276/L2000A.rb +7 -3
- data/lib/hippo/transaction_sets/HIPAA_276/L2000B.rb +7 -3
- data/lib/hippo/transaction_sets/HIPAA_276/L2000C.rb +7 -3
- data/lib/hippo/transaction_sets/HIPAA_276/L2000D.rb +15 -8
- data/lib/hippo/transaction_sets/HIPAA_276/L2000E.rb +12 -7
- data/lib/hippo/transaction_sets/HIPAA_276/L2100A.rb +3 -2
- data/lib/hippo/transaction_sets/HIPAA_276/L2100B.rb +2 -1
- data/lib/hippo/transaction_sets/HIPAA_276/L2100C.rb +4 -2
- data/lib/hippo/transaction_sets/HIPAA_276/L2100D.rb +4 -2
- data/lib/hippo/transaction_sets/HIPAA_276/L2100E.rb +1 -1
- data/lib/hippo/transaction_sets/HIPAA_276/L2200D.rb +13 -12
- data/lib/hippo/transaction_sets/HIPAA_276/L2200E.rb +13 -12
- data/lib/hippo/transaction_sets/HIPAA_276/L2210D.rb +4 -3
- data/lib/hippo/transaction_sets/HIPAA_276/L2210E.rb +4 -3
- data/lib/hippo/transaction_sets/HIPAA_276/base.rb +31 -27
- data/lib/hippo/transaction_sets/HIPAA_277/L2000A.rb +11 -4
- data/lib/hippo/transaction_sets/HIPAA_277/L2000B.rb +13 -6
- data/lib/hippo/transaction_sets/HIPAA_277/L2000C.rb +13 -6
- data/lib/hippo/transaction_sets/HIPAA_277/L2000D.rb +12 -6
- data/lib/hippo/transaction_sets/HIPAA_277/L2000E.rb +11 -6
- data/lib/hippo/transaction_sets/HIPAA_277/L2100A.rb +4 -2
- data/lib/hippo/transaction_sets/HIPAA_277/L2100B.rb +2 -1
- data/lib/hippo/transaction_sets/HIPAA_277/L2100C.rb +4 -2
- data/lib/hippo/transaction_sets/HIPAA_277/L2100D.rb +3 -2
- data/lib/hippo/transaction_sets/HIPAA_277/L2100E.rb +1 -1
- data/lib/hippo/transaction_sets/HIPAA_277/L2200A.rb +3 -3
- data/lib/hippo/transaction_sets/HIPAA_277/L2200B.rb +10 -7
- data/lib/hippo/transaction_sets/HIPAA_277/L2200C.rb +14 -8
- data/lib/hippo/transaction_sets/HIPAA_277/L2200D.rb +13 -9
- data/lib/hippo/transaction_sets/HIPAA_277/L2200E.rb +12 -11
- data/lib/hippo/transaction_sets/HIPAA_277/L2220D.rb +7 -6
- data/lib/hippo/transaction_sets/HIPAA_277/L2220E.rb +5 -4
- data/lib/hippo/transaction_sets/HIPAA_277/base.rb +23 -20
- data/lib/hippo/transaction_sets/HIPAA_835/L1000A.rb +9 -6
- data/lib/hippo/transaction_sets/HIPAA_835/L1000B.rb +12 -5
- data/lib/hippo/transaction_sets/HIPAA_835/L2000.rb +6 -2
- data/lib/hippo/transaction_sets/HIPAA_835/L2100.rb +55 -24
- data/lib/hippo/transaction_sets/HIPAA_835/L2110.rb +30 -9
- data/lib/hippo/transaction_sets/HIPAA_835/base.rb +23 -13
- data/lib/hippo/transaction_sets/HIPAA_837/L1000A.rb +5 -3
- data/lib/hippo/transaction_sets/HIPAA_837/L1000B.rb +1 -1
- data/lib/hippo/transaction_sets/HIPAA_837/L2000A.rb +30 -9
- data/lib/hippo/transaction_sets/HIPAA_837/L2000B.rb +42 -7
- data/lib/hippo/transaction_sets/HIPAA_837/L2000C.rb +17 -5
- data/lib/hippo/transaction_sets/HIPAA_837/L2010AA.rb +14 -6
- data/lib/hippo/transaction_sets/HIPAA_837/L2010AB.rb +3 -2
- data/lib/hippo/transaction_sets/HIPAA_837/L2010AC.rb +8 -4
- data/lib/hippo/transaction_sets/HIPAA_837/L2010BA.rb +9 -7
- data/lib/hippo/transaction_sets/HIPAA_837/L2010BB.rb +11 -4
- data/lib/hippo/transaction_sets/HIPAA_837/L2010CA.rb +10 -6
- data/lib/hippo/transaction_sets/HIPAA_837/L2300.rb +116 -56
- data/lib/hippo/transaction_sets/HIPAA_837/L2310A.rb +6 -2
- data/lib/hippo/transaction_sets/HIPAA_837/L2310B.rb +8 -4
- data/lib/hippo/transaction_sets/HIPAA_837/L2310C.rb +6 -3
- data/lib/hippo/transaction_sets/HIPAA_837/L2310D.rb +5 -2
- data/lib/hippo/transaction_sets/HIPAA_837/L2310E.rb +1 -1
- data/lib/hippo/transaction_sets/HIPAA_837/L2310F.rb +1 -1
- data/lib/hippo/transaction_sets/HIPAA_837/L2320.rb +54 -19
- data/lib/hippo/transaction_sets/HIPAA_837/L2330A.rb +5 -3
- data/lib/hippo/transaction_sets/HIPAA_837/L2330B.rb +12 -8
- data/lib/hippo/transaction_sets/HIPAA_837/L2330C.rb +6 -2
- data/lib/hippo/transaction_sets/HIPAA_837/L2330D.rb +7 -3
- data/lib/hippo/transaction_sets/HIPAA_837/L2330E.rb +5 -2
- data/lib/hippo/transaction_sets/HIPAA_837/L2330F.rb +5 -2
- data/lib/hippo/transaction_sets/HIPAA_837/L2330G.rb +7 -3
- data/lib/hippo/transaction_sets/HIPAA_837/L2400.rb +122 -60
- data/lib/hippo/transaction_sets/HIPAA_837/L2410.rb +8 -2
- data/lib/hippo/transaction_sets/HIPAA_837/L2420A.rb +8 -4
- data/lib/hippo/transaction_sets/HIPAA_837/L2420B.rb +7 -3
- data/lib/hippo/transaction_sets/HIPAA_837/L2420C.rb +5 -2
- data/lib/hippo/transaction_sets/HIPAA_837/L2420D.rb +5 -2
- data/lib/hippo/transaction_sets/HIPAA_837/L2420E.rb +8 -4
- data/lib/hippo/transaction_sets/HIPAA_837/L2420F.rb +6 -2
- data/lib/hippo/transaction_sets/HIPAA_837/L2420G.rb +1 -1
- data/lib/hippo/transaction_sets/HIPAA_837/L2420H.rb +1 -1
- data/lib/hippo/transaction_sets/HIPAA_837/L2430.rb +6 -3
- data/lib/hippo/transaction_sets/HIPAA_837/L2440.rb +4 -1
- data/lib/hippo/transaction_sets/HIPAA_837/base.rb +23 -32
- data/lib/hippo/transaction_sets/HIPAA_999/L2000AK2.rb +9 -3
- data/lib/hippo/transaction_sets/HIPAA_999/L2100AK2.rb +9 -3
- data/lib/hippo/transaction_sets/HIPAA_999/L2110AK2.rb +4 -1
- data/lib/hippo/transaction_sets/HIPAA_999/base.rb +6 -3
- data/lib/hippo/transaction_sets/base.rb +87 -72
- data/lib/hippo/transaction_sets/component.rb +80 -0
- data/lib/hippo/transaction_sets/repeating_component.rb +30 -0
- data/lib/hippo/transaction_sets.rb +8 -6
- data/lib/hippo/version.rb +1 -1
- data/samples/005010X221A1_business_scenario_1.edi +1 -0
- data/samples/005010X221A1_tmhp_example.edi +1 -0
- data/samples/005010X222A1_anesthesia.edi +1 -0
- data/samples/005010X222A1_commercial_health_insurance.edi +1 -0
- data/test/test_helper.rb +6 -6
- data/test/test_hipaa_835.rb +229 -0
- data/test/test_hipaa_837.rb +263 -63
- data/test/test_parser.rb +26 -0
- data/test/test_segments_base.rb +1 -1
- data/test/test_transaction_sets_base.rb +21 -1
- metadata +17 -16
- data/bin/demo_270.rb +0 -280
- data/bin/demo_276.rb +0 -296
- data/bin/demo_835.rb +0 -170
- data/lib/hippo/samples/835.edi +0 -88
- data/lib/hippo/samples/sample_835_with.rb +0 -272
- data/lib/hippo/samples/sample_parsed.rb +0 -1162
data/CHANGELOG
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
0.0.
|
|
1
|
+
0.0.5 - 2011/09/16
|
|
2
|
+
* Add ability to parse transaction sets.
|
|
3
|
+
|
|
4
|
+
0.0.4
|
|
2
5
|
* Fix issue when no values are set in any subfield of a composite field.
|
|
3
6
|
* Add more segment tests.
|
|
4
|
-
|
|
5
|
-
0.0.2 - 2011-09-06
|
|
6
7
|
* Import all segments and loops from the X12 CSV Table Data
|
|
7
|
-
|
|
8
|
-
0.0.1 - 2011-02-05
|
|
9
8
|
* Intial version.
|
data/README.md
CHANGED
|
@@ -31,7 +31,7 @@ Usage
|
|
|
31
31
|
This is very straight forward. Basically, create an instance of the
|
|
32
32
|
transaction set that you will be working with, and start filling in the
|
|
33
33
|
loops, segments, and fields. For a complete example from the 222A1 (837-P) implementation
|
|
34
|
-
guide please review [test/test_hipaa_837.rb](/promedical/hippo/test/test_hipaa_837.rb).
|
|
34
|
+
guide please review [test/test_hipaa_837.rb](/promedical/hippo/blob/master/test/test_hipaa_837.rb).
|
|
35
35
|
|
|
36
36
|
Below is a small sample of how to create a transaction set.
|
|
37
37
|
|
|
@@ -68,9 +68,14 @@ Below is a small sample of how to create a transaction set.
|
|
|
68
68
|
end
|
|
69
69
|
|
|
70
70
|
puts ts.to_s
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
71
|
+
|
|
72
|
+
# Below is the output of ts.to_s (split onto separate lines for readability)
|
|
73
|
+
#
|
|
74
|
+
# ST*837*0021*005010X222A1~
|
|
75
|
+
# BHT*0019*00*244579*20061015*1023*CH~
|
|
76
|
+
# NM1*41*2*PREMIER BILLING SERVICE*****46*TGJ23~
|
|
77
|
+
# PER*IC*JERRY*TE*3055552222*EX*231~
|
|
78
|
+
```
|
|
74
79
|
|
|
75
80
|
Transaction Set/Loop and Segment DSL
|
|
76
81
|
------------------------------------
|
|
@@ -224,4 +229,4 @@ The same technique can be used to reference fields within a segment that have th
|
|
|
224
229
|
# ts.to_s => 'TSS*Blah*Bar***Value1*Value2~TCS*Foo**Preset Field 7~TSS*Last Segment*Baz~'
|
|
225
230
|
```
|
|
226
231
|
|
|
227
|
-
For more example please review the test suite.
|
|
232
|
+
For more example please review the test suite.
|
data/lib/hippo/parser.rb
CHANGED
|
@@ -3,8 +3,6 @@ require 'hippo'
|
|
|
3
3
|
|
|
4
4
|
module Hippo
|
|
5
5
|
class Parser
|
|
6
|
-
attr_accessor :raw_data, :segments, :output
|
|
7
|
-
|
|
8
6
|
def segments
|
|
9
7
|
@segments ||= []
|
|
10
8
|
end
|
|
@@ -34,16 +32,16 @@ module Hippo
|
|
|
34
32
|
|
|
35
33
|
# create a new segment object based on the identifier
|
|
36
34
|
segment = Hippo::Segments.const_get(segment_identifier.upcase).new
|
|
37
|
-
|
|
35
|
+
|
|
38
36
|
# populate each field from the original input
|
|
39
37
|
fields.each_with_index do |value, index|
|
|
40
38
|
field = segment.class.fields[index]
|
|
41
|
-
|
|
39
|
+
|
|
42
40
|
# if the field is an array that means it is a
|
|
43
41
|
# composite field
|
|
44
42
|
if field.class == Array
|
|
45
43
|
composite_fields = value.split(Hippo::CompositeSeparator)
|
|
46
|
-
|
|
44
|
+
|
|
47
45
|
# initialize the values hash with a hash for this
|
|
48
46
|
# composite field
|
|
49
47
|
segment.values[index] = {}
|
|
@@ -58,22 +56,34 @@ module Hippo
|
|
|
58
56
|
segment.values[field.sequence] = value
|
|
59
57
|
end
|
|
60
58
|
end
|
|
61
|
-
|
|
59
|
+
|
|
62
60
|
# save the newly created segment to the segments accessor
|
|
63
61
|
segments << segment
|
|
64
62
|
end
|
|
63
|
+
|
|
64
|
+
segments
|
|
65
65
|
end
|
|
66
66
|
|
|
67
|
-
def
|
|
67
|
+
def populate_transaction_sets
|
|
68
|
+
segments_by_transaction_set = []
|
|
69
|
+
|
|
68
70
|
@segments.each do |segment|
|
|
69
|
-
|
|
71
|
+
if segment.class == Hippo::Segments::ST
|
|
72
|
+
segments_by_transaction_set << []
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
segments_by_transaction_set.last << segment if segments_by_transaction_set.last
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
segments_by_transaction_set.collect do |transaction_segments|
|
|
79
|
+
Hippo::TransactionSets.const_get(:"HIPAA_#{transaction_segments.first.ST01}")::Base.new(:segments => transaction_segments)
|
|
70
80
|
end
|
|
71
81
|
end
|
|
72
82
|
|
|
73
83
|
def parse(filename)
|
|
74
84
|
read_file(filename)
|
|
75
85
|
populate_segments
|
|
76
|
-
|
|
86
|
+
populate_transaction_sets
|
|
77
87
|
end
|
|
78
88
|
end
|
|
79
89
|
end
|
|
@@ -10,7 +10,7 @@ module Hippo::TransactionSets
|
|
|
10
10
|
:minimum => 1,
|
|
11
11
|
:maximum => 1,
|
|
12
12
|
:position => 100,
|
|
13
|
-
:
|
|
13
|
+
:identified_by => {
|
|
14
14
|
'HL03' => '20',
|
|
15
15
|
'HL04' => '1'
|
|
16
16
|
}
|
|
@@ -18,10 +18,14 @@ module Hippo::TransactionSets
|
|
|
18
18
|
#Payer Name
|
|
19
19
|
loop Hippo::TransactionSets::HIPAA_276::L2100A,
|
|
20
20
|
:name => 'Payer Name',
|
|
21
|
-
:identified_by => {'NM1.NM101' => 'PR'},
|
|
22
21
|
:minimum => 1,
|
|
23
22
|
:maximum => 1,
|
|
24
|
-
:position => 500
|
|
23
|
+
:position => 500,
|
|
24
|
+
:identified_by => {
|
|
25
|
+
'NM1.NM101' => 'PR',
|
|
26
|
+
'NM1.NM102' => '2',
|
|
27
|
+
'NM1.NM108' => ["PI", "XV"]
|
|
28
|
+
}
|
|
25
29
|
|
|
26
30
|
end
|
|
27
31
|
end
|
|
@@ -10,7 +10,7 @@ module Hippo::TransactionSets
|
|
|
10
10
|
:minimum => 1,
|
|
11
11
|
:maximum => 1,
|
|
12
12
|
:position => 100,
|
|
13
|
-
:
|
|
13
|
+
:identified_by => {
|
|
14
14
|
'HL03' => '21',
|
|
15
15
|
'HL04' => '1'
|
|
16
16
|
}
|
|
@@ -18,10 +18,14 @@ module Hippo::TransactionSets
|
|
|
18
18
|
#Information Receiver Name
|
|
19
19
|
loop Hippo::TransactionSets::HIPAA_276::L2100B,
|
|
20
20
|
:name => 'Information Receiver Name',
|
|
21
|
-
:identified_by => {'NM1.NM101' => '41'},
|
|
22
21
|
:minimum => 1,
|
|
23
22
|
:maximum => 1,
|
|
24
|
-
:position => 500
|
|
23
|
+
:position => 500,
|
|
24
|
+
:identified_by => {
|
|
25
|
+
'NM1.NM101' => '41',
|
|
26
|
+
'NM1.NM102' => ["1", "2"],
|
|
27
|
+
'NM1.NM108' => '46'
|
|
28
|
+
}
|
|
25
29
|
|
|
26
30
|
end
|
|
27
31
|
end
|
|
@@ -10,7 +10,7 @@ module Hippo::TransactionSets
|
|
|
10
10
|
:minimum => 1,
|
|
11
11
|
:maximum => 1,
|
|
12
12
|
:position => 100,
|
|
13
|
-
:
|
|
13
|
+
:identified_by => {
|
|
14
14
|
'HL03' => '19',
|
|
15
15
|
'HL04' => '1'
|
|
16
16
|
}
|
|
@@ -18,10 +18,14 @@ module Hippo::TransactionSets
|
|
|
18
18
|
#Provider Name
|
|
19
19
|
loop Hippo::TransactionSets::HIPAA_276::L2100C,
|
|
20
20
|
:name => 'Provider Name',
|
|
21
|
-
:identified_by => {'NM1.NM101' => '1P'},
|
|
22
21
|
:minimum => 1,
|
|
23
22
|
:maximum => 2,
|
|
24
|
-
:position => 500
|
|
23
|
+
:position => 500,
|
|
24
|
+
:identified_by => {
|
|
25
|
+
'NM1.NM101' => '1P',
|
|
26
|
+
'NM1.NM102' => ["1", "2"],
|
|
27
|
+
'NM1.NM108' => ["FI", "SV", "XX"]
|
|
28
|
+
}
|
|
25
29
|
|
|
26
30
|
end
|
|
27
31
|
end
|
|
@@ -10,8 +10,9 @@ module Hippo::TransactionSets
|
|
|
10
10
|
:minimum => 1,
|
|
11
11
|
:maximum => 1,
|
|
12
12
|
:position => 100,
|
|
13
|
-
:
|
|
14
|
-
'HL03' => '22'
|
|
13
|
+
:identified_by => {
|
|
14
|
+
'HL03' => '22',
|
|
15
|
+
'HL04' => ["0", "1"]
|
|
15
16
|
}
|
|
16
17
|
|
|
17
18
|
#Subscriber Demographic Information
|
|
@@ -20,25 +21,31 @@ module Hippo::TransactionSets
|
|
|
20
21
|
:minimum => 0,
|
|
21
22
|
:maximum => 1,
|
|
22
23
|
:position => 400,
|
|
23
|
-
:
|
|
24
|
+
:identified_by => {
|
|
24
25
|
'DMG01' => 'D8'
|
|
25
26
|
}
|
|
26
27
|
|
|
27
28
|
#Subscriber Name
|
|
28
29
|
loop Hippo::TransactionSets::HIPAA_276::L2100D,
|
|
29
30
|
:name => 'Subscriber Name',
|
|
30
|
-
:identified_by => {'NM1.NM101' => 'IL'},
|
|
31
31
|
:minimum => 1,
|
|
32
32
|
:maximum => 1,
|
|
33
|
-
:position => 500
|
|
33
|
+
:position => 500,
|
|
34
|
+
:identified_by => {
|
|
35
|
+
'NM1.NM101' => 'IL',
|
|
36
|
+
'NM1.NM102' => ["1", "2"],
|
|
37
|
+
'NM1.NM108' => ["24", "II", "MI"]
|
|
38
|
+
}
|
|
34
39
|
|
|
35
40
|
#Claim Status Tracking Number
|
|
36
41
|
loop Hippo::TransactionSets::HIPAA_276::L2200D,
|
|
37
42
|
:name => 'Claim Status Tracking Number',
|
|
38
|
-
:identified_by => {'TRN.TRN01' => '1'},
|
|
39
43
|
:minimum => 0,
|
|
40
|
-
:maximum =>
|
|
41
|
-
:position => 900
|
|
44
|
+
:maximum => 99999,
|
|
45
|
+
:position => 900,
|
|
46
|
+
:identified_by => {
|
|
47
|
+
'TRN.TRN01' => '1'
|
|
48
|
+
}
|
|
42
49
|
|
|
43
50
|
end
|
|
44
51
|
end
|
|
@@ -10,7 +10,7 @@ module Hippo::TransactionSets
|
|
|
10
10
|
:minimum => 0,
|
|
11
11
|
:maximum => 1,
|
|
12
12
|
:position => 100,
|
|
13
|
-
:
|
|
13
|
+
:identified_by => {
|
|
14
14
|
'HL03' => '23'
|
|
15
15
|
}
|
|
16
16
|
|
|
@@ -20,25 +20,30 @@ module Hippo::TransactionSets
|
|
|
20
20
|
:minimum => 1,
|
|
21
21
|
:maximum => 1,
|
|
22
22
|
:position => 400,
|
|
23
|
-
:
|
|
23
|
+
:identified_by => {
|
|
24
24
|
'DMG01' => 'D8'
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
#Dependent Name
|
|
28
28
|
loop Hippo::TransactionSets::HIPAA_276::L2100E,
|
|
29
29
|
:name => 'Dependent Name',
|
|
30
|
-
:identified_by => {'NM1.NM101' => 'QC'},
|
|
31
30
|
:minimum => 1,
|
|
32
31
|
:maximum => 1,
|
|
33
|
-
:position => 500
|
|
32
|
+
:position => 500,
|
|
33
|
+
:identified_by => {
|
|
34
|
+
'NM1.NM101' => 'QC',
|
|
35
|
+
'NM1.NM102' => '1'
|
|
36
|
+
}
|
|
34
37
|
|
|
35
38
|
#Claim Status Tracking Number
|
|
36
39
|
loop Hippo::TransactionSets::HIPAA_276::L2200E,
|
|
37
40
|
:name => 'Claim Status Tracking Number',
|
|
38
|
-
:identified_by => {'TRN.TRN01' => '1'},
|
|
39
41
|
:minimum => 1,
|
|
40
|
-
:maximum =>
|
|
41
|
-
:position => 900
|
|
42
|
+
:maximum => 99999,
|
|
43
|
+
:position => 900,
|
|
44
|
+
:identified_by => {
|
|
45
|
+
'TRN.TRN01' => '1'
|
|
46
|
+
}
|
|
42
47
|
|
|
43
48
|
end
|
|
44
49
|
end
|
|
@@ -10,7 +10,7 @@ module Hippo::TransactionSets
|
|
|
10
10
|
:minimum => 0,
|
|
11
11
|
:maximum => 1,
|
|
12
12
|
:position => 900,
|
|
13
|
-
:
|
|
13
|
+
:identified_by => {
|
|
14
14
|
'TRN01' => '1'
|
|
15
15
|
}
|
|
16
16
|
|
|
@@ -20,7 +20,7 @@ module Hippo::TransactionSets
|
|
|
20
20
|
:minimum => 0,
|
|
21
21
|
:maximum => 1,
|
|
22
22
|
:position => 1000,
|
|
23
|
-
:
|
|
23
|
+
:identified_by => {
|
|
24
24
|
'REF01' => '1K'
|
|
25
25
|
}
|
|
26
26
|
|
|
@@ -30,7 +30,7 @@ module Hippo::TransactionSets
|
|
|
30
30
|
:minimum => 0,
|
|
31
31
|
:maximum => 1,
|
|
32
32
|
:position => 1010,
|
|
33
|
-
:
|
|
33
|
+
:identified_by => {
|
|
34
34
|
'REF01' => 'BLT'
|
|
35
35
|
}
|
|
36
36
|
|
|
@@ -40,7 +40,7 @@ module Hippo::TransactionSets
|
|
|
40
40
|
:minimum => 0,
|
|
41
41
|
:maximum => 1,
|
|
42
42
|
:position => 1030,
|
|
43
|
-
:
|
|
43
|
+
:identified_by => {
|
|
44
44
|
'REF01' => 'LU'
|
|
45
45
|
}
|
|
46
46
|
|
|
@@ -50,7 +50,7 @@ module Hippo::TransactionSets
|
|
|
50
50
|
:minimum => 0,
|
|
51
51
|
:maximum => 1,
|
|
52
52
|
:position => 1035,
|
|
53
|
-
:
|
|
53
|
+
:identified_by => {
|
|
54
54
|
'REF01' => '6P'
|
|
55
55
|
}
|
|
56
56
|
|
|
@@ -60,7 +60,7 @@ module Hippo::TransactionSets
|
|
|
60
60
|
:minimum => 0,
|
|
61
61
|
:maximum => 1,
|
|
62
62
|
:position => 1040,
|
|
63
|
-
:
|
|
63
|
+
:identified_by => {
|
|
64
64
|
'REF01' => 'EJ'
|
|
65
65
|
}
|
|
66
66
|
|
|
@@ -70,7 +70,7 @@ module Hippo::TransactionSets
|
|
|
70
70
|
:minimum => 0,
|
|
71
71
|
:maximum => 1,
|
|
72
72
|
:position => 1045,
|
|
73
|
-
:
|
|
73
|
+
:identified_by => {
|
|
74
74
|
'REF01' => 'XZ'
|
|
75
75
|
}
|
|
76
76
|
|
|
@@ -80,7 +80,7 @@ module Hippo::TransactionSets
|
|
|
80
80
|
:minimum => 0,
|
|
81
81
|
:maximum => 1,
|
|
82
82
|
:position => 1050,
|
|
83
|
-
:
|
|
83
|
+
:identified_by => {
|
|
84
84
|
'REF01' => 'D9'
|
|
85
85
|
}
|
|
86
86
|
|
|
@@ -90,7 +90,7 @@ module Hippo::TransactionSets
|
|
|
90
90
|
:minimum => 0,
|
|
91
91
|
:maximum => 1,
|
|
92
92
|
:position => 1100,
|
|
93
|
-
:
|
|
93
|
+
:identified_by => {
|
|
94
94
|
'AMT01' => 'T3'
|
|
95
95
|
}
|
|
96
96
|
|
|
@@ -100,15 +100,16 @@ module Hippo::TransactionSets
|
|
|
100
100
|
:minimum => 0,
|
|
101
101
|
:maximum => 1,
|
|
102
102
|
:position => 1200,
|
|
103
|
-
:
|
|
104
|
-
'DTP01' => '472'
|
|
103
|
+
:identified_by => {
|
|
104
|
+
'DTP01' => '472',
|
|
105
|
+
'DTP02' => ["D8", "RD8"]
|
|
105
106
|
}
|
|
106
107
|
|
|
107
108
|
#Service Line Information
|
|
108
109
|
loop Hippo::TransactionSets::HIPAA_276::L2210D,
|
|
109
110
|
:name => 'Service Line Information',
|
|
110
111
|
:minimum => 0,
|
|
111
|
-
:maximum =>
|
|
112
|
+
:maximum => 99999,
|
|
112
113
|
:position => 1300
|
|
113
114
|
|
|
114
115
|
end
|
|
@@ -10,7 +10,7 @@ module Hippo::TransactionSets
|
|
|
10
10
|
:minimum => 1,
|
|
11
11
|
:maximum => 1,
|
|
12
12
|
:position => 900,
|
|
13
|
-
:
|
|
13
|
+
:identified_by => {
|
|
14
14
|
'TRN01' => '1'
|
|
15
15
|
}
|
|
16
16
|
|
|
@@ -20,7 +20,7 @@ module Hippo::TransactionSets
|
|
|
20
20
|
:minimum => 0,
|
|
21
21
|
:maximum => 1,
|
|
22
22
|
:position => 1000,
|
|
23
|
-
:
|
|
23
|
+
:identified_by => {
|
|
24
24
|
'REF01' => '1K'
|
|
25
25
|
}
|
|
26
26
|
|
|
@@ -30,7 +30,7 @@ module Hippo::TransactionSets
|
|
|
30
30
|
:minimum => 0,
|
|
31
31
|
:maximum => 1,
|
|
32
32
|
:position => 1010,
|
|
33
|
-
:
|
|
33
|
+
:identified_by => {
|
|
34
34
|
'REF01' => 'BLT'
|
|
35
35
|
}
|
|
36
36
|
|
|
@@ -40,7 +40,7 @@ module Hippo::TransactionSets
|
|
|
40
40
|
:minimum => 0,
|
|
41
41
|
:maximum => 1,
|
|
42
42
|
:position => 1030,
|
|
43
|
-
:
|
|
43
|
+
:identified_by => {
|
|
44
44
|
'REF01' => 'LU'
|
|
45
45
|
}
|
|
46
46
|
|
|
@@ -50,7 +50,7 @@ module Hippo::TransactionSets
|
|
|
50
50
|
:minimum => 0,
|
|
51
51
|
:maximum => 1,
|
|
52
52
|
:position => 1035,
|
|
53
|
-
:
|
|
53
|
+
:identified_by => {
|
|
54
54
|
'REF01' => '6P'
|
|
55
55
|
}
|
|
56
56
|
|
|
@@ -60,7 +60,7 @@ module Hippo::TransactionSets
|
|
|
60
60
|
:minimum => 0,
|
|
61
61
|
:maximum => 1,
|
|
62
62
|
:position => 1040,
|
|
63
|
-
:
|
|
63
|
+
:identified_by => {
|
|
64
64
|
'REF01' => 'EJ'
|
|
65
65
|
}
|
|
66
66
|
|
|
@@ -70,7 +70,7 @@ module Hippo::TransactionSets
|
|
|
70
70
|
:minimum => 0,
|
|
71
71
|
:maximum => 1,
|
|
72
72
|
:position => 1045,
|
|
73
|
-
:
|
|
73
|
+
:identified_by => {
|
|
74
74
|
'REF01' => 'XZ'
|
|
75
75
|
}
|
|
76
76
|
|
|
@@ -80,7 +80,7 @@ module Hippo::TransactionSets
|
|
|
80
80
|
:minimum => 0,
|
|
81
81
|
:maximum => 1,
|
|
82
82
|
:position => 1050,
|
|
83
|
-
:
|
|
83
|
+
:identified_by => {
|
|
84
84
|
'REF01' => 'D9'
|
|
85
85
|
}
|
|
86
86
|
|
|
@@ -90,7 +90,7 @@ module Hippo::TransactionSets
|
|
|
90
90
|
:minimum => 0,
|
|
91
91
|
:maximum => 1,
|
|
92
92
|
:position => 1100,
|
|
93
|
-
:
|
|
93
|
+
:identified_by => {
|
|
94
94
|
'AMT01' => 'T3'
|
|
95
95
|
}
|
|
96
96
|
|
|
@@ -100,15 +100,16 @@ module Hippo::TransactionSets
|
|
|
100
100
|
:minimum => 0,
|
|
101
101
|
:maximum => 1,
|
|
102
102
|
:position => 1200,
|
|
103
|
-
:
|
|
104
|
-
'DTP01' => '472'
|
|
103
|
+
:identified_by => {
|
|
104
|
+
'DTP01' => '472',
|
|
105
|
+
'DTP02' => ["D8", "RD8"]
|
|
105
106
|
}
|
|
106
107
|
|
|
107
108
|
#Service Line Information
|
|
108
109
|
loop Hippo::TransactionSets::HIPAA_276::L2210E,
|
|
109
110
|
:name => 'Service Line Information',
|
|
110
111
|
:minimum => 0,
|
|
111
|
-
:maximum =>
|
|
112
|
+
:maximum => 99999,
|
|
112
113
|
:position => 1300
|
|
113
114
|
|
|
114
115
|
end
|
|
@@ -17,7 +17,7 @@ module Hippo::TransactionSets
|
|
|
17
17
|
:minimum => 0,
|
|
18
18
|
:maximum => 1,
|
|
19
19
|
:position => 1400,
|
|
20
|
-
:
|
|
20
|
+
:identified_by => {
|
|
21
21
|
'REF01' => 'FJ'
|
|
22
22
|
}
|
|
23
23
|
|
|
@@ -27,8 +27,9 @@ module Hippo::TransactionSets
|
|
|
27
27
|
:minimum => 1,
|
|
28
28
|
:maximum => 1,
|
|
29
29
|
:position => 1500,
|
|
30
|
-
:
|
|
31
|
-
'DTP01' => '472'
|
|
30
|
+
:identified_by => {
|
|
31
|
+
'DTP01' => '472',
|
|
32
|
+
'DTP02' => ["D8", "RD8"]
|
|
32
33
|
}
|
|
33
34
|
|
|
34
35
|
end
|
|
@@ -17,7 +17,7 @@ module Hippo::TransactionSets
|
|
|
17
17
|
:minimum => 0,
|
|
18
18
|
:maximum => 1,
|
|
19
19
|
:position => 1400,
|
|
20
|
-
:
|
|
20
|
+
:identified_by => {
|
|
21
21
|
'REF01' => 'FJ'
|
|
22
22
|
}
|
|
23
23
|
|
|
@@ -27,8 +27,9 @@ module Hippo::TransactionSets
|
|
|
27
27
|
:minimum => 1,
|
|
28
28
|
:maximum => 1,
|
|
29
29
|
:position => 1500,
|
|
30
|
-
:
|
|
31
|
-
'DTP01' => '472'
|
|
30
|
+
:identified_by => {
|
|
31
|
+
'DTP01' => '472',
|
|
32
|
+
'DTP02' => ["D8", "RD8"]
|
|
32
33
|
}
|
|
33
34
|
|
|
34
35
|
end
|