stupidedi 1.5.1 → 1.5.2
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.
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: '08769ed6c55dd39ff1fef9b53f216ae4ddd9480ec64d39244e2ce40f2e5a6b3d'
|
|
4
|
+
data.tar.gz: da436b4c7c4ddac494dc5ae282661a5f3d038a45734b6940ea3cff32540f5108
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: c9f8052c21ac6bb410a0b2873258d86dbd47db7019a041bda1d8128d3f17d069c6e562cdb134270a7baa8e9381ff5d7788c9374c54ec1bd3ca509a9e9c0ff5a4
|
|
7
|
+
data.tar.gz: 913c1d7810885282b72f7e931c2fcb9eb2d5876f720b8707fcce7e85a0d33b3f9c72430077bf51f325555fe762c1bd41c723981370b0576e586fe23028bce108
|
|
@@ -9,9 +9,12 @@ module Stupidedi
|
|
|
9
9
|
e = ElementReqs
|
|
10
10
|
s = SegmentDefs
|
|
11
11
|
|
|
12
|
+
# Re-enabled per issue #175. The element lists were completed to match the
|
|
13
|
+
# current segment definitions (s::SEG); elements the 4010 850 does not
|
|
14
|
+
# exercise are marked NotUsed. See spec/fixtures/004010/PO850/.
|
|
12
15
|
PO850 = b.build("PO", "850", "Purchase Order",
|
|
13
16
|
d::TableDef.header("Heading",
|
|
14
|
-
b::Segment(10, s::
|
|
17
|
+
b::Segment(10, s::ST, "Transaction Set Header", r::Required, d::RepeatCount.bounded(1),
|
|
15
18
|
b::Element(e::Required, "Transaction Set Identifier Code", b::Values("850")),
|
|
16
19
|
b::Element(e::Required, "Transaction Set Control Number")),
|
|
17
20
|
b::Segment(20, s::BEG, "Beginning Segment for Purchase Order", r::Required, d::RepeatCount.bounded(1),
|
|
@@ -19,39 +22,82 @@ module Stupidedi
|
|
|
19
22
|
b::Element(e::Required, "Purchase Order Type Code", b::Values("NE")),
|
|
20
23
|
b::Element(e::Required, "Purchase Order Number"),
|
|
21
24
|
b::Element(e::Situational, "Release Number"),
|
|
22
|
-
b::Element(e::Required, "Date")
|
|
25
|
+
b::Element(e::Required, "Date"),
|
|
26
|
+
b::Element(e::NotUsed, "Contract Number"),
|
|
27
|
+
b::Element(e::NotUsed, "Acknowledgment Type Code"),
|
|
28
|
+
b::Element(e::NotUsed, "Invoice Type Code"),
|
|
29
|
+
b::Element(e::NotUsed, "Contract Type Code"),
|
|
30
|
+
b::Element(e::NotUsed, "Purchase Category Code"),
|
|
31
|
+
b::Element(e::NotUsed, "Security Level Code"),
|
|
32
|
+
b::Element(e::NotUsed, "Transaction Type Code")),
|
|
23
33
|
b::Segment(40, s::CUR, "Currency", r::Situational, d::RepeatCount.bounded(1),
|
|
24
|
-
b::Element(e::Required, "Entity Identifier Code", b::Values("BT","BY","CN","SH","SF","ST"),
|
|
25
|
-
b::Element(e::Required, "Currency Code")
|
|
34
|
+
b::Element(e::Required, "Entity Identifier Code", b::Values("BT", "BY", "CN", "SH", "SF", "ST")),
|
|
35
|
+
b::Element(e::Required, "Currency Code"),
|
|
36
|
+
b::Element(e::NotUsed, "Exchange Rate"),
|
|
37
|
+
b::Element(e::NotUsed, "Entity Identifier Code"),
|
|
38
|
+
b::Element(e::NotUsed, "Currency Code"),
|
|
39
|
+
b::Element(e::NotUsed, "Currency Market/Exchange Code"),
|
|
40
|
+
b::Element(e::NotUsed, "Date/Time Qualifier"),
|
|
41
|
+
b::Element(e::NotUsed, "Date"),
|
|
42
|
+
b::Element(e::NotUsed, "Time"),
|
|
43
|
+
b::Element(e::NotUsed, "Date/Time Qualifier"),
|
|
44
|
+
b::Element(e::NotUsed, "Date"),
|
|
45
|
+
b::Element(e::NotUsed, "Time"),
|
|
46
|
+
b::Element(e::NotUsed, "Date/Time Qualifier"),
|
|
47
|
+
b::Element(e::NotUsed, "Date"),
|
|
48
|
+
b::Element(e::NotUsed, "Time"),
|
|
49
|
+
b::Element(e::NotUsed, "Date/Time Qualifier"),
|
|
50
|
+
b::Element(e::NotUsed, "Date"),
|
|
51
|
+
b::Element(e::NotUsed, "Time"),
|
|
52
|
+
b::Element(e::NotUsed, "Date/Time Qualifier"),
|
|
53
|
+
b::Element(e::NotUsed, "Date"),
|
|
54
|
+
b::Element(e::NotUsed, "Time")),
|
|
26
55
|
b::Segment(50, s::REF, "Reference Identification", r::Situational, d::RepeatCount.unbounded,
|
|
27
56
|
b::Element(e::Required, "Reference Identification Qualifier", b::Values("ZZ", "OS")),
|
|
28
|
-
b::Element(e::Situational, "Reference Identification")
|
|
57
|
+
b::Element(e::Situational, "Reference Identification"),
|
|
58
|
+
b::Element(e::NotUsed, "Description"),
|
|
59
|
+
b::Element(e::NotUsed, "Reference Identifier")),
|
|
29
60
|
b::Segment(60, s::PER, "Administrative Communications Contact", r::Situational, d::RepeatCount.bounded(3),
|
|
30
61
|
b::Element(e::Required, "Contact Function Code", b::Values("BD")),
|
|
31
62
|
b::Element(e::Situational, "Name"),
|
|
32
63
|
b::Element(e::Situational, "Communication Number Qualifier", b::Values("TE")),
|
|
33
|
-
b::Element(e::Situational, "Communication Number")
|
|
64
|
+
b::Element(e::Situational, "Communication Number"),
|
|
65
|
+
b::Element(e::NotUsed, "Communication Number Qualifier"),
|
|
66
|
+
b::Element(e::NotUsed, "Communication Number"),
|
|
67
|
+
b::Element(e::NotUsed, "Communication Number Qualifier"),
|
|
68
|
+
b::Element(e::NotUsed, "Communication Number"),
|
|
69
|
+
b::Element(e::NotUsed, "Contact Inquiry Reference")),
|
|
34
70
|
b::Segment(150, s::DTM, "Date/Time Reference", r::Situational, d::RepeatCount.bounded(10),
|
|
35
71
|
b::Element(e::Required, "Date/Time Qualifier", b::Values("002")),
|
|
36
|
-
b::Element(e::Situational, "Date")
|
|
72
|
+
b::Element(e::Situational, "Date"),
|
|
73
|
+
b::Element(e::NotUsed, "Time"),
|
|
74
|
+
b::Element(e::NotUsed, "Time Code"),
|
|
75
|
+
b::Element(e::NotUsed, "Date Time Period Format Qualifier"),
|
|
76
|
+
b::Element(e::NotUsed, "Date Time Period")),
|
|
37
77
|
|
|
38
78
|
d::LoopDef.build("N1", d::RepeatCount.bounded(200),
|
|
39
|
-
b::Segment(310, s::
|
|
79
|
+
b::Segment(310, s::N1, "Name", r::Situational, d::RepeatCount.bounded(1),
|
|
40
80
|
b::Element(e::Required, "Entity Identifier Code", b::Values("SF", "ST")),
|
|
41
81
|
b::Element(e::Required, "Name"),
|
|
42
82
|
b::Element(e::Situational, "Identification Code Qualifier", b::Values("91")),
|
|
43
|
-
b::Element(e::Situational, "Identification Code")
|
|
44
|
-
|
|
83
|
+
b::Element(e::Situational, "Identification Code"),
|
|
84
|
+
b::Element(e::NotUsed, "Entity Relationship Code"),
|
|
85
|
+
b::Element(e::NotUsed, "Entity Identifier Code")),
|
|
86
|
+
b::Segment(330, s::N3, "Address Information", r::Situational, d::RepeatCount.bounded(2),
|
|
45
87
|
b::Element(e::Required, "Address Information"),
|
|
46
88
|
b::Element(e::Situational, "Address Information")),
|
|
47
|
-
b::Segment(340, s::
|
|
89
|
+
b::Segment(340, s::N4, "Geographic Location", r::Situational, d::RepeatCount.unbounded,
|
|
48
90
|
b::Element(e::Situational, "City Name"),
|
|
49
91
|
b::Element(e::Situational, "State or Province Code"),
|
|
50
92
|
b::Element(e::Situational, "Postal Code"),
|
|
51
|
-
b::Element(e::Situational, "Country Code")
|
|
93
|
+
b::Element(e::Situational, "Country Code"),
|
|
94
|
+
b::Element(e::NotUsed, "Location Qualifier"),
|
|
95
|
+
b::Element(e::NotUsed, "Location Identifier")),
|
|
52
96
|
b::Segment(350, s::REF, "Reference Identification", r::Situational, d::RepeatCount.bounded(12),
|
|
53
97
|
b::Element(e::Required, "Reference Identification Qualifier", b::Values("DP")),
|
|
54
|
-
b::Element(e::Situational, "Reference Identification")
|
|
98
|
+
b::Element(e::Situational, "Reference Identification"),
|
|
99
|
+
b::Element(e::NotUsed, "Description"),
|
|
100
|
+
b::Element(e::NotUsed, "Reference Identifier")))),
|
|
55
101
|
|
|
56
102
|
d::TableDef.header("Detail",
|
|
57
103
|
d::LoopDef.build("PO1", d::RepeatCount.bounded(100000),
|
|
@@ -60,47 +106,80 @@ module Stupidedi
|
|
|
60
106
|
b::Element(e::Situational, "Quantity Ordered"),
|
|
61
107
|
b::Element(e::Situational, "Unit or Basis for Measurement Code", b::Values("CA", "EA", "LB")),
|
|
62
108
|
b::Element(e::Situational, "Unit Price"),
|
|
63
|
-
b::Element(e::Situational, "Basis of Unit Price Code", b::
|
|
109
|
+
b::Element(e::Situational, "Basis of Unit Price Code", b::Values("PE", "PP", "UM")),
|
|
64
110
|
b::Element(e::Situational, "Product/Service ID Qualifier", b::Values("VN", "VC")),
|
|
65
|
-
b::Element(e::Situational, "Product/Service ID")
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
b::Element(e::
|
|
69
|
-
b::Element(e::
|
|
70
|
-
b::Element(e::
|
|
71
|
-
b::Element(e::
|
|
72
|
-
b::Element(e::
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
b::Element(e::
|
|
76
|
-
b::Element(e::
|
|
77
|
-
b::Element(e::
|
|
78
|
-
b::Element(e::
|
|
79
|
-
b::Element(e::
|
|
80
|
-
b::Element(e::
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
b::Element(e::
|
|
84
|
-
|
|
85
|
-
b::
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
111
|
+
b::Element(e::Situational, "Product/Service ID"),
|
|
112
|
+
b::Element(e::NotUsed, "Product/Service ID Qualifier"),
|
|
113
|
+
b::Element(e::NotUsed, "Product/Service ID"),
|
|
114
|
+
b::Element(e::NotUsed, "Product/Service ID Qualifier"),
|
|
115
|
+
b::Element(e::NotUsed, "Product/Service ID"),
|
|
116
|
+
b::Element(e::NotUsed, "Product/Service ID Qualifier"),
|
|
117
|
+
b::Element(e::NotUsed, "Product/Service ID"),
|
|
118
|
+
b::Element(e::NotUsed, "Product/Service ID Qualifier"),
|
|
119
|
+
b::Element(e::NotUsed, "Product/Service ID"),
|
|
120
|
+
b::Element(e::NotUsed, "Product/Service ID Qualifier"),
|
|
121
|
+
b::Element(e::NotUsed, "Product/Service ID"),
|
|
122
|
+
b::Element(e::NotUsed, "Product/Service ID Qualifier"),
|
|
123
|
+
b::Element(e::NotUsed, "Product/Service ID"),
|
|
124
|
+
b::Element(e::NotUsed, "Product/Service ID Qualifier"),
|
|
125
|
+
b::Element(e::NotUsed, "Product/Service ID"),
|
|
126
|
+
b::Element(e::NotUsed, "Product/Service ID Qualifier"),
|
|
127
|
+
b::Element(e::NotUsed, "Product/Service ID"),
|
|
128
|
+
b::Element(e::NotUsed, "Product/Service ID Qualifier"),
|
|
129
|
+
b::Element(e::NotUsed, "Product/Service ID")),
|
|
130
|
+
d::LoopDef.build("PID", d::RepeatCount.bounded(1000),
|
|
131
|
+
b::Segment(50, s::PID, "Product/Item Description", r::Situational, d::RepeatCount.bounded(1),
|
|
132
|
+
b::Element(e::Required, "Item Description Type", b::Values("F")),
|
|
133
|
+
b::Element(e::Situational, "Product/Process Characteristic Code"),
|
|
134
|
+
b::Element(e::Situational, "Agency Qualifier Code"),
|
|
135
|
+
b::Element(e::Situational, "Product Description Code"),
|
|
136
|
+
b::Element(e::Situational, "Description"),
|
|
137
|
+
b::Element(e::NotUsed, "Surface/Layer/Position Code"),
|
|
138
|
+
b::Element(e::NotUsed, "Source Subqualifier"),
|
|
139
|
+
b::Element(e::NotUsed, "Yes/No Condition or Response Code"),
|
|
140
|
+
b::Element(e::NotUsed, "Language Code"))),
|
|
141
|
+
d::LoopDef.build("SCH", d::RepeatCount.bounded(200),
|
|
142
|
+
b::Segment(295, s::SCH, "Line Item Schedule", r::Situational, d::RepeatCount.bounded(1),
|
|
143
|
+
b::Element(e::Required, "Quantity"),
|
|
144
|
+
b::Element(e::Required, "Unit or Basis for Measurement Code"),
|
|
145
|
+
b::Element(e::NotUsed, "Entity Identifier Code"),
|
|
146
|
+
b::Element(e::NotUsed, "Name"),
|
|
147
|
+
b::Element(e::Situational, "Date/Time Qualifier"),
|
|
148
|
+
b::Element(e::Situational, "Date"),
|
|
149
|
+
b::Element(e::Situational, "Date/Time Qualifier"),
|
|
150
|
+
b::Element(e::Situational, "Date"))),
|
|
151
|
+
d::LoopDef.build("N1", d::RepeatCount.bounded(200),
|
|
152
|
+
b::Segment(350, s::N1, "Name", r::Situational, d::RepeatCount.bounded(1),
|
|
153
|
+
b::Element(e::Required, "Entity Identifier Code", b::Values("SF", "ST")),
|
|
154
|
+
b::Element(e::Required, "Name"),
|
|
155
|
+
b::Element(e::Situational, "Identification Code Qualifier", b::Values("91")),
|
|
156
|
+
b::Element(e::Situational, "Identification Code"),
|
|
157
|
+
b::Element(e::NotUsed, "Entity Relationship Code"),
|
|
158
|
+
b::Element(e::NotUsed, "Entity Identifier Code")),
|
|
159
|
+
b::Segment(370, s::N3, "Address Information", r::Situational, d::RepeatCount.bounded(2),
|
|
160
|
+
b::Element(e::Required, "Address Information"),
|
|
161
|
+
b::Element(e::Situational, "Address Information")),
|
|
162
|
+
b::Segment(380, s::N4, "Geographic Location", r::Situational, d::RepeatCount.bounded(1),
|
|
163
|
+
b::Element(e::Situational, "City Name"),
|
|
164
|
+
b::Element(e::Situational, "State or Province Code"),
|
|
165
|
+
b::Element(e::Situational, "Postal Code"),
|
|
166
|
+
b::Element(e::Situational, "Country Code"),
|
|
167
|
+
b::Element(e::NotUsed, "Location Qualifier"),
|
|
168
|
+
b::Element(e::NotUsed, "Location Identifier"))))),
|
|
95
169
|
|
|
96
170
|
d::TableDef.header("Summary",
|
|
97
171
|
d::LoopDef.build("CTT", d::RepeatCount.bounded(1),
|
|
98
172
|
b::Segment(10, s::CTT, "Transaction Totals", r::Situational, d::RepeatCount.bounded(1),
|
|
99
173
|
b::Element(e::Required, "Number of Line Items"),
|
|
100
|
-
b::Element(e::Situational, "Hash Total")
|
|
101
|
-
|
|
174
|
+
b::Element(e::Situational, "Hash Total"),
|
|
175
|
+
b::Element(e::NotUsed, "Weight"),
|
|
176
|
+
b::Element(e::NotUsed, "Unit or Basis for Measurement Code"),
|
|
177
|
+
b::Element(e::NotUsed, "Volume"),
|
|
178
|
+
b::Element(e::NotUsed, "Unit or Basis for Measurement Code"),
|
|
179
|
+
b::Element(e::NotUsed, "Description"))),
|
|
180
|
+
b::Segment(30, s::SE, "Transaction Set Trailer", r::Required, d::RepeatCount.bounded(1),
|
|
102
181
|
b::Element(e::Required, "Number of Included Segments"),
|
|
103
|
-
b::Element(e::Required, "Transaction Set Control Number"))))
|
|
182
|
+
b::Element(e::Required, "Transaction Set Control Number"))))
|
|
104
183
|
|
|
105
184
|
end
|
|
106
185
|
end
|
|
@@ -19,7 +19,7 @@ module Stupidedi
|
|
|
19
19
|
autoload :GF990, "stupidedi/transaction_sets/004010/implementations/GF990"
|
|
20
20
|
autoload :IM210, "stupidedi/transaction_sets/004010/implementations/IM210"
|
|
21
21
|
#utoload :OW940, "stupidedi/transaction_sets/004010/implementations/OW940"
|
|
22
|
-
|
|
22
|
+
autoload :PO850, "stupidedi/transaction_sets/004010/implementations/PO850"
|
|
23
23
|
#utoload :PS830, "stupidedi/transaction_sets/004010/implementations/PS830"
|
|
24
24
|
autoload :QM214, "stupidedi/transaction_sets/004010/implementations/QM214"
|
|
25
25
|
#utoload :RE944, "stupidedi/transaction_sets/004010/implementations/RE944"
|