X12 0.0.5 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (60) hide show
  1. data/CHANGELOG +6 -1
  2. data/Rakefile +14 -3
  3. data/example/parse.rb +1 -0
  4. data/lib/X12.rb +2 -2
  5. data/lib/X12/Base.rb +5 -1
  6. data/lib/X12/Field.rb +18 -14
  7. data/lib/X12/Loop.rb +10 -6
  8. data/lib/X12/Parser.rb +31 -5
  9. data/lib/X12/Segment.rb +15 -2
  10. data/misc/997.d12 +8 -775
  11. data/misc/IEA.d12 +10 -0
  12. data/misc/ISA.d12 +24 -0
  13. data/misc/SE.d12 +12 -0
  14. data/misc/ST.d12 +7 -0
  15. data/misc/Tbl143.d12 +302 -0
  16. data/misc/Tbl479.d12 +238 -0
  17. data/misc/Tbl715.d12 +11 -0
  18. data/misc/Tbl716.d12 +27 -0
  19. data/misc/Tbl717.d12 +10 -0
  20. data/misc/Tbl718.d12 +29 -0
  21. data/misc/Tbl720.d12 +12 -0
  22. data/misc/Tbl723.d12 +14 -0
  23. data/misc/TblI01.d12 +11 -0
  24. data/misc/TblI03.d12 +6 -0
  25. data/misc/TblI05.d12 +42 -0
  26. data/misc/TblI10.d12 +5 -0
  27. data/misc/TblI11.d12 +18 -0
  28. data/misc/TblI13.d12 +6 -0
  29. data/misc/TblI14.d12 +7 -0
  30. data/test/tc_factory_997.rb +6 -6
  31. data/test/tc_parse_997.rb +4 -4
  32. metadata +23 -37
  33. data/doc/classes/X12.html +0 -174
  34. data/doc/classes/X12/Base.html +0 -677
  35. data/doc/classes/X12/Composite.html +0 -156
  36. data/doc/classes/X12/Empty.html +0 -186
  37. data/doc/classes/X12/Field.html +0 -339
  38. data/doc/classes/X12/Loop.html +0 -202
  39. data/doc/classes/X12/Parser.html +0 -306
  40. data/doc/classes/X12/Segment.html +0 -277
  41. data/doc/classes/X12/Table.html +0 -198
  42. data/doc/created.rid +0 -1
  43. data/doc/files/CHANGELOG.html +0 -108
  44. data/doc/files/README.html +0 -474
  45. data/doc/files/TODO.html +0 -95
  46. data/doc/files/lib/X12/Base_rb.html +0 -83
  47. data/doc/files/lib/X12/Composite_rb.html +0 -83
  48. data/doc/files/lib/X12/Empty_rb.html +0 -83
  49. data/doc/files/lib/X12/Field_rb.html +0 -83
  50. data/doc/files/lib/X12/Loop_rb.html +0 -83
  51. data/doc/files/lib/X12/Parser_rb.html +0 -83
  52. data/doc/files/lib/X12/Segment_rb.html +0 -83
  53. data/doc/files/lib/X12/Table_rb.html +0 -83
  54. data/doc/files/lib/X12_rb.html +0 -100
  55. data/doc/fr_class_index.html +0 -35
  56. data/doc/fr_file_index.html +0 -38
  57. data/doc/fr_method_index.html +0 -62
  58. data/doc/index.html +0 -27
  59. data/doc/rdoc-style.css +0 -208
  60. data/test/ts_x12.rb +0 -27
data/CHANGELOG CHANGED
@@ -1,6 +1,11 @@
1
1
  = CHANGELOG
2
2
 
3
- $Id: CHANGELOG 35 2008-11-13 18:33:44Z ikk $
3
+ $Id: CHANGELOG 60 2009-03-19 22:39:00Z ikk $
4
+
5
+ == 3/19/09 - Release 0.1.0
6
+
7
+ * Implemented field constants.
8
+ * Implemented separate definition files for segments and validation tables.
4
9
 
5
10
  == 11/15/08 - Release 0.0.5, first public one
6
11
 
data/Rakefile CHANGED
@@ -20,7 +20,7 @@
20
20
  # License along with this library; if not, write to the Free Software
21
21
  # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
22
22
  #
23
- # $Id: Rakefile 39 2008-11-13 19:43:55Z ikk $
23
+ # $Id: Rakefile 58 2009-03-19 20:31:26Z ikk $
24
24
  #++
25
25
  require 'rubygems'
26
26
  require 'rake'
@@ -70,10 +70,20 @@ task :example do |x|
70
70
  }
71
71
  end
72
72
 
73
+ # Run examples in scratch dir
74
+ task :scratch do |x|
75
+ Dir['scratch/p270.rb'].each {|f|
76
+ puts "Running #{f}"
77
+ sh(RUBY, '-I', 'lib', f) do |ok, res|
78
+ fail "Command failed (status = #{res.exitstatus})" unless ok
79
+ end
80
+ }
81
+ end
82
+
73
83
  task :test do |x|
74
84
  Rake::TestTask.new { |t|
75
85
  t.libs << "test"
76
- t.test_files = Dir['test/ts_*.rb']
86
+ t.test_files = Dir['test/tc_*.rb']
77
87
  t.verbose = true
78
88
  }
79
89
  end # :test
@@ -126,7 +136,8 @@ spec = Gem::Specification.new do |s|
126
136
  "COPYING",
127
137
  "doc/**/*",
128
138
  "lib/**/*",
129
- "test/**/*",
139
+ "test/tc_factory_997.rb",
140
+ "test/tc_parse_997.rb",
130
141
  "example/**/*",
131
142
  "misc/**/*"
132
143
  ].each do |i|
@@ -35,6 +35,7 @@ m997='ST*997*2878~AK1*HS*293328532~AK2*270*307272179~'\
35
35
 
36
36
  # Parse the message
37
37
  r = parser.parse('997', m997)
38
+ r.show
38
39
 
39
40
  # Access components of the message as desired
40
41
 
data/lib/X12.rb CHANGED
@@ -38,13 +38,13 @@ require 'X12/parser'
38
38
  # This relies on the polyglot package to compile and load x12syntax.treetop
39
39
  require 'x12/x12syntax'
40
40
 
41
- # $Id: X12.rb 35 2008-11-13 18:33:44Z ikk $
41
+ # $Id: X12.rb 59 2009-03-19 22:32:13Z ikk $
42
42
  #
43
43
  # Package implementing direct manipulation of X12 structures using Ruby syntax.
44
44
 
45
45
  module X12
46
46
 
47
- VERSION = '0.0.5'
47
+ VERSION = '0.1.0'
48
48
  EMPTY = Empty.new()
49
49
 
50
50
  end
@@ -23,7 +23,7 @@
23
23
  #
24
24
  module X12
25
25
 
26
- # $Id: Base.rb 35 2008-11-13 18:33:44Z ikk $
26
+ # $Id: Base.rb 49 2009-03-17 19:46:08Z ikk $
27
27
  #
28
28
  # Base class for Segment, Composite, and Loop. Contains setable
29
29
  # segment_separator, field_separator, and composite_separator fields.
@@ -60,6 +60,10 @@ module X12
60
60
  self.to_a.each{|i|
61
61
  #puts "#{ind}#{i.name} #{i.object_id} #{i.super.object_id} [#{count}]: #{i.parsed_str} #{i.super.class}"
62
62
  puts "#{ind}#{i.name} [#{count}]: #{i.to_s.sub(/^(.{30})(.*?)(.{30})$/, '\1...\3')}"
63
+ # Force parsing a segment
64
+ if i.kind_of?(X12::Segment) && i.nodes[0]
65
+ i.find_field(i.nodes[0].name)
66
+ end
63
67
  i.nodes.each{|j|
64
68
  case
65
69
  when j.kind_of?(X12::Base) : j.show(ind+' ')
@@ -23,7 +23,7 @@
23
23
  #
24
24
  module X12
25
25
 
26
- # $Id: Field.rb 35 2008-11-13 18:33:44Z ikk $
26
+ # $Id: Field.rb 56 2009-03-18 19:56:01Z ikk $
27
27
  #
28
28
  # Class to represent a segment field. Please note, it's not a descendant of Base.
29
29
 
@@ -53,13 +53,15 @@ module X12
53
53
  end
54
54
 
55
55
  def render
56
- # FIXME - this is for debug only
56
+ unless @content
57
+ @content = $1 if self.type =~ /"(.*)"/ # If it's a constant
58
+ end
57
59
  @content || ''
58
60
  end # render
59
61
 
60
- # Check if it's been set yet
62
+ # Check if it's been set yet and it's not a constant
61
63
  def has_content?
62
- !@content.nil?
64
+ !@content.nil? && ('"'+@content+'"' != self.type)
63
65
  end
64
66
 
65
67
  # Erase the content
@@ -67,15 +69,17 @@ module X12
67
69
  @content = nil
68
70
  end
69
71
 
70
- # def to_regexp
71
- # r = case type
72
- # when 'I' : "\\d{#{min_length},#{max_length}}"
73
- # when 'S' : ".{#{min_length},#{max_length}}"
74
- # when /C.*/ : 'composite'
75
- # when /"(.*)"/ : $1
76
- # else ''
77
- # end # case
78
- # Regexp.new("#{CONSTANT[:field]}#{r}")
79
- # end
72
+ # Returns string regexp for this field, takes field separator as an argument
73
+ def str_regexp(sep)
74
+ min = required ? @min_length : 0
75
+ case self.type
76
+ when 'I' : "\\d{#{min},#{@max_length}}"
77
+ when 'S' : "[^#{Regexp.escape(sep)}]{#{min},#{@max_length}}"
78
+ when /C.*/ : "[^#{Regexp.escape(sep)}]{#{min},#{@max_length}}"
79
+ when /"(.*)"/ : $1
80
+ else ''
81
+ end # case
82
+ end # str_regexp
83
+
80
84
  end
81
85
  end
@@ -23,7 +23,7 @@
23
23
  #
24
24
  module X12
25
25
 
26
- # $Id: Loop.rb 35 2008-11-13 18:33:44Z ikk $
26
+ # $Id: Loop.rb 59 2009-03-19 22:32:13Z ikk $
27
27
  #
28
28
  # Implements nested loops of segments
29
29
 
@@ -63,11 +63,15 @@ module X12
63
63
 
64
64
  # Render all components of this loop as string suitable for EDI
65
65
  def render
66
- self.to_a.inject(''){|loop_str, i|
67
- loop_str += i.nodes.inject(''){|nodes_str, j|
68
- nodes_str += j.render
69
- }
70
- }
66
+ if self.has_content?
67
+ self.to_a.inject(''){|loop_str, i|
68
+ loop_str += i.nodes.inject(''){|nodes_str, j|
69
+ nodes_str += j.render
70
+ }
71
+ }
72
+ else
73
+ ''
74
+ end
71
75
  end # render
72
76
 
73
77
  end # Loop
@@ -23,7 +23,7 @@
23
23
  #
24
24
  module X12
25
25
 
26
- # $Id: Parser.rb 35 2008-11-13 18:33:44Z ikk $
26
+ # $Id: Parser.rb 54 2009-03-18 17:04:45Z ikk $
27
27
  #
28
28
  # Main class for creating X12 parsers and factories.
29
29
 
@@ -31,7 +31,10 @@ module X12
31
31
 
32
32
  # Creates a parser out of a definition
33
33
  def initialize(file_name)
34
+ save_definition = @x12_definition
35
+ #puts "Reading definition from #{file_name}"
34
36
  str = File.open(file_name, 'r').read
37
+ @dir_name = File.dirname(file_name) # to look up other files if needed
35
38
  treetop_parser = X12::X12syntaxParser.new
36
39
  res = treetop_parser.parse(str)
37
40
  throw Exception.new("Cannot parse X12 definition in #{file_name}") unless res
@@ -41,7 +44,7 @@ module X12
41
44
  @x12_definition[X12::Loop].each_pair{|k, v|
42
45
  #puts "Processing loop #{k}"
43
46
  process_loop(v)
44
- }
47
+ } if @x12_definition[X12::Loop]
45
48
  # @x12_definition.keys.each{|t|
46
49
  # puts "**** #{t}"
47
50
 
@@ -54,6 +57,15 @@ module X12
54
57
  # puts "\n\n"
55
58
  # }
56
59
 
60
+ # Merge the saved definition, if any, into the newly parsed one
61
+ return unless save_definition
62
+ save_definition.keys.each{|t|
63
+ @x12_definition[t] ||= {}
64
+ save_definition[t].keys.each{|u|
65
+ @x12_definition[t][u] = save_definition[t][u]
66
+ }
67
+ }
68
+
57
69
  end
58
70
 
59
71
  # Parse a loop of a given name out of a string. Throws an exception if the loop name is not defined.
@@ -79,7 +91,7 @@ module X12
79
91
  loop.nodes.each{|i|
80
92
  case i
81
93
  when X12::Loop: process_loop(i)
82
- when X12::Segment: process_segment(i)
94
+ when X12::Segment: process_segment(i) unless i.nodes.size > 0
83
95
  else return
84
96
  end
85
97
  }
@@ -87,10 +99,24 @@ module X12
87
99
 
88
100
  # Instantiate segment's fields as previously defined
89
101
  def process_segment(segment)
90
- segment_definition = @x12_definition[X12::Segment][segment.name]
91
- return unless segment_definition
102
+ unless @x12_definition[X12::Segment] && @x12_definition[X12::Segment][segment.name]
103
+ # Try to find it in a separate file if missing from the @x12_definition structure
104
+ initialize(File.join(@dir_name, segment.name+'.d12'))
105
+ segment_definition = @x12_definition[X12::Segment][segment.name]
106
+ throw Exception.new("Cannot find a definition for segment #{segment.name}") unless segment_definition
107
+ else
108
+ segment_definition = @x12_definition[X12::Segment][segment.name]
109
+ end
92
110
  segment_definition.nodes.each_index{|i|
93
111
  segment.nodes[i] = segment_definition.nodes[i]
112
+ # Make sure we have the validation table if any for this field. Try to read one in if missing.
113
+ table = segment.nodes[i].validation
114
+ if table
115
+ unless @x12_definition[X12::Table] && @x12_definition[X12::Table][table]
116
+ initialize(File.join(@dir_name, table+'.d12'))
117
+ throw Exception.new("Cannot find a definition for table #{table}") unless @x12_definition[X12::Table] && @x12_definition[X12::Table][table]
118
+ end
119
+ end
94
120
  }
95
121
  end
96
122
 
@@ -23,7 +23,7 @@
23
23
  #
24
24
  module X12
25
25
 
26
- # $Id: Segment.rb 35 2008-11-13 18:33:44Z ikk $
26
+ # $Id: Segment.rb 54 2009-03-18 17:04:45Z ikk $
27
27
  #
28
28
  # Implements a segment containing fields or composites
29
29
 
@@ -65,7 +65,20 @@ module X12
65
65
 
66
66
  # Returns a regexp that matches this particular segment
67
67
  def regexp
68
- @regexp ||= Regexp.new("^#{name}#{Regexp.escape(field_separator)}[^#{Regexp.escape(segment_separator)}]*#{Regexp.escape(segment_separator)}")
68
+ unless @regexp
69
+ if self.nodes.find{|i| i.type =~ /^".+"$/ }
70
+ # It's a very special regexp if there are constant fields
71
+ re_str = self.nodes.inject("^#{name}#{Regexp.escape(field_separator)}"){|s, i|
72
+ s+i.str_regexp(field_separator)+Regexp.escape(field_separator)
73
+ } + '?'+Regexp.escape(segment_separator)
74
+ @regexp = Regexp.new(re_str)
75
+ else
76
+ # Simple match
77
+ @regexp = Regexp.new("^#{name}#{Regexp.escape(field_separator)}[^#{Regexp.escape(segment_separator)}]*#{Regexp.escape(segment_separator)}")
78
+ end
79
+ #puts @regexp
80
+ end
81
+ @regexp
69
82
  end
70
83
 
71
84
  # Finds a field in the segment. Returns EMPTY if not found.
@@ -20,731 +20,9 @@
20
20
  License along with this library; if not, write to the Free Software
21
21
  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
22
22
 
23
- $Id: 997.d12 36 2008-11-13 18:36:36Z ikk $
23
+ $Id: 997.d12 59 2009-03-19 22:32:13Z ikk $
24
24
 
25
25
  */
26
- table TblI01 {
27
- 00 No Authorization Information Present (No Meaningful Information in I02)
28
- 01 UCS Communications ID
29
- 02 EDX Communications ID
30
- 03 Additional Data Identification
31
- 04 Rail Communications ID
32
- 05 Department of Defense (DoD) Communication Identifier
33
- 06 United States Federal Government Communication Identifier
34
- } # TblI01
35
-
36
- table TblI03 {
37
- 00 No Security Information Present (No Meaningful Information in I04)
38
- 01 Password
39
- } # TblI01
40
-
41
- table TblI05 {
42
- 01 Duns (Dun & Bradstreet)
43
- 02 SCAC (Standard Carrier Alpha Code)
44
- 03 FMC (Federal Maritime Commission)
45
- 04 IATA (International Air Transport Association)
46
- 08 UCC EDI Communications ID (Comm ID)
47
- 09 X.121 (CCITT)
48
- 10 Department of Defense (DoD) Activity Address Code
49
- 11 DEA (Drug Enforcement Administration)
50
- 12 Phone (Telephone Companies)
51
- 13 UCS Code (The UCS Code is a Code Used for UCS Transmissions; it includes the Area Code and Telephone Number of a Modem; it Does Not Include Punctuation, Blanks or Access Code)
52
- 14 Duns Plus Suffix
53
- 15 Petroleum Accountants Society of Canada Company Code
54
- 16 Duns Number With 4-Character Suffix
55
- 17 American Bankers Association (ABA) Transit Routing Number (Including Check Digit, 9 Digit)
56
- 18 Association of American Railroads (AAR) Standard Distribution Code
57
- 19 EDI Council of Australia (EDICA) Communications ID Number (COMM ID)
58
- 20 Health Industry Number (HIN)
59
- 21 Integrated Postsecondary Education Data System, or (IPEDS)
60
- 22 Federal Interagency Commission on Education, or FICE
61
- 23 National Center for Education Statistics Common Core of Data 12-Digit Number for Pre-K-Grade 12 Institutes, or NCES
62
- 24 The College Board's Admission Testing Program 4-Digit Code of Postsecondary Institutes, or ATP
63
- 25 American College Testing Program 4-Digit Code of Postsecondary Institutions, or ACT
64
- 26 Statistics of Canada List of Postsecondary Institutions
65
- 27 Carrier Identification Number as assigned by Health Care Financing Administration (HCFA)
66
- 28 Fiscal Intermediary Identification Number as assigned by Health Care Financing Administration (HCFA)
67
- 29 Medicare Provider and Supplier Identification Number as assigned by Health Care Financing Administration (HCFA)
68
- 30 U.S. Federal Tax Identification Number
69
- 31 Jurisdiction Identification Number Plus 4 as assigned by the International Association of Industrial Accident Boards and Commissions (IAIABC)
70
- 32 U.S. Federal Employer Identification Number (FEIN)
71
- 33 National Association of Insurance Commissioners Company Code (NAIC)
72
- 34 Medicaid Provider and Supplier Identification Number as assigned by individual State Medicaid Agencies in conjunction with Health Care Financing Administration (HCFA)
73
- 35 Statistics Canada Canadian College Student Information System Institution Codes
74
- 36 Statistics Canada University Student Information System Institution Codes
75
- 37 Society of Property Information Compilers and Analysts
76
- AM Association Mexicana del Codigo de Producto (AMECOP) Communication ID
77
- NR National Retail Merchants Association (NRMA) - Assigned
78
- SN Standard Address Number
79
- ZZ Mutually Defined
80
- } # TblI05
81
-
82
- table TblI10 {
83
- U U.S. EDI Community of ASC X12, TDCC, and UCS
84
- } # TblI10
85
-
86
- table TblI11 {
87
- 00200 Standard Issued as ANSI X12.5-1987
88
- 00201 Draft Standard for Trial Use Approved by ASC X12 Through August 1988
89
- 00204 Draft Standard for Trial Use Approved by ASC X12 Through May 1989
90
- 00300 Standard Issued as ANSI X12.5-1992
91
- 00301 Draft Standard for Trial Use Approved for Publication by ASC X12 Procedures Review Board Through October 1990
92
- 00302 Draft Standard for Trial Use Approved for Publication by ASC X12 Procedures Review Board Through October 1991
93
- 00303 Draft Standard for Trial Use Approved for Publication by ASC X12 Procedures Review Board Through October 1992
94
- 00304 Draft Standards for Trial Use Approved for Publication by ASC X12 Procedures Review Board through October 1993
95
- 00305 Draft Standards for Trial Use Approved for Publication by ASC X12 Procedures Review Board through October 1994
96
- 00306 Draft Standards for Trial Use Approved for Publication by ASC X12 Procedures Review Board through October 1995
97
- 00307 Draft Standards for Trial Use Approved for Publication by ASC X12 Procedures Review Board through October 1996
98
- 00400 Standard Issued as ANSI X12.5-1997
99
- 00401 Draft Standards for Trial Use Approved for Publication by ASC X12 Procedures Review Board through October 1997
100
- 00402 Draft Standards for Trial Use Approved for Publication by ASC X12 Procedures Review Board through October 1998
101
- } # TblI11
102
-
103
- table TblI13 {
104
- 0 No Acknowledgment Requested
105
- 1 Interchange Acknowledgment Requested
106
- } # TblI13
107
-
108
- table TblI14 {
109
- I Information
110
- P Production Data
111
- T Test Data
112
- } # TblI14
113
-
114
- table Tbl143 {
115
- 100 Insurance Plan Description
116
- 101 Name and Address Lists
117
- 104 Air Shipment Information
118
- 105 Business Entity Filings
119
- 106 Motor Carrier Rate Proposal
120
- 107 Request for Motor Carrier Rate Proposal
121
- 108 Response to a Motor Carrier Rate Proposal
122
- 109 Vessel Content Details
123
- 110 Air Freight Details and Invoice
124
- 112 Property Damage Report
125
- 120 Vehicle Shipping Order
126
- 121 Vehicle Service
127
- 124 Vehicle Damage
128
- 125 Multilevel Railcar Load Details
129
- 126 Vehicle Application Advice
130
- 127 Vehicle Baying Order
131
- 128 Dealer Information
132
- 129 Vehicle Carrier Rate Update
133
- 130 Student Educational Record (Transcript)
134
- 131 Student Educational Record (Transcript) Acknowledgment
135
- 135 Student Loan Application
136
- 138 Testing Results Request and Report
137
- 139 Student Loan Guarantee Result
138
- 140 Product Registration
139
- 141 Product Service Claim Response
140
- 142 Product Service Claim
141
- 143 Product Service Notification
142
- 144 Student Loan Transfer and Status Verification
143
- 146 Request for Student Educational Record (Transcript)
144
- 147 Response to Request for Student Educational Record (Transcript)
145
- 148 Report of Injury, Illness or Incident
146
- 149 Notice of Tax Adjustment or Assessment
147
- 150 Tax Rate Notification
148
- 151 Electronic Filing of Tax Return Data Acknowledgment
149
- 152 Statistical Government Information
150
- 153 Unemployment Insurance Tax Claim or Charge Information
151
- 154 Uniform Commercial Code Filing
152
- 155 Business Credit Report
153
- 157 Notice of Power of Attorney
154
- 159 Motion Picture Booking Confirmation
155
- 160 Transportation Automatic Equipment Identification
156
- 161 Train Sheet
157
- 163 Transportation Appointment Schedule Information
158
- 170 Revenue Receipts Statement
159
- 175 Court and Law Enforcement Notice
160
- 176 Court Submission
161
- 180 Return Merchandise Authorization and Notification
162
- 185 Royalty Regulatory Report
163
- 186 Insurance Underwriting Requirements Reporting
164
- 188 Educational Course Inventory
165
- 189 Application for Admission to Educational Institutions
166
- 190 Student Enrollment Verification
167
- 191 Student Loan Pre-Claims and Claims
168
- 194 Grant or Assistance Application
169
- 195 Federal Communications Commission (FCC) License Application
170
- 196 Contractor Cost Data Reporting
171
- 197 Real Estate Title Evidence
172
- 198 Loan Verification Information
173
- 199 Real Estate Settlement Information
174
- 200 Mortgage Credit Report
175
- 201 Residential Loan Application
176
- 202 Secondary Mortgage Market Loan Delivery
177
- 203 Secondary Mortgage Market Investor Report
178
- 204 Motor Carrier Load Tender
179
- 205 Mortgage Note
180
- 206 Real Estate Inspection
181
- 210 Motor Carrier Freight Details and Invoice
182
- 211 Motor Carrier Bill of Lading
183
- 212 Motor Carrier Delivery Trailer Manifest
184
- 213 Motor Carrier Shipment Status Inquiry
185
- 214 Transportation Carrier Shipment Status Message
186
- 215 Motor Carrier Pick-up Manifest
187
- 216 Motor Carrier Shipment Pick-up Notification
188
- 217 Motor Carrier Loading and Route Guide
189
- 218 Motor Carrier Tariff Information
190
- 219 Logistics Service Request
191
- 220 Logistics Service Response
192
- 222 Cartage Work Assignment
193
- 223 Consolidators Freight Bill and Invoice
194
- 224 Motor Carrier Summary Freight Bill Manifest
195
- 225 Response to a Cartage Work Assignment
196
- 242 Data Status Tracking
197
- 244 Product Source Information
198
- 248 Account Assignment/Inquiry and Service/Status
199
- 249 Animal Toxicological Data
200
- 250 Purchase Order Shipment Management Document
201
- 251 Pricing Support
202
- 252 Insurance Producer Administration
203
- 255 Underwriting Information Services
204
- 256 Periodic Compensation
205
- 260 Application for Mortgage Insurance Benefits
206
- 261 Real Estate Information Request
207
- 262 Real Estate Information Report
208
- 263 Residential Mortgage Insurance Application Response
209
- 264 Mortgage Loan Default Status
210
- 265 Real Estate Title Insurance Services Order
211
- 266 Mortgage or Property Record Change Notification
212
- 267 Individual Life, Annuity and Disability Application
213
- 268 Annuity Activity
214
- 270 Eligibility, Coverage or Benefit Inquiry
215
- 271 Eligibility, Coverage or Benefit Information
216
- 272 Property and Casualty Loss Notification
217
- 273 Insurance/Annuity Application Status
218
- 275 Patient Information
219
- 276 Health Care Claim Status Request
220
- 277 Health Care Claim Status Notification
221
- 278 Health Care Services Review Information
222
- 280 Voter Registration Information
223
- 285 Commercial Vehicle Safety and Credentials Information Exchange
224
- 286 Commercial Vehicle Credentials
225
- 288 Wage Determination
226
- 290 Cooperative Advertising Agreements
227
- 300 Reservation (Booking Request) (Ocean)
228
- 301 Confirmation (Ocean)
229
- 303 Booking Cancellation (Ocean)
230
- 304 Shipping Instructions
231
- 306 Dock Receipt
232
- 309 U.S. Customs Manifest
233
- 310 Freight Receipt and Invoice (Ocean)
234
- 311 Canadian Customs Information
235
- 312 Arrival Notice (Ocean)
236
- 313 Shipment Status Inquiry (Ocean)
237
- 315 Status Details (Ocean)
238
- 317 Delivery/Pickup Order
239
- 319 Terminal Information
240
- 321 Demurrage Guarantee (Ocean)
241
- 322 Terminal Operations and Intermodal Ramp Activity
242
- 323 Vessel Schedule and Itinerary (Ocean)
243
- 324 Vessel Stow Plan (Ocean)
244
- 325 Consolidation of Goods in Container
245
- 326 Consignment Summary List
246
- 350 U.S. Customs Status Information
247
- 352 U.S. Customs Carrier General Order Status
248
- 353 U.S. Customs Events Advisory Details
249
- 354 U.S. Customs Automated Manifest Archive Status
250
- 355 U.S. Customs Acceptance/Rejection
251
- 356 U.S. Customs Permit to Transfer Request
252
- 357 U.S. Customs In-Bond Information
253
- 358 U.S. Customs Consist Information
254
- 361 Carrier Interchange Agreement (Ocean)
255
- 362 Cargo Insurance Advice of Shipment
256
- 404 Rail Carrier Shipment Information
257
- 410 Rail Carrier Freight Details and Invoice
258
- 411 Freight Details and Invoice Summary (Rail)
259
- 414 Rail Carhire Settlements
260
- 417 Rail Carrier Waybill Interchange
261
- 418 Rail Advance Interchange Consist
262
- 419 Advance Car Disposition
263
- 420 Car Handling Information
264
- 421 Estimated Time of Arrival and Car Scheduling
265
- 422 Shipper's Car Order
266
- 423 Rail Industrial Switch List
267
- 425 Rail Waybill Request
268
- 426 Rail Revenue Waybill
269
- 429 Railroad Retirement Activity
270
- 431 Railroad Station Master File
271
- 432 Rail Deprescription
272
- 433 Railroad Reciprocal Switch File
273
- 434 Railroad Mark Register Update Activity
274
- 435 Standard Transportation Commodity Code Master
275
- 436 Locomotive Information
276
- 437 Railroad Junctions and Interchanges Activity
277
- 440 Shipment Weights
278
- 451 Railroad Event Report
279
- 452 Railroad Problem Log Inquiry or Advice
280
- 453 Railroad Service Commitment Advice
281
- 455 Railroad Parameter Trace Registration
282
- 456 Railroad Equipment Inquiry or Advice
283
- 460 Railroad Price Distribution Request or Response
284
- 463 Rail Rate Reply
285
- 466 Rate Request
286
- 468 Rate Docket Journal Log
287
- 470 Railroad Clearance
288
- 475 Rail Route File Maintenance
289
- 485 Ratemaking Action
290
- 486 Rate Docket Expiration
291
- 490 Rate Group Definition
292
- 492 Miscellaneous Rates
293
- 494 Scale Rate Table
294
- 500 Medical Event Reporting
295
- 501 Vendor Performance Review
296
- 503 Pricing History
297
- 504 Clauses and Provisions
298
- 511 Requisition
299
- 517 Material Obligation Validation
300
- 521 Income or Asset Offset
301
- 527 Material Due-In and Receipt
302
- 536 Logistics Reassignment
303
- 540 Notice of Employment Status
304
- 561 Contract Abstract
305
- 567 Contract Completion Status
306
- 568 Contract Payment Management Report
307
- 601 U.S. Customs Export Shipment Information
308
- 602 Transportation Services Tender
309
- 620 Excavation Communication
310
- 622 Intermodal Ramp Activity
311
- 625 Well Information
312
- 650 Maintenance Service Order
313
- 715 Intermodal Group Loading Plan
314
- 805 Contract Pricing Proposal
315
- 806 Project Schedule Reporting
316
- 810 Invoice
317
- 811 Consolidated Service Invoice/Statement
318
- 812 Credit/Debit Adjustment
319
- 813 Electronic Filing of Tax Return Data
320
- 814 General Request, Response or Confirmation
321
- 815 Cryptographic Service Message
322
- 816 Organizational Relationships
323
- 818 Commission Sales Report
324
- 819 Operating Expense Statement
325
- 820 Payment Order/Remittance Advice
326
- 821 Financial Information Reporting
327
- 822 Account Analysis
328
- 823 Lockbox
329
- 824 Application Advice
330
- 826 Tax Information Exchange
331
- 827 Financial Return Notice
332
- 828 Debit Authorization
333
- 829 Payment Cancellation Request
334
- 830 Planning Schedule with Release Capability
335
- 831 Application Control Totals
336
- 832 Price/Sales Catalog
337
- 833 Mortgage Credit Report Order
338
- 834 Benefit Enrollment and Maintenance
339
- 835 Health Care Claim Payment/Advice
340
- 836 Procurement Notices
341
- 837 Health Care Claim
342
- 838 Trading Partner Profile
343
- 839 Project Cost Reporting
344
- 840 Request for Quotation
345
- 841 Specifications/Technical Information
346
- 842 Nonconformance Report
347
- 843 Response to Request for Quotation
348
- 844 Product Transfer Account Adjustment
349
- 845 Price Authorization Acknowledgment/Status
350
- 846 Inventory Inquiry/Advice
351
- 847 Material Claim
352
- 848 Material Safety Data Sheet
353
- 849 Response to Product Transfer Account Adjustment
354
- 850 Purchase Order
355
- 851 Asset Schedule
356
- 852 Product Activity Data
357
- 853 Routing and Carrier Instruction
358
- 854 Shipment Delivery Discrepancy Information
359
- 855 Purchase Order Acknowledgment
360
- 856 Ship Notice/Manifest
361
- 857 Shipment and Billing Notice
362
- 858 Shipment Information
363
- 859 Freight Invoice
364
- 860 Purchase Order Change Request - Buyer Initiated
365
- 861 Receiving Advice/Acceptance Certificate
366
- 862 Shipping Schedule
367
- 863 Report of Test Results
368
- 864 Text Message
369
- 865 Purchase Order Change Acknowledgment/Request - Seller Initiated
370
- 866 Production Sequence
371
- 867 Product Transfer and Resale Report
372
- 868 Electronic Form Structure
373
- 869 Order Status Inquiry
374
- 870 Order Status Report
375
- 871 Component Parts Content
376
- 872 Residential Mortgage Insurance Application
377
- 875 Grocery Products Purchase Order
378
- 876 Grocery Products Purchase Order Change
379
- 877 Manufacturer Coupon Family Code Structure
380
- 878 Product Authorization/De-Authorization
381
- 879 Price Information
382
- 880 Grocery Products Invoice
383
- 881 Manufacturer Coupon Redemption Detail
384
- 882 Direct Store Delivery Summary Information
385
- 883 Market Development Fund Allocation
386
- 884 Market Development Fund Settlement
387
- 885 Retail Account Characteristics
388
- 886 Customer Call Reporting
389
- 887 Coupon Notification
390
- 888 Item Maintenance
391
- 889 Promotion Announcement
392
- 891 Deduction Research Report
393
- 893 Item Information Request
394
- 894 Delivery/Return Base Record
395
- 895 Delivery/Return Acknowledgment or Adjustment
396
- 896 Product Dimension Maintenance
397
- 920 Loss or Damage Claim - General Commodities
398
- 924 Loss or Damage Claim - Motor Vehicle
399
- 925 Claim Tracer
400
- 926 Claim Status Report and Tracer Reply
401
- 928 Automotive Inspection Detail
402
- 940 Warehouse Shipping Order
403
- 943 Warehouse Stock Transfer Shipment Advice
404
- 944 Warehouse Stock Transfer Receipt Advice
405
- 945 Warehouse Shipping Advice
406
- 947 Warehouse Inventory Adjustment Advice
407
- 980 Functional Group Totals
408
- 990 Response To a Load Tender
409
- 994 Administrative Message
410
- 996 File Transfer
411
- 997 Functional Acknowledgment
412
- 998 Set Cancellation
413
- } # Tbl143
414
-
415
- table Tbl479 {
416
- AA Account Analysis (822)
417
- AB Logistics Service Request (219)
418
- AD Individual Life, Annuity and Disability Application (267)
419
- AF Application for Admission to Educational Institutions (189)
420
- AG Application Advice (824)
421
- AH Logistics Service Response (220)
422
- AI Automotive Inspection Detail (928)
423
- AK Student Educational Record (Transcript) Acknowledgment (131)
424
- AL Set Cancellation (998) and Application Acceptance/Rejection Advice (499)
425
- AN Return Merchandise Authorization and Notification (180)
426
- AO Income or Asset Offset (521)
427
- AR Warehouse Stock Transfer Shipment Advice (943)
428
- AS Transportation Appointment Schedule Information (163)
429
- AT Animal Toxicological Data (249)
430
- AW Warehouse Inventory Adjustment Advice (947)
431
- BC Business Credit Report (155)
432
- BE Benefit Enrollment and Maintenance (834)
433
- BF Business Entity Filings (105)
434
- BL Motor Carrier Bill of Lading (211)
435
- BS Shipment and Billing Notice (857)
436
- CA Purchase Order Change Acknowledgment/Request - Seller Initiated (865)
437
- CB Unemployment Insurance Tax Claim or Charge Information (153)
438
- CC Clauses and Provisions (504)
439
- CD Credit/Debit Adjustment (812)
440
- CE Cartage Work Assignment (222)
441
- CF Corporate Financial Adjustment Information (844 and 849)
442
- CG Administrative Message (994)
443
- CH Car Handling Information (420)
444
- CI Consolidated Service Invoice/Statement (811)
445
- CJ Manufacturer Coupon Family Code Structure (877)
446
- CK Manufacturer Coupon Redemption Detail (881)
447
- CM Component Parts Content (871)
448
- CN Coupon Notification (887)
449
- CO Cooperative Advertising Agreements (290)
450
- CP Electronic Proposal Information (251, 805)
451
- CR Rail Carhire Settlements (414)
452
- CS Cryptographic Service Message (815)
453
- CT Application Control Totals (831)
454
- CV Commercial Vehicle Safety and Credentials Information Exchange (285)
455
- D3 Contract Completion Status (567)
456
- D4 Contract Abstract (561)
457
- D5 Contract Payment Management Report (568)
458
- DA Debit Authorization (828)
459
- DD Shipment Delivery Discrepancy Information (854)
460
- DF Market Development Fund Allocation (883)
461
- DI Dealer Information (128)
462
- DM Shipper's Car Order (422)
463
- DS Data Status Tracking (242)
464
- DX Direct Exchange Delivery and Return Information (894, 895)
465
- EC Educational Course Inventory (188)
466
- ED Student Educational Record (Transcript) (130)
467
- EI Railroad Equipment Inquiry or Advice (456)
468
- ER Revenue Receipts Statement (170)
469
- ES Notice of Employment Status (540)
470
- EV Railroad Event Report (451)
471
- EX Excavation Communication (620)
472
- FA Functional Acknowledgment (997)
473
- FB Freight Invoice (859)
474
- FC Court and Law Enforcement Information (175, 176)
475
- FG Motor Carrier Loading and Route Guide (217)
476
- FH Motor Carrier Tariff Information (218)
477
- FR Financial Reporting (821, 827)
478
- FT File Transfer (996)
479
- GB Average Agreement Demurrage (423)
480
- GC Damage Claim Transaction Sets (920, 924, 925, 926)
481
- GE General Request, Response or Confirmation (814)
482
- GF Response to a Load Tender (990)
483
- GL Intermodal Group Loading Plan (715)
484
- GP Grocery Products Invoice (880)
485
- GR Statistical Government Information (152)
486
- GT Grant or Assistance Application (194)
487
- HB Eligibility, Coverage or Benefit Information (271)
488
- HC Health Care Claim (837)
489
- HI Health Care Services Review Information (278)
490
- HN Health Care Claim Status Notification (277)
491
- HP Health Care Claim Payment/Advice (835)
492
- HR Health Care Claim Status Request (276)
493
- HS Eligibility, Coverage or Benefit Inquiry (270)
494
- IA Air Freight Details and Invoice (110, 980)
495
- IB Inventory Inquiry/Advice (846)
496
- IC Rail Advance Interchange Consist (418)
497
- ID Insurance/Annuity Application Status (273)
498
- IE Insurance Producer Administration (252)
499
- IG Direct Store Delivery Summary Information (882)
500
- II Rail Freight Details and Invoice Summary (411)
501
- IJ Report of Injury, Illness or Incident (148)
502
- IM Motor Carrier Freight Details and Invoice (210, 980)
503
- IN Invoice Information (810,819)
504
- IO Ocean Shipment Billing Details (310, 312, 980)
505
- IP Intermodal Ramp Activity (622)
506
- IR Rail Carrier Freight Details and Invoice (410, 980)
507
- IS Estimated Time of Arrival and Car Scheduling (421)
508
- KM Commercial Vehicle Credentials (286)
509
- LA Federal Communications Commission (FCC) License Application (195)
510
- LB Lockbox (823)
511
- LI Locomotive Information (436)
512
- LN Property and Casualty Loss Notification (272)
513
- LR Logistics Reassignment (536)
514
- LS Asset Schedule (851)
515
- LT Student Loan Transfer and Status Verification (144)
516
- MA Motor Carrier Summary Freight Bill Manifest (224)
517
- MC Request for Motor Carrier Rate Proposal (107)
518
- MD Department of Defense Inventory Management (527)
519
- ME Mortgage Origination (198, 200, 201, 261, 262, 263, 833, 872)
520
- MF Market Development Funds Settlement (884)
521
- MG Mortgage Servicing Transaction Sets (203, 206, 260, 264, 266)
522
- MH Motor Carrier Rate Proposal (106)
523
- MI Motor Carrier Shipment Status Inquiry (213)
524
- MJ Secondary Mortgage Market Loan Delivery (202)
525
- MK Response to a Motor Carrier Rate Proposal (108)
526
- MM Medical Event Reporting (500)
527
- MN Mortgage Note (205)
528
- MO Maintenance Service Order (650)
529
- MP Motion Picture Booking Confirmation (159)
530
- MQ Consolidators Freight Bill and Invoice (223)
531
- MR Multilevel Railcar Load Details (125)
532
- MS Material Safety Data Sheet (848)
533
- MT Electronic Form Structure (868)
534
- MV Material Obligation Validation (517)
535
- MW Rail Waybill Response (427)
536
- MX Material Claim (847)
537
- MY Response to a Cartage Work Assignment (225)
538
- NC Nonconformance Report (842)
539
- NL Name and Address Lists (101)
540
- NP Notice of Power of Attorney (157)
541
- NT Notice of Tax Adjustment or Assessment (149)
542
- OC Cargo Insurance Advice of Shipment (362)
543
- OG Order Group - Grocery (875, 876)
544
- OR Organizational Relationships (816)
545
- OW Warehouse Shipping Order (940)
546
- PA Price Authorization Acknowledgment/Status (845)
547
- PB Railroad Parameter Trace Registration (455)
548
- PC Purchase Order Change Request - Buyer Initiated (860)
549
- PD Product Activity Data (852)
550
- PE Periodic Compensation (256)
551
- PF Annuity Activity (268)
552
- PG Insurance Plan Description (100)
553
- PH Pricing History (503)
554
- PI Patient Information (275)
555
- PJ Project Schedule Reporting (806)
556
- PK Project Cost Reporting (839) and Contractor Cost Data Reporting (196)
557
- PL Railroad Problem Log Inquiry or Advice (452)
558
- PN Product Source Information (244)
559
- PO Purchase Order (850)
560
- PQ Property Damage Report (112)
561
- PR Purchase Order Acknowledgement (855)
562
- PS Planning Schedule with Release Capability (830)
563
- PT Product Transfer and Resale Report (867)
564
- PU Motor Carrier Shipment Pick-up Notification (216)
565
- PV Purchase Order Shipment Management Document (250)
566
- PY Payment Cancellation Request (829)
567
- QG Product Information (878, 879, 888, 889, 893, 896)
568
- QM Transportation Carrier Shipment Status Message (214)
569
- QO Ocean Shipment Status Information (313, 315)
570
- RA Payment Order/Remittance Advice (820)
571
- RB Railroad Clearance (470)
572
- RC Receiving Advice/Acceptance Certificate (861)
573
- RD Royalty Regulatory Report (185)
574
- RE Warehouse Stock Receipt Advice (944)
575
- RH Railroad Reciprocal Switch File (433)
576
- RI Routing and Carrier Instruction (853)
577
- RJ Railroad Mark Register Update Activity (434)
578
- RK Standard Transportation Commodity Code Master (435)
579
- RL Rail Industrial Switch List (423)
580
- RM Railroad Station Master File (431)
581
- RN Requisition Transaction (511)
582
- RO Ocean Booking Information (300, 301,303)
583
- RP Commission Sales Report (818)
584
- RQ Request for Quotation (840) and Procurement Notices (836)
585
- RR Response to Request For Quotation (843)
586
- RS Order Status Information (869, 870)
587
- RT Report of Test Results (863)
588
- RU Railroad Retirement Activity (429)
589
- RV Railroad Junctions and Interchanges Activity (437)
590
- RW Rail Revenue Waybill (426)
591
- RX Rail Deprescription (432)
592
- RY Request for Student Educational Record (Transcript) (146)
593
- RZ Response to Request for Student Educational Record (Transcript) (147)
594
- SA Air Shipment Information (104)
595
- SB Switch Rails (424)
596
- SC Price/Sales Catalog (832)
597
- SD Student Loan Pre-Claims and Claims (191)
598
- SE Shipper's Export Declaration (601)
599
- SG SG Receiving Advice - Grocery (885)
600
- SH Ship Notice/Manifest (856)
601
- SI Shipment Information (858)
602
- SJ Transportation Automatic Equipment Identification (160)
603
- SL Student Loan Application and Guarantee (135, 139)
604
- SM Motor Carrier Load Tender (204)
605
- SN Rail Route File Maintenance (475)
606
- SO Ocean Shipment Information (304, 306, 309, 311, 317, 319, 321, 322, 323, 324, 325, 350, 352, 353, 354, 355, 356, 357, 358, 361)
607
- SP Specifications/Technical Information (841)
608
- SQ Production Sequence (866)
609
- SR Rail Carrier Shipment Information (404, 419)
610
- SS Shipping Schedule (862)
611
- ST Railroad Service Commitment Advice (453)
612
- SU Account Assignment/Inquiry and Service/Status (248)
613
- SV Student Enrollment Verification (190)
614
- SW Warehouse Shipping Advice (945)
615
- TA Electronic Filing of Tax Return Data Acknowledgment (151)
616
- TC Court Submission (176)
617
- TD Trading Partner Profile (838)
618
- TF Electronic Filing of Tax Return Data (813)
619
- TI Tax Information Exchange (826)
620
- TM Motor Carrier Delivery Trailer Manifest (212)
621
- TN Tax Rate Notification (150)
622
- TO Real Estate Title Services (197, 199, 265)
623
- TP Rail Rate Transactions (460, 463, 466, 468, 485, 486, 490, 492, 494)
624
- TR Train Sheet (161)
625
- TS Transportation Services Tender (602)
626
- TT Testing Results Request and Report (138)
627
- TX Text Message (864)
628
- UA Retail Account Characteristics (885)
629
- UB Customer Call Reporting (886)
630
- UC Uniform Commercial Code Filing (154)
631
- UD Deduction Research Report (891)
632
- UI Underwriting Information Services (255)
633
- UP Motor Carrier Pick-up Manifest (215)
634
- UW Insurance Underwriting Requirements Reporting (186)
635
- VA Vehicle Application Advice (126)
636
- VB Vehicle Baying Order (127)
637
- VC Vehicle Shipping Order (120)
638
- VD Vehicle Damage (124)
639
- VE Vessel Content Details (109)
640
- VH Vehicle Carrier Rate Update (129)
641
- VI Voter Registration Information (280)
642
- VS Vehicle Service (121)
643
- WA Product Service Transaction Sets (140, 141, 142, 143)
644
- WB Rail Carrier Waybill Interchange (417)
645
- WG Vendor Performance Review (501)
646
- WI Wage Determination (288)
647
- WL Well Information (625)
648
- WR Shipment Weights (440)
649
- WT Rail Waybill Request (425)
650
- } # Tbl479
651
-
652
- table Tbl715 {
653
- A Accepted
654
- E Accepted, But Errors Were Noted.
655
- M Rejected, Message Authentication Code (MAC) Failed
656
- P Partially Accepted, At Least One Transaction Set Was Rejected
657
- R Rejected
658
- W Rejected, Assurance Failed Validity Tests
659
- X Rejected, Content After Decryption Could Not Be Analyzed
660
- } # Tbl715
661
-
662
- table Tbl716 {
663
- 1 Functional Group Not Supported
664
- 2 Functional Group Version Not Supported
665
- 3 Functional Group Trailer Missing
666
- 4 Group Control Number in the Functional Group Header and Trailer Do Not Agree
667
- 5 Number of Included Transaction Sets Does Not Match Actual Count
668
- 6 Group Control Number Violates Syntax
669
- 10 Authentication Key Name Unknown
670
- 11 Encryption Key Name Unknown
671
- 12 Requested Service (Authentication or Encryption) Not Available
672
- 13 Unknown Security Recipient
673
- 14 Unknown Security Originator
674
- 15 Syntax Error in Decrypted Text
675
- 16 Security Not Supported
676
- 17 Incorrect Message Length (Encryption Only)
677
- 18 Message Authentication Code Failed
678
- 19 S1E Security End Segment Missing for S1S Security Start Segment
679
- 20 S1S Security Start Segment Missing for S1E End Segment
680
- 21 S2E Security End Segment Missing for S2S Security Start Segment
681
- 22 S2S Security Start Segment Missing for S2E Security End Segment
682
- 23 S3E Security End Segment Missing for S3S Security Start Segment
683
- 24 S3S Security Start Segment Missing for S3E End Segment
684
- 25 S4E Security End Segment Missing for S4S Security Start Segment
685
- 26 S4S Security Start Segment Missing for S4E Security End Segment
686
- } # Tbl716
687
-
688
- table Tbl717 {
689
- A Accepted
690
- E Accepted But Errors Were Noted
691
- M Rejected, Message Authentication Code (MAC) Failed
692
- R Rejected
693
- W Rejected, Assurance Failed Validity Tests
694
- X Rejected, Content After Decryption Could Not Be Analyzed
695
- } # Tbl717
696
-
697
- table Tbl718 {
698
- 1 Transaction Set Not Supported
699
- 2 Transaction Set Trailer Missing
700
- 3 Transaction Set Control Number in Header and Trailer Do Not Match
701
- 4 Number of Included Segments Does Not Match Actual Count
702
- 5 One or More Segments in Error
703
- 6 Missing or Invalid Transaction Set Identifier
704
- 7 Missing or Invalid Transaction Set Control Number
705
- 8 Authentication Key Name Unknown
706
- 9 Encryption Key Name Unknown
707
- 10 Requested Service (Authentication or Encrypted) Not Available
708
- 11 Unknown Security Recipient
709
- 12 Incorrect Message Length (Encryption Only)
710
- 13 Message Authentication Code Failed
711
- 15 Unknown Security Originator
712
- 16 Syntax Error in Decrypted Text
713
- 17 Security Not Supported
714
- 19 S1E Security End Segment Missing for S1S Security Start Segment
715
- 20 S1S Security Start Segment Missing for S1E Security End Segment
716
- 21 S2E Security End Segment Missing for S2S Security Start Segment
717
- 22 S2S Security Start Segment Missing for S2E Security End Segment
718
- 23 Transaction Set Control Number Not Unique within the Functional Group
719
- 24 S3E Security End Segment Missing for S3S Security Start Segment
720
- 25 S3S Security Start Segment Missing for S3E Security End Segment
721
- 26 S4E Security End Segment Missing for S4S Security Start Segment
722
- 27 S4S Security Start Segment Missing for S4E Security End Segment
723
- } # Tbl718
724
-
725
- table Tbl720 {
726
- 1 Unrecognized segment ID
727
- 2 Unexpected segment
728
- 3 Mandatory segment missing
729
- 4 Loop Occurs Over Maximum Times
730
- 5 Segment Exceeds Maximum Use
731
- 6 Segment Not in Defined Transaction Set
732
- 7 Segment Not in Proper Sequence
733
- 8 Segment Has Data Element Errors
734
- } # Tbl720
735
-
736
- table Tbl723 {
737
- 1 Mandatory data element missing
738
- 2 Conditional required data element missing.
739
- 3 Too many data elements.
740
- 4 Data element too short.
741
- 5 Data element too long.
742
- 6 Invalid character in data element.
743
- 7 Invalid code value.
744
- 8 Invalid Date
745
- 9 Invalid Time
746
- 10 Exclusion Condition Violated
747
- } # Tbl723
748
26
 
749
27
  /* Code indicating the relative position of a simple data element, or
750
28
  the relative position of a composite data structure combined with the
@@ -758,51 +36,6 @@ composite C030 {
758
36
  ComponentDataElementPositionInComposite I O 1-2 /* To identify the component data element position within the composite that is in error */
759
37
  } # C030
760
38
 
761
- /* To define the end of an interchange of zero or more functional
762
- groups and interchange-related control segments */
763
-
764
- segment IEA {
765
- NumberOfIncludedFunctionalGroups I R 1-5 /* A count of the number of functional groups included in an interchange */
766
- InterchangeControlNumber I R 9-9 /* A control number assigned by the interchange sender */
767
- } # IEA
768
-
769
- /* To start and identify an interchange of zero or more functional
770
- groups and interchange-related control segments */
771
-
772
- segment ISA {
773
- AuthorizationInformationQualifier S R 2-2 TblI01 /* Code to identify the type of information in the Authorization Information */
774
- AuthorizationInformation S R 10-10 /* Information used for additional identification or authorization of the interchange sender or the data in the interchange; the type of information is set by the Authorization Information Qualifier (I01) */
775
- SecurityInformationQualifier S R 2-2 TblI03 /* Code to identify the type of information in the Security Information */
776
- SecurityInformation S R 10-10 /* This is used for identifying the security information about the interchange sender or the data in the interchange; the type of information is set by the Security Information Qualifier (I03) */
777
- InterchangeIdQualifier1 S R 2-2 TblI05 /* Qualifier to designate the system/method of code structure used to designate the sender or receiver ID element being qualified */
778
- InterchangeSenderId S R 15-15 /* Identification code published by the sender for other parties to use as the receiver ID to route data to them; the sender always codes this value in the sender ID element */
779
- InterchangeIdQualifier2 S R 2-2
780
- InterchangeReceiverId S R 15-15 /* Identification code published by the receiver of the data; When sending, it is used by the sender as their sending ID, thus other parties sending to them will use this as a receiving ID to route data to them */
781
- InterchangeDate S R 6-6 /* Date of the interchange */
782
- InterchangeTime S R 4-4 /* Time of the interchange */
783
- InterchangeControlStandardsIdentifier S R 1-1 TblI10 /* Code to identify the agency responsible for the control standard used by the message that is enclosed by the interchange header and trailer */
784
- InterchangeControlVersionNumber S R 5-5 TblI11 /* This version number covers the interchange control segments */
785
- InterchangeControlNumber I R 9-9 /* A control number assigned by the interchange sender */
786
- AcknowledgmentRuested S R 1-1 TblI13 /* Code sent by the sender to request an interchange acknowledgment (TA1) */
787
- UsageIndicator S R 1-1 TblI14 /* Code to indicate whether data enclosed by this interchange envelope is test, production or information */
788
- ComponentElementSeparator S R 1-1 /* Type is not applicable; the component element separator is a delimiter and not a data element; this field provides the delimiter used to separate component data elements within a composite data structure; this value must be different than the data element separator and the segment terminator */
789
- } # ISA
790
-
791
- /* To indicate the end of the transaction set and provide the count of
792
- the transmitted segments (including the beginning (ST) and ending (SE)
793
- segments) */
794
-
795
- segment SE {
796
- NumberOfIncludedSegments I R 1-10 /* Total number of segments included in a transaction set including ST and SE segments */
797
- TransactionSetControlNumber S R 4-9 /* Identifying control number that must be unique within the transaction set functional group assigned by the originator for a transaction set */
798
- } # SE
799
-
800
- /* To indicate the start of a transaction set and to assign a control number */
801
- segment ST {
802
- TransactionSetIdentifierCode S R 3-3 Tbl143 /* Code uniquely identifying a Transaction Set */
803
- TransactionSetControlNumber S R 4-9 /* Identifying control number that must be unique within the transaction set functional group assigned by the originator for a transaction set */
804
- } # ST
805
-
806
39
  /* To start acknowledgment of a functional group */
807
40
  segment AK1 {
808
41
  FunctionalIdentifierCode S R 2-2 Tbl479 /* Code identifying a group of application related transaction sets */
@@ -866,15 +99,15 @@ grouped in functional groups, used in defining transactions for
866
99
  business data interchange. This standard does not cover the semantic
867
100
  meaning of the information encoded in the transaction sets. */
868
101
 
869
- loop 997 1:1
870
- {
871
- segment ST 1:1
102
+ loop 997 1:1 {
103
+ segment ST 1:1 {
104
+ TransactionSetIdentifierCode "997" R 3-3 /* Code uniquely identifying a Transaction Set */
105
+ TransactionSetControlNumber S R 4-9 /* Identifying control number that must be unique within the transaction set functional group assigned by the originator for a transaction set */
106
+ } # ST
872
107
  segment AK1 1:1
873
- loop L1000 0:999999
874
- {
108
+ loop L1000 0:999999 {
875
109
  segment AK2 0:1
876
- loop L1010 0:999999
877
- {
110
+ loop L1010 0:999999 {
878
111
  segment AK3 0:1
879
112
  segment AK4 0:99
880
113
  } # L1010