1 {-# LANGUAGE OverloadedStrings #-}
3 ---- Machine generated code.
4 ---- Output of edi-parser-scaffolder
6 module Text.Edifact.D01B.Messages.IFTSTA
40 import Text.Edifact.Common.Segments
42 import Text.Edifact.D01B.Segments (segmentBGM, segmentCNI,
43 segmentCNT, segmentCOM,
44 segmentCTA, segmentDGS,
45 segmentDIM, segmentDOC,
46 segmentDTM, segmentEQA,
47 segmentEQD, segmentEQN,
48 segmentFTX, segmentGID,
49 segmentGIN, segmentHAN,
50 segmentLOC, segmentMEA,
51 segmentNAD, segmentPCI,
52 segmentRFF, segmentSEL,
53 segmentSGP, segmentSTS,
54 segmentTDT, segmentTMD,
55 segmentTPL, segmentTSR)
57 import Text.Edifact.Parsing
58 import Text.Edifact.Types (Value)
60 -- | Derived from this specification:
62 -- > 4.3 Message structure
64 -- > 4.3.1 Segment table
68 -- > 0010 UNH Message header M 1
69 -- > 0020 BGM Beginning of message M 1
70 -- > 0030 DTM Date/time/period C 9
71 -- > 0040 TSR Transport service requirements C 1
73 -- > 0050 ----- Segment group 1 ------------------ C 9-----------+
74 -- > 0060 NAD Name and address M 1 |
76 -- > 0070 ----- Segment group 2 ------------------ C 9----------+|
77 -- > 0080 CTA Contact information M 1 ||
78 -- > 0090 COM Communication contact C 9----------++
80 -- > 0100 ----- Segment group 3 ------------------ C 9-----------+
81 -- > 0110 RFF Reference M 1 |
82 -- > 0120 DTM Date/time/period C 1-----------+
83 -- > 0130 LOC Place/location identification C 9
84 -- > 0140 FTX Free text C 9
85 -- > 0150 CNT Control total C 9
87 -- > 0160 ----- Segment group 4 ------------------ C 99999-------+
88 -- > 0170 CNI Consignment information M 1 |
89 -- > 0180 LOC Place/location identification C 9 |
90 -- > 0190 CNT Control total C 9 |
92 -- > 0200 ----- Segment group 5 ------------------ M 99---------+|
93 -- > 0210 STS Status M 1 ||
94 -- > 0220 RFF Reference C 999 ||
95 -- > 0230 DTM Date/time/period C 9 ||
96 -- > 0240 DOC Document/message details C 1 ||
97 -- > 0250 FTX Free text C 9 ||
99 -- > 0260 ----- Segment group 6 ------------------ C 9---------+||
100 -- > 0270 NAD Name and address M 1 |||
102 -- > 0280 ----- Segment group 7 ------------------ C 9--------+|||
103 -- > 0290 CTA Contact information M 1 ||||
104 -- > 0300 COM Communication contact C 9--------++||
105 -- > 0310 LOC Place/location identification C 1 ||
106 -- > 0320 PCI Package identification C 99 ||
108 -- > 0330 ----- Segment group 8 ------------------ C 99--------+||
109 -- > 0340 TDT Details of transport M 1 |||
110 -- > 0350 DTM Date/time/period C 9 |||
111 -- > 0360 RFF Reference C 9 |||
113 -- > 0370 ----- Segment group 9 ------------------ C 9--------+|||
114 -- > 0380 LOC Place/location identification M 1 ||||
115 -- > 0390 DTM Date/time/period C 9--------++||
117 -- > 0400 ----- Segment group 10 ------------------ C 99--------+||
118 -- > 0410 EQD Equipment details M 1 |||
119 -- > 0420 MEA Measurements C 9 |||
120 -- > 0430 DIM Dimensions C 9 |||
121 -- > 0440 SEL Seal number C 9 |||
122 -- > 0450 RFF Reference C 9 |||
123 -- > 0460 TPL Transport placement C 9 |||
124 -- > 0470 TMD Transport movement details C 1 |||
126 -- > 0480 ----- Segment group 11 ------------------ C 99-------+|||
127 -- > 0490 EQA Attached equipment M 1 ||||
128 -- > 0500 SEL Seal number C 9--------++||
130 -- > 0510 ----- Segment group 12 ------------------ C 99--------+||
131 -- > 0520 GID Goods item details M 1 |||
132 -- > 0530 HAN Handling instructions C 9 |||
133 -- > 0540 SGP Split goods placement C 99 |||
134 -- > 0550 DGS Dangerous goods C 9 |||
135 -- > 0560 FTX Free text C 9 |||
137 -- > 0570 ----- Segment group 13 ------------------ C 99-------+|||
138 -- > 0580 MEA Measurements M 1 ||||
139 -- > 0590 EQN Number of units C 1--------+|||
141 -- > 0600 ----- Segment group 14 ------------------ C 99-------+|||
142 -- > 0610 DIM Dimensions M 1 ||||
143 -- > 0620 EQN Number of units C 1--------+|||
145 -- > 0630 ----- Segment group 15 ------------------ C 99-------+|||
146 -- > 0640 PCI Package identification M 1 ||||
147 -- > 0650 GIN Goods identity number C 9--------++++
148 -- > 0660 UNT Message trailer M 1
150 -- Dependencies: 'segmentBGM', 'segmentCNI', 'segmentCNT', 'segmentCOM', 'segmentCTA', 'segmentDGS', 'segmentDIM', 'segmentDOC', 'segmentDTM', 'segmentEQA', 'segmentEQD', 'segmentEQN', 'segmentFTX', 'segmentGID', 'segmentGIN', 'segmentHAN', 'segmentLOC', 'segmentMEA', 'segmentNAD', 'segmentPCI', 'segmentRFF', 'segmentSEL', 'segmentSGP', 'segmentSTS', 'segmentTDT', 'segmentTMD', 'segmentTPL', 'segmentTSR'.
151 messageIFTSTA :: Parser Value
154 [ "0010" .@ once segmentUNH
155 , "0020" .@ once segmentBGM
156 , "0030" .@ repeated 9 segmentDTM
157 , "0040" .@ maybeOnce segmentTSR
158 , "0050" .@ repeated 9 (
160 [ "0060" .@ once segmentNAD
161 , "0070" .@ repeated 9 (
163 [ "0080" .@ once segmentCTA
164 , "0090" .@ repeated 9 segmentCOM
169 , "0100" .@ repeated 9 (
171 [ "0110" .@ once segmentRFF
172 , "0120" .@ maybeOnce segmentDTM
175 , "0130" .@ repeated 9 segmentLOC
176 , "0140" .@ repeated 9 segmentFTX
177 , "0150" .@ repeated 9 segmentCNT
178 , "0160" .@ repeated 99999 (
180 [ "0170" .@ once segmentCNI
181 , "0180" .@ repeated 9 segmentLOC
182 , "0190" .@ repeated 9 segmentCNT
183 , "0200" .@ repeatedAtLeastOnce 99 (
185 [ "0210" .@ once segmentSTS
186 , "0220" .@ repeated 999 segmentRFF
187 , "0230" .@ repeated 9 segmentDTM
188 , "0240" .@ maybeOnce segmentDOC
189 , "0250" .@ repeated 9 segmentFTX
190 , "0260" .@ repeated 9 (
192 [ "0270" .@ once segmentNAD
193 , "0280" .@ repeated 9 (
195 [ "0290" .@ once segmentCTA
196 , "0300" .@ repeated 9 segmentCOM
201 , "0310" .@ maybeOnce segmentLOC
202 , "0320" .@ repeated 99 segmentPCI
203 , "0330" .@ repeated 99 (
205 [ "0340" .@ once segmentTDT
206 , "0350" .@ repeated 9 segmentDTM
207 , "0360" .@ repeated 9 segmentRFF
208 , "0370" .@ repeated 9 (
210 [ "0380" .@ once segmentLOC
211 , "0390" .@ repeated 9 segmentDTM
216 , "0400" .@ repeated 99 (
218 [ "0410" .@ once segmentEQD
219 , "0420" .@ repeated 9 segmentMEA
220 , "0430" .@ repeated 9 segmentDIM
221 , "0440" .@ repeated 9 segmentSEL
222 , "0450" .@ repeated 9 segmentRFF
223 , "0460" .@ repeated 9 segmentTPL
224 , "0470" .@ maybeOnce segmentTMD
225 , "0480" .@ repeated 99 (
227 [ "0490" .@ once segmentEQA
228 , "0500" .@ repeated 9 segmentSEL
233 , "0510" .@ repeated 99 (
235 [ "0520" .@ once segmentGID
236 , "0530" .@ repeated 9 segmentHAN
237 , "0540" .@ repeated 99 segmentSGP
238 , "0550" .@ repeated 9 segmentDGS
239 , "0560" .@ repeated 9 segmentFTX
240 , "0570" .@ repeated 99 (
242 [ "0580" .@ once segmentMEA
243 , "0590" .@ maybeOnce segmentEQN
246 , "0600" .@ repeated 99 (
248 [ "0610" .@ once segmentDIM
249 , "0620" .@ maybeOnce segmentEQN
252 , "0630" .@ repeated 99 (
254 [ "0640" .@ once segmentPCI
255 , "0650" .@ repeated 9 segmentGIN
264 , "0660" .@ once segmentUNT