stupidedi 1.2.14 → 1.2.15
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +6 -6
- data/lib/ruby/jruby_hack.rb +683 -0
- data/lib/stupidedi.rb +4 -0
- data/lib/stupidedi/config.rb +1 -0
- data/lib/stupidedi/contrib/004010/guides.rb +1 -0
- data/lib/stupidedi/contrib/004010/guides/GF990.rb +6 -1
- data/lib/stupidedi/contrib/004010/guides/IM210.rb +267 -0
- data/lib/stupidedi/contrib/004010/guides/QM214.rb +17 -5
- data/lib/stupidedi/contrib/004010/guides/SM204.rb +252 -57
- data/lib/stupidedi/contrib/004010/transaction_set_defs.rb +3 -0
- data/lib/stupidedi/contrib/004010/transaction_set_defs/IM210.rb +47 -0
- data/lib/stupidedi/contrib/004010/transaction_set_defs/SM204.rb +20 -2
- data/lib/stupidedi/version.rb +1 -1
- data/lib/stupidedi/versions/functional_groups/004010/element_defs.rb +115 -4
- data/lib/stupidedi/versions/functional_groups/004010/segment_defs.rb +31 -0
- data/lib/stupidedi/versions/functional_groups/004010/segment_defs/B3.rb +31 -0
- data/lib/stupidedi/versions/functional_groups/004010/segment_defs/C3.rb +22 -0
- data/lib/stupidedi/versions/functional_groups/004010/segment_defs/H3.rb +25 -0
- data/lib/stupidedi/versions/functional_groups/004010/segment_defs/L0.rb +34 -0
- data/lib/stupidedi/versions/functional_groups/004010/segment_defs/L1.rb +42 -0
- data/lib/stupidedi/versions/functional_groups/004010/segment_defs/L3.rb +1 -1
- data/lib/stupidedi/versions/functional_groups/004010/segment_defs/L4.rb +25 -0
- data/lib/stupidedi/versions/functional_groups/004010/segment_defs/L7.rb +35 -0
- data/lib/stupidedi/versions/functional_groups/004010/segment_defs/LAD.rb +39 -0
- data/lib/stupidedi/versions/functional_groups/004010/segment_defs/MEA.rb +1 -1
- data/lib/stupidedi/versions/functional_groups/004010/segment_defs/N9.rb +7 -7
- data/lib/stupidedi/versions/functional_groups/004010/segment_defs/OID.rb +33 -0
- data/lib/stupidedi/versions/functional_groups/004010/segment_defs/R3.rb +28 -0
- data/lib/stupidedi/versions/functional_groups/005010/segment_defs/HI.rb +2 -2
- data/lib/stupidedi/versions/functional_groups/005010/transaction_set_defs/HC837.rb +2 -1
- data/spec/examples/ruby/symbol.example +20 -23
- data/spec/examples/stupidedi/versions/005010/element_types/nn.example +4 -3
- data/spec/examples/stupidedi/versions/005010/element_types/r.example +5 -4
- metadata +34 -46
- data/spec/coverage/assets/0.10.0/application.css +0 -799
- data/spec/coverage/assets/0.10.0/application.js +0 -1707
- data/spec/coverage/assets/0.10.0/colorbox/border.png +0 -0
- data/spec/coverage/assets/0.10.0/colorbox/controls.png +0 -0
- data/spec/coverage/assets/0.10.0/colorbox/loading.gif +0 -0
- data/spec/coverage/assets/0.10.0/colorbox/loading_background.png +0 -0
- data/spec/coverage/assets/0.10.0/favicon_green.png +0 -0
- data/spec/coverage/assets/0.10.0/favicon_red.png +0 -0
- data/spec/coverage/assets/0.10.0/favicon_yellow.png +0 -0
- data/spec/coverage/assets/0.10.0/loading.gif +0 -0
- data/spec/coverage/assets/0.10.0/magnify.png +0 -0
- data/spec/coverage/assets/0.10.0/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- data/spec/coverage/assets/0.10.0/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/spec/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
- data/spec/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/spec/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
- data/spec/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
- data/spec/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
- data/spec/coverage/assets/0.10.0/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
- data/spec/coverage/assets/0.10.0/smoothness/images/ui-icons_222222_256x240.png +0 -0
- data/spec/coverage/assets/0.10.0/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
- data/spec/coverage/assets/0.10.0/smoothness/images/ui-icons_454545_256x240.png +0 -0
- data/spec/coverage/assets/0.10.0/smoothness/images/ui-icons_888888_256x240.png +0 -0
- data/spec/coverage/assets/0.10.0/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
- data/spec/coverage/index.html +0 -72
@@ -31,6 +31,9 @@ module Stupidedi
|
|
31
31
|
autoload :QM214,
|
32
32
|
"stupidedi/contrib/004010/transaction_set_defs/QM214"
|
33
33
|
|
34
|
+
autoload :IM210,
|
35
|
+
"stupidedi/contrib/004010/transaction_set_defs/IM210"
|
36
|
+
|
34
37
|
autoload :GF990, # Response to a Load Tender
|
35
38
|
"stupidedi/contrib/004010/transaction_set_defs/GF990"
|
36
39
|
|
@@ -0,0 +1,47 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
module Stupidedi
|
3
|
+
module Contrib
|
4
|
+
module FortyTen
|
5
|
+
module TransactionSetDefs
|
6
|
+
d = Schema
|
7
|
+
r = SegmentReqs
|
8
|
+
s = SegmentDefs
|
9
|
+
|
10
|
+
IM210 = d::TransactionSetDef.build("IM", "210",
|
11
|
+
"Motor Carrier Freight Details and Invoice",
|
12
|
+
|
13
|
+
d::TableDef.header("Heading",
|
14
|
+
s:: ST.use( 10, r::Mandatory, d::RepeatCount.bounded(1)),
|
15
|
+
s:: B3.use( 20, r::Mandatory, d::RepeatCount.bounded(1)),
|
16
|
+
s:: C3.use( 40, r::Mandatory, d::RepeatCount.bounded(1)),
|
17
|
+
s:: N9.use( 60, r::Optional, d::RepeatCount.bounded(300)),
|
18
|
+
s::G62.use( 70, r::Optional, d::RepeatCount.bounded(6)),
|
19
|
+
s:: R3.use( 80, r::Optional, d::RepeatCount.bounded(12)),
|
20
|
+
s:: H3.use( 90, r::Optional, d::RepeatCount.bounded(6)),
|
21
|
+
|
22
|
+
d::LoopDef.build("0100", d::RepeatCount.bounded(5),
|
23
|
+
s:: N1.use(110, r::Mandatory, d::RepeatCount.bounded(1)),
|
24
|
+
s:: N3.use(130, r::Mandatory, d::RepeatCount.bounded(2)),
|
25
|
+
s:: N4.use(140, r::Mandatory, d::RepeatCount.bounded(1)),
|
26
|
+
s:: N9.use(150, r::Optional, d::RepeatCount.bounded(5)))),
|
27
|
+
|
28
|
+
d::LoopDef.build("0200", d::RepeatCount.bounded(10),
|
29
|
+
s:: N7.use(160, r::Mandatory, d::RepeatCount.bounded(1))),
|
30
|
+
|
31
|
+
d::TableDef.detail("Detail",
|
32
|
+
d::LoopDef.build("0400", d::RepeatCount.unbounded,
|
33
|
+
s:: LX.use(120, r::Mandatory, d::RepeatCount.bounded(1)),
|
34
|
+
s:: N9.use(130, r::Mandatory, d::RepeatCount.bounded(5)),
|
35
|
+
s:: L5.use(140, r::Optional, d::RepeatCount.bounded(30)),
|
36
|
+
s:: L0.use(170, r::Optional, d::RepeatCount.bounded(10)),
|
37
|
+
s:: L1.use(180, r::Optional, d::RepeatCount.bounded(10)),
|
38
|
+
s:: L4.use(190, r::Optional, d::RepeatCount.bounded(10)),
|
39
|
+
s:: L7.use(200, r::Optional, d::RepeatCount.bounded(10)))),
|
40
|
+
|
41
|
+
d::TableDef.summary("Summary",
|
42
|
+
s:: L3.use(10, r::Optional, d::RepeatCount.bounded(1)),
|
43
|
+
s:: SE.use(20, r::Mandatory, d::RepeatCount.bounded(1))))
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
@@ -36,6 +36,7 @@ module Stupidedi
|
|
36
36
|
s:: S5.use(10, r::Mandatory, d::RepeatCount.bounded(1)),
|
37
37
|
s::L11.use(20, r::Optional, d::RepeatCount.bounded(200)),
|
38
38
|
s::G62.use(30, r::Optional, d::RepeatCount.bounded(2)),
|
39
|
+
s::LAD.use(50, r::Optional, d::RepeatCount.bounded(999)),
|
39
40
|
s::NTE.use(65, r::Optional, d::RepeatCount.bounded(20)),
|
40
41
|
|
41
42
|
d::LoopDef.build("0310", d::RepeatCount.bounded(1),
|
@@ -56,9 +57,26 @@ module Stupidedi
|
|
56
57
|
s::LH1.use(143, r::Optional, d::RepeatCount.bounded(1)),
|
57
58
|
s::LH2.use(144, r::Optional, d::RepeatCount.bounded(4)),
|
58
59
|
s::LH3.use(145, r::Optional, d::RepeatCount.bounded(10)),
|
59
|
-
s::LFH.use(146, r::Optional, d::RepeatCount.bounded(20)))))
|
60
|
+
s::LFH.use(146, r::Optional, d::RepeatCount.bounded(20))))),
|
60
61
|
|
61
|
-
|
62
|
+
d::LoopDef.build("0350", d::RepeatCount.bounded(999),
|
63
|
+
s::OID.use(150, r::Optional, d::RepeatCount.bounded(1)),
|
64
|
+
|
65
|
+
d::LoopDef.build("0360", d::RepeatCount.bounded(99),
|
66
|
+
s:: L5.use(190, r::Optional, d::RepeatCount.bounded(1)),
|
67
|
+
s::AT8.use(195, r::Optional, d::RepeatCount.bounded(1)),
|
68
|
+
|
69
|
+
d::LoopDef.build("0365", d::RepeatCount.bounded(99),
|
70
|
+
s::G61.use(200, r::Optional, d::RepeatCount.bounded(1)),
|
71
|
+
s::L11.use(201, r::Optional, d::RepeatCount.bounded(5)),
|
72
|
+
|
73
|
+
d::LoopDef.build("0370", d::RepeatCount.bounded(25),
|
74
|
+
s::LH1.use(203, r::Optional, d::RepeatCount.bounded(1)),
|
75
|
+
s::LH2.use(204, r::Optional, d::RepeatCount.bounded(4)),
|
76
|
+
s::LH3.use(205, r::Optional, d::RepeatCount.bounded(10)),
|
77
|
+
s::LFH.use(206, r::Optional, d::RepeatCount.bounded(20)))))))),
|
78
|
+
|
79
|
+
d::TableDef.summary("Summary",
|
62
80
|
s:: L3.use(10, r::Optional, d::RepeatCount.bounded(1)),
|
63
81
|
s:: SE.use(20, r::Mandatory, d::RepeatCount.bounded(1))))
|
64
82
|
end
|
data/lib/stupidedi/version.rb
CHANGED
@@ -13,6 +13,7 @@ module Stupidedi
|
|
13
13
|
s = Schema
|
14
14
|
|
15
15
|
E2 = t::Nn.new(:E2 , "Number of Accepted Transaction Sets" , 1, 6, 0)
|
16
|
+
E16 = t::ID.new(:E16 , "Charge Method of Payment" , 1, 1)
|
16
17
|
E19 = t::AN.new(:E19 , "City Name" , 2, 30)
|
17
18
|
E22 = t::AN.new(:E22 , "Commodity Code" , 1, 30)
|
18
19
|
E23 = t::ID.new(:E23 , "Commodity Code Qualifier" , 1, 1,
|
@@ -27,6 +28,8 @@ module Stupidedi
|
|
27
28
|
s::CodeList.external("5"))
|
28
29
|
|
29
30
|
E28 = t::Nn.new(:E28 , "Group Control Number" , 1, 9, 0)
|
31
|
+
E32 = t::DT.new(:E32 , "Invoice Due Date" , 8, 8)
|
32
|
+
E39 = t::ID.new(:E39 , "Entitlement Code" , 1, 1)
|
30
33
|
|
31
34
|
E40 = t::ID.new(:E40 , "Equipment Description Code" , 2, 2,
|
32
35
|
s::CodeList.build(
|
@@ -39,6 +42,8 @@ module Stupidedi
|
|
39
42
|
"TL" => "Trailer (not otherwise specified)",
|
40
43
|
"TV" => "Truck, Van"))
|
41
44
|
|
45
|
+
E46 = t::AN.new(:E46 , "Ex Parte" , 4, 4)
|
46
|
+
|
42
47
|
E56 = t::ID.new(:E56 , "Type of Service Code" , 2, 2,
|
43
48
|
s::CodeList.build(
|
44
49
|
"AI" => "Transport Mode Change",
|
@@ -288,19 +293,23 @@ module Stupidedi
|
|
288
293
|
E67 = t::AN.new(:E67 , "Identification Code" , 2, 80)
|
289
294
|
E71 = t::Nn.new(:E71 , "Inquiry Request Number" , 1, 3, 0)
|
290
295
|
E74 = t:: R.new(:E74 , "Declared Value" , 2, 12)
|
296
|
+
E76 = t::AN.new(:E76 , "Invoice Number" , 1, 22)
|
291
297
|
E79 = t::AN.new(:E79 , "Lading Description" , 1, 50)
|
292
298
|
E80 = t::Nn.new(:E80 , "Lading Quantity" , 1, 7, 0)
|
293
299
|
E81 = t:: R.new(:E81 , "Weight" , 1, 10)
|
300
|
+
E82 = t:: R.new(:E82 , "Length" , 1, 8)
|
294
301
|
E86 = t::ID.new(:E86 , "Total Equipment" , 1, 3)
|
295
302
|
E87 = t::AN.new(:E87 , "Marks and Numbers" , 1, 48)
|
296
303
|
E88 = t::ID.new(:E88 , "Marks and Numbers Qualifier" , 1, 2,
|
297
304
|
s::CodeList.build(
|
298
305
|
"UP" => "U.P.C. Consumer Package Code (1-5-5-1)",
|
299
306
|
"GM" => "SSCC-18 and Application Identifier"))
|
307
|
+
E90 = t:: R.new(:E90 , "Height" , 1, 8)
|
300
308
|
E91 = t::ID.new(:E91 , "Transportation Method/Type Code" , 1, 2,
|
301
309
|
s::CodeList.build(
|
302
310
|
"A" => "Air",
|
303
311
|
"H" => "Customer Pickup",
|
312
|
+
"J" => "Motor",
|
304
313
|
"M" => "Motor (Common Carrier)",
|
305
314
|
"R" => "Rail",
|
306
315
|
"S" => "Ocean",
|
@@ -341,7 +350,13 @@ module Stupidedi
|
|
341
350
|
"SU" => "Supplier/Manufacturer",
|
342
351
|
"TT" => "Transfer To",
|
343
352
|
"WH" => "Warehouse",
|
344
|
-
"OB" => "Ordered By"
|
353
|
+
"OB" => "Ordered By",
|
354
|
+
"N5" => "Signed BOL",
|
355
|
+
"FR" => "Contacted Customer",
|
356
|
+
"PW" => "Pick Up Address",
|
357
|
+
"AB" => "Additional Pick Up Address",
|
358
|
+
"DA" => "Delivery Address",
|
359
|
+
"AE" => "Addtional Delivery Address"))
|
345
360
|
|
346
361
|
E100 = t::ID.new(:E100 , "Currency Code" , 3, 3,
|
347
362
|
s::CodeList.external("5"))
|
@@ -402,6 +417,8 @@ module Stupidedi
|
|
402
417
|
E116 = t::ID.new(:E116 , "Postal Code" , 3, 15,
|
403
418
|
s::CodeList.external("51"))
|
404
419
|
E117 = t::Nn.new(:E117 , "Prepaid Amount" , 1, 15, 2)
|
420
|
+
E119 = t::AN.new(:E119 , "Rate Basis Number" , 1, 6)
|
421
|
+
E120 = t::AN.new(:E120 , "Rate Combination Point" , 3, 9)
|
405
422
|
E121 = t::ID.new(:E121 , "Rate Class Code" , 1, 3,
|
406
423
|
s::CodeList.build(
|
407
424
|
"A" => "Alternate Rating",
|
@@ -3966,6 +3983,7 @@ module Stupidedi
|
|
3966
3983
|
"WTV" => "Weight Verification",
|
3967
3984
|
"ZZZ" => "Mutually Defined"))
|
3968
3985
|
|
3986
|
+
E153 = t::AN.new(:E153 , "Special Handling Description" , 2, 30)
|
3969
3987
|
E154 = t::ID.new(:E154 , "Standard Point Location Code" , 6, 9)
|
3970
3988
|
E156 = t::ID.new(:E156 , "State or Province Code" , 2, 2,
|
3971
3989
|
s::CodeList.external("22"))
|
@@ -3980,7 +3998,12 @@ module Stupidedi
|
|
3980
3998
|
E165 = t::Nn.new(:E165 , "Stop Sequence Number" , 1, 3, 0)
|
3981
3999
|
E166 = t::AN.new(:E166 , "Address Information" , 1, 55)
|
3982
4000
|
E167 = t::Nn.new(:E167 , "Tare Weight" , 3, 8, 0)
|
3983
|
-
|
4001
|
+
E168 = t::ID.new(:E168 , "Tariff Agency Code" , 1, 4)
|
4002
|
+
E169 = t::AN.new(:E169 , "Tariff Item Number" , 1, 16)
|
4003
|
+
E170 = t::Nn.new(:E170 , "Tariff Item Part" , 1, 2, 0)
|
4004
|
+
E171 = t::AN.new(:E171 , "Tariff Number" , 1, 7)
|
4005
|
+
E172 = t::AN.new(:E172 , "Tariff Section" , 1, 2)
|
4006
|
+
E173 = t::AN.new(:E173 , "Tariff Supplement" , 1, 4)
|
3984
4007
|
E176 = t::ID.new(:E176 , "Time Qualifier" , 1, 2,
|
3985
4008
|
s::CodeList.build(
|
3986
4009
|
"I" => "Ship Not Before Time",
|
@@ -3996,7 +4019,8 @@ module Stupidedi
|
|
3996
4019
|
|
3997
4020
|
E187 = t::ID.new(:E187 , "Weight Qualifier" , 1, 2,
|
3998
4021
|
s::CodeList.build(
|
3999
|
-
"G" => "Gross Weight"
|
4022
|
+
"G" => "Gross Weight",
|
4023
|
+
"N" => "Net Weight"))
|
4000
4024
|
|
4001
4025
|
E188 = t::ID.new(:E188 , "Weight Unit Code" , 1, 1,
|
4002
4026
|
s::CodeList.build(
|
@@ -4014,19 +4038,29 @@ module Stupidedi
|
|
4014
4038
|
"A" => "Accomplished",
|
4015
4039
|
"P" => "Pending"))
|
4016
4040
|
E191 = t::Nn.new(:E191 , "Advances" , 1, 9, 2)
|
4041
|
+
E193 = t::Nn.new(:E193 , "Net Amount Due" , 1, 12, 2)
|
4017
4042
|
E200 = t::AN.new(:E200 , "Hazardous Materials Page" , 1, 6)
|
4043
|
+
E202 = t::ID.new(:E202 , "Correction Indicator" , 2, 2,
|
4044
|
+
s::CodeList.build(
|
4045
|
+
"AD" => "Adjustment of Previous Freight Bill Charges",
|
4046
|
+
"BD" => "Balance Due Indicator",
|
4047
|
+
"RB" => "Rebilling (Ignore previous bill)"))
|
4018
4048
|
E205 = t::Nn.new(:E205 , "Dunnage" , 1, 6, 0)
|
4019
4049
|
E206 = t::AN.new(:E206 , "Equipment Initial" , 1, 4)
|
4020
4050
|
E207 = t::AN.new(:E207 , "Equipment Number" , 1, 10)
|
4051
|
+
E211 = t::ID.new(:E215 , "Packaging Form Code" , 3, 3)
|
4021
4052
|
E212 = t:: R.new(:E212 , "Unit Price" , 1, 17)
|
4022
4053
|
E213 = t::Nn.new(:E213 , "Lading Line Item Number" , 1, 3, 0)
|
4023
4054
|
E215 = t::ID.new(:E215 , "Hazardous Classification" , 1, 30)
|
4024
4055
|
E218 = t::ID.new(:E218 , "Hazardous Placard Notation Code" , 14,40)
|
4025
4056
|
E219 = t::AN.new(:E219 , "Position" , 1, 3)
|
4057
|
+
E220 = t:: R.new(:E215 , "Billed/Rated-as Quantity" , 1, 11)
|
4058
|
+
E221 = t::ID.new(:E215 , "Billed/Rated-as Qualifier" , 2, 2)
|
4026
4059
|
E222 = t::ID.new(:E222 , "Hazardous Endorsement Code" , 4, 25,
|
4027
4060
|
s::CodeList.external("83"))
|
4028
4061
|
E224 = t::ID.new(:E224 , "Hazardous Material Shipping Name" , 1, 25)
|
4029
4062
|
E225 = t::AN.new(:E225 , "Seal Number" , 2, 15)
|
4063
|
+
E227 = t::AN.new(:E227 , "Tariff Column" , 1, 2)
|
4030
4064
|
E232 = t::Nn.new(:E232 , "Weight Allowance" , 2, 6, 0)
|
4031
4065
|
E234 = t::AN.new(:E234 , "Product/Service ID" , 1, 48)
|
4032
4066
|
E235 = t::ID.new(:E235 , "Product/Service ID Qualifier" , 2, 2,
|
@@ -4058,8 +4092,76 @@ module Stupidedi
|
|
4058
4092
|
"ZZ" => "Mutually Defined"))
|
4059
4093
|
|
4060
4094
|
E236 = t::ID.new(:E236 , "Price Identifier Code" , 3, 3)
|
4095
|
+
E241 = t::ID.new(:E241 , "Protective Service Code" , 1, 4)
|
4096
|
+
E242 = t::ID.new(:E242 , "Vent Instruction Code" , 1, 7)
|
4061
4097
|
E254 = t::ID.new(:E254 , "Packing Group Code" , 1, 3)
|
4098
|
+
E257 = t::ID.new(:E257 , "Tariff Application Code" , 1, 1)
|
4062
4099
|
E267 = t::Nn.new(:E267 , "Net Explosive Quantity" , 1, 10, 0)
|
4100
|
+
E276 = t::AN.new(:E276 , "Special Charge Description" , 2, 25,
|
4101
|
+
s::CodeList.build(
|
4102
|
+
"020" => "Address Correction",
|
4103
|
+
"405" => "Fuel Surcharge",
|
4104
|
+
"455" => "Insurance Premium",
|
4105
|
+
"520" => "Oversize Premium",
|
4106
|
+
"ADH" => "Advance Charges Handling",
|
4107
|
+
"APT" => "Appointment (Notification)",
|
4108
|
+
"ARB" => "Arbitrary (In Addition to Through Rates and Charges)",
|
4109
|
+
"BEY" => "Beyond Freight Charges",
|
4110
|
+
"BND" => "Bond Charges",
|
4111
|
+
"CLN" => "Cleaning Charge",
|
4112
|
+
"COL" => "Fee for Collecting COD Charge",
|
4113
|
+
"DEL" => "Delivery Charge",
|
4114
|
+
"DET" => "Detention of Trailers",
|
4115
|
+
"DIV" => "Diversion and Reconsignment",
|
4116
|
+
"DTL" => "Detention Loading",
|
4117
|
+
"DTU" => "Detention Unloading",
|
4118
|
+
"DTV" => "Detention (Vehicle)",
|
4119
|
+
"EIC" => "Export/Import Charge",
|
4120
|
+
"EVC" => "Excessive Value Charge",
|
4121
|
+
"EXW" => "Excess Weight",
|
4122
|
+
"FUE" => "Fuel Charge",
|
4123
|
+
"HAN" => "Handling Charges on Distribution Freight Forwarded Beyond",
|
4124
|
+
"HAZ" => "Hazardous Cargo Charge",
|
4125
|
+
"HOL" => "Sunday or Holiday Pick-up or Delivery",
|
4126
|
+
"IDL" => "Inside Delivery",
|
4127
|
+
"IPU" => "Inside Pick-up",
|
4128
|
+
"LAB" => "Extra Labor (Helper Service)",
|
4129
|
+
"LFT" => "Lift Gate (Truck) or Forklift Service at Pick-up/Delivery",
|
4130
|
+
"LOA" => "Loading (Labor Charges)",
|
4131
|
+
"MNC" => "Notify Consignee",
|
4132
|
+
"MRK" => "Marking or Tagging Charge",
|
4133
|
+
"MSC" => "Other Accessorial Service Charge",
|
4134
|
+
"MSG" => "Miscellaneous Charge",
|
4135
|
+
"OVR" => "Over Dimension",
|
4136
|
+
"PBE" => "Permits Bond Escort Attendant",
|
4137
|
+
"PER" => "Permit Charge",
|
4138
|
+
"PSC" => "Protective Service - Cold",
|
4139
|
+
"PSG" => "Protective Service Security with Armed Guards",
|
4140
|
+
"RCC" => "Reconsignment Charge",
|
4141
|
+
"RCL" => "Redelivery",
|
4142
|
+
"REP" => "Residential Pick-up",
|
4143
|
+
"RES" => "Residential Delivery",
|
4144
|
+
"SCL" => "Scale Charge",
|
4145
|
+
"SEG" => "Segregating (Sorting)",
|
4146
|
+
"SER" => "Service Charge (i.e. White Glove, Show Freight)",
|
4147
|
+
"SOC" => "Stop-off Charge",
|
4148
|
+
"SPC" => "Special Permits",
|
4149
|
+
"SPT" => "Spotting of Trailer",
|
4150
|
+
"SRG" => "Storage",
|
4151
|
+
"SSC" => "Stripping, Sorting, and Consolidation",
|
4152
|
+
"SSF" => "Single Shipment Fee",
|
4153
|
+
"STR" => "Storage in Transit",
|
4154
|
+
"SUF" => "Sufferance Warehouse Charge (Export or Import)",
|
4155
|
+
"TAX" => "Tax Charge",
|
4156
|
+
"TRA" => "Travel Charge",
|
4157
|
+
"TRF" => "Transfer Charge",
|
4158
|
+
"UND" => "Unloading",
|
4159
|
+
"UNL" => "Unloading (Labor Charge)",
|
4160
|
+
"URC" => "Unloading/Reloading Charge",
|
4161
|
+
"VOR" => "Vehicle Ordered but Not Used",
|
4162
|
+
"WRC" => "Load Weighing Charge",
|
4163
|
+
"WTV" => "Weight Verification Charge"))
|
4164
|
+
|
4063
4165
|
E277 = t::ID.new(:E277 , "UN/NA Identification Code" , 6, 6)
|
4064
4166
|
E280 = t:: R.new(:E280 , "Exchange Rate" , 4, 10)
|
4065
4167
|
E285 = t::AN.new(:E285 , "Depositor Order Number" , 1, 22)
|
@@ -4077,6 +4179,8 @@ module Stupidedi
|
|
4077
4179
|
"ZZ" => "Mutually Defined"))
|
4078
4180
|
|
4079
4181
|
E289 = t::Nn.new(:E289 , "Multiple Price Quantity" , 1, 2, 0)
|
4182
|
+
E294 = t::Nn.new(:E294 , "Tariff Distance" , 1, 5, 0)
|
4183
|
+
E295 = t::ID.new(:E295 , "Distance Qualifier" , 1, 1)
|
4080
4184
|
E301 = t::ID.new(:E301 , "Car Type Code" , 1, 4)
|
4081
4185
|
E305 = t::ID.new(:E305 , "Transaction Handling Code" , 1, 2,
|
4082
4186
|
s::CodeList.build(
|
@@ -4672,6 +4776,7 @@ module Stupidedi
|
|
4672
4776
|
"CC" => "Shipment Complete on"))
|
4673
4777
|
|
4674
4778
|
E369 = t::AN.new(:E369, "Free-form Description" , 1, 45)
|
4779
|
+
E372 = t::ID.new(:E372, "Liability Code" , 1, 1)
|
4675
4780
|
E373 = t::DT.new(:E373 , "Date" , 8, 8)
|
4676
4781
|
E374 = t::ID.new(:E374 , "Date/Time Qualifier" , 3, 3,
|
4677
4782
|
s::CodeList.build(
|
@@ -4686,6 +4791,7 @@ module Stupidedi
|
|
4686
4791
|
"038" => "Ship no later",
|
4687
4792
|
"050" => "Received",
|
4688
4793
|
"097" => "Transaction Creation",
|
4794
|
+
"140" => "Actual",
|
4689
4795
|
"150" => "Service Period Start",
|
4690
4796
|
"151" => "Service Period End",
|
4691
4797
|
"175" => "Cancel if not shipped by",
|
@@ -4787,6 +4893,7 @@ module Stupidedi
|
|
4787
4893
|
"11" => "Shipped Date",
|
4788
4894
|
"17" => "Estimated Delivery Date",
|
4789
4895
|
"19" => "Date Unloaded",
|
4896
|
+
"35" => "Delivered On This Date",
|
4790
4897
|
"37" => "Ship Not Before Date",
|
4791
4898
|
"38" => "Ship Not Later Than Date",
|
4792
4899
|
"53" => "Deliver Not Before Date",
|
@@ -5341,7 +5448,9 @@ module Stupidedi
|
|
5341
5448
|
E610 = t::Nn.new(:E610 , "Amount" , 1, 15, 2)
|
5342
5449
|
E623 = t::ID.new(:E623 , "Time Code" , 2, 2,
|
5343
5450
|
s::CodeList.build(
|
5344
|
-
"LT" => "Local Time (Preferred Usage - Explain in detail)"
|
5451
|
+
"LT" => "Local Time (Preferred Usage - Explain in detail)",
|
5452
|
+
"MT" => "Mountain Time",
|
5453
|
+
"CT" => "Central Time"))
|
5345
5454
|
|
5346
5455
|
E625 = t::ID.new(:E625 , "COD Method of Payment Code" , 1, 1,
|
5347
5456
|
s::CodeList.build(
|
@@ -7631,6 +7740,7 @@ module Stupidedi
|
|
7631
7740
|
"ZZN" => "Zinc",
|
7632
7741
|
"ZZR" => "Zirconium",
|
7633
7742
|
"ZZZ" => "Mutually Defined"))
|
7743
|
+
E739 = t:: R.new(:E739 , "Measurement Value" , 1, 20)
|
7634
7744
|
|
7635
7745
|
E740 = t:: R.new(:E740 , "Range Minimum" , 1, 20)
|
7636
7746
|
E741 = t:: R.new(:E741 , "Range Maximum" , 1, 20)
|
@@ -9328,6 +9438,7 @@ module Stupidedi
|
|
9328
9438
|
"A7" => "Refused by Consignee",
|
9329
9439
|
"A9" => "Shipment Damaged",
|
9330
9440
|
"AF" => "Carrier Departed Pick-up Location with Shipment",
|
9441
|
+
"AA" => "Estimated Pick Up",
|
9331
9442
|
"AG" => "Estimated Delivery",
|
9332
9443
|
"AH" => "Attempted Delivery",
|
9333
9444
|
"AI" => "Shipment has been Reconsigned",
|
@@ -68,9 +68,16 @@ module Stupidedi
|
|
68
68
|
autoload :AT8,
|
69
69
|
"stupidedi/versions/functional_groups/004010/segment_defs/AT8"
|
70
70
|
|
71
|
+
|
71
72
|
autoload :B2A,
|
72
73
|
"stupidedi/versions/functional_groups/004010/segment_defs/B2A"
|
73
74
|
|
75
|
+
autoload :B3,
|
76
|
+
"stupidedi/versions/functional_groups/004010/segment_defs/B3"
|
77
|
+
|
78
|
+
autoload :C3,
|
79
|
+
"stupidedi/versions/functional_groups/004010/segment_defs/C3"
|
80
|
+
|
74
81
|
autoload :G61,
|
75
82
|
"stupidedi/versions/functional_groups/004010/segment_defs/G61"
|
76
83
|
|
@@ -83,18 +90,36 @@ module Stupidedi
|
|
83
90
|
autoload :HL,
|
84
91
|
"stupidedi/versions/functional_groups/004010/segment_defs/HL"
|
85
92
|
|
93
|
+
autoload :H3,
|
94
|
+
"stupidedi/versions/functional_groups/004010/segment_defs/H3"
|
95
|
+
|
86
96
|
autoload :K1,
|
87
97
|
"stupidedi/versions/functional_groups/004010/segment_defs/K1"
|
88
98
|
|
89
99
|
autoload :L11,
|
90
100
|
"stupidedi/versions/functional_groups/004010/segment_defs/L11"
|
91
101
|
|
102
|
+
autoload :L0,
|
103
|
+
"stupidedi/versions/functional_groups/004010/segment_defs/L0"
|
104
|
+
|
105
|
+
autoload :L1,
|
106
|
+
"stupidedi/versions/functional_groups/004010/segment_defs/L1"
|
107
|
+
|
92
108
|
autoload :L3,
|
93
109
|
"stupidedi/versions/functional_groups/004010/segment_defs/L3"
|
94
110
|
|
111
|
+
autoload :L4,
|
112
|
+
"stupidedi/versions/functional_groups/004010/segment_defs/L4"
|
113
|
+
|
95
114
|
autoload :L5,
|
96
115
|
"stupidedi/versions/functional_groups/004010/segment_defs/L5"
|
97
116
|
|
117
|
+
autoload :L7,
|
118
|
+
"stupidedi/versions/functional_groups/004010/segment_defs/L7"
|
119
|
+
|
120
|
+
autoload :LAD,
|
121
|
+
"stupidedi/versions/functional_groups/004010/segment_defs/LAD"
|
122
|
+
|
98
123
|
autoload :LIN,
|
99
124
|
"stupidedi/versions/functional_groups/004010/segment_defs/LIN"
|
100
125
|
|
@@ -164,6 +189,9 @@ module Stupidedi
|
|
164
189
|
autoload :NTE,
|
165
190
|
"stupidedi/versions/functional_groups/004010/segment_defs/NTE"
|
166
191
|
|
192
|
+
autoload :OID,
|
193
|
+
"stupidedi/versions/functional_groups/004010/segment_defs/OID"
|
194
|
+
|
167
195
|
autoload :PLB,
|
168
196
|
"stupidedi/versions/functional_groups/004010/segment_defs/PLB"
|
169
197
|
|
@@ -185,6 +213,9 @@ module Stupidedi
|
|
185
213
|
autoload :QTY,
|
186
214
|
"stupidedi/versions/functional_groups/004010/segment_defs/QTY"
|
187
215
|
|
216
|
+
autoload :R3,
|
217
|
+
"stupidedi/versions/functional_groups/004010/segment_defs/R3"
|
218
|
+
|
188
219
|
autoload :REF,
|
189
220
|
"stupidedi/versions/functional_groups/004010/segment_defs/REF"
|
190
221
|
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
module Stupidedi
|
3
|
+
module Versions
|
4
|
+
module FunctionalGroups
|
5
|
+
module FortyTen
|
6
|
+
module SegmentDefs
|
7
|
+
|
8
|
+
s = Schema
|
9
|
+
e = ElementDefs
|
10
|
+
r = ElementReqs
|
11
|
+
|
12
|
+
B3 = s::SegmentDef.build(:B3, "Beginning Segment for Carrier's Invoice",
|
13
|
+
"To transmit basic data relating to the carrier's invoice",
|
14
|
+
e::E147 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
15
|
+
e::E76 .simple_use(r::Mandatory, s::RepeatCount.bounded(1)),
|
16
|
+
e::E145 .simple_use(r::Mandatory, s::RepeatCount.bounded(1)),
|
17
|
+
e::E146 .simple_use(r::Mandatory, s::RepeatCount.bounded(1)),
|
18
|
+
e::E188 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
19
|
+
e::E373 .simple_use(r::Mandatory, s::RepeatCount.bounded(1)),
|
20
|
+
e::E193 .simple_use(r::Mandatory, s::RepeatCount.bounded(1)),
|
21
|
+
e::E202 .simple_use(r::Optional, s::RepeatCount.bounded(1)),
|
22
|
+
e::E32 .simple_use(r::Mandatory, s::RepeatCount.bounded(1)),
|
23
|
+
e::E374 .simple_use(r::Mandatory, s::RepeatCount.bounded(1)),
|
24
|
+
e::E140 .simple_use(r::Mandatory, s::RepeatCount.bounded(1)),
|
25
|
+
e::E373 .simple_use(r::Optional, s::RepeatCount.bounded(1)))
|
26
|
+
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|