diff options
Diffstat (limited to 'specification/src/Text/Edifact/D96A/Messages/IFTSAI.hs')
-rw-r--r-- | specification/src/Text/Edifact/D96A/Messages/IFTSAI.hs | 208 |
1 files changed, 208 insertions, 0 deletions
diff --git a/specification/src/Text/Edifact/D96A/Messages/IFTSAI.hs b/specification/src/Text/Edifact/D96A/Messages/IFTSAI.hs new file mode 100644 index 0000000..3c4a345 --- /dev/null +++ b/specification/src/Text/Edifact/D96A/Messages/IFTSAI.hs | |||
@@ -0,0 +1,208 @@ | |||
1 | {-# LANGUAGE OverloadedStrings #-} | ||
2 | |||
3 | ---- Machine generated code. | ||
4 | ---- Output of edi-parser-scaffolder | ||
5 | |||
6 | module Text.Edifact.D96A.Messages.IFTSAI | ||
7 | ( -- * Definition | ||
8 | messageIFTSAI | ||
9 | -- * Dependencies | ||
10 | , segmentBGM | ||
11 | , segmentCOM | ||
12 | , segmentCTA | ||
13 | , segmentDGS | ||
14 | , segmentDIM | ||
15 | , segmentDTM | ||
16 | , segmentEQD | ||
17 | , segmentEQN | ||
18 | , segmentFTX | ||
19 | , segmentGDS | ||
20 | , segmentGID | ||
21 | , segmentHAN | ||
22 | , segmentLOC | ||
23 | , segmentMEA | ||
24 | , segmentNAD | ||
25 | , segmentQTY | ||
26 | , segmentRFF | ||
27 | , segmentTDT | ||
28 | , segmentTSR | ||
29 | ) where | ||
30 | |||
31 | import Text.Edifact.Common.Segments | ||
32 | |||
33 | import Text.Edifact.D96A.Segments (segmentBGM, segmentCOM, | ||
34 | segmentCTA, segmentDGS, | ||
35 | segmentDIM, segmentDTM, | ||
36 | segmentEQD, segmentEQN, | ||
37 | segmentFTX, segmentGDS, | ||
38 | segmentGID, segmentHAN, | ||
39 | segmentLOC, segmentMEA, | ||
40 | segmentNAD, segmentQTY, | ||
41 | segmentRFF, segmentTDT, | ||
42 | segmentTSR) | ||
43 | |||
44 | import Text.Edifact.Parsing | ||
45 | import Text.Edifact.Types (Value) | ||
46 | |||
47 | -- | Derived from this specification: | ||
48 | -- | ||
49 | -- > 4.3 Message structure | ||
50 | -- > | ||
51 | -- > 4.3.1 Segment table | ||
52 | -- > | ||
53 | -- > Pos Tag Name S R | ||
54 | -- > | ||
55 | -- > 0010 UNH Message header M 1 | ||
56 | -- > 0020 BGM Beginning of message M 1 | ||
57 | -- > 0030 DTM Date/time/period C 9 | ||
58 | -- > 0040 FTX Free text C 99 | ||
59 | -- > | ||
60 | -- > 0050 + ----- Segment group 1 ------------------ C 9-----------+ | ||
61 | -- > 0060 * RFF Reference M 1 | | ||
62 | -- > 0070 + DTM Date/time/period C 9-----------+ | ||
63 | -- > | ||
64 | -- > 0080 ----- Segment group 2 ------------------ C 9-----------+ | ||
65 | -- > 0090 LOC Place/location identification M 1 | | ||
66 | -- > 0100 DTM Date/time/period C 9-----------+ | ||
67 | -- > | ||
68 | -- > 0110 ----- Segment group 3 ------------------ C 9-----------+ | ||
69 | -- > 0120 EQD Equipment details M 1 | | ||
70 | -- > 0130 EQN Number of units C 9 | | ||
71 | -- > 0140 MEA Measurements C 9 | | ||
72 | -- > 0150 DIM Dimensions C 9 | | ||
73 | -- > 0160 FTX Free text C 9-----------+ | ||
74 | -- > | ||
75 | -- > 0170 ----- Segment group 4 ------------------ C 999---------+ | ||
76 | -- > 0180 TDT Details of transport M 1 | | ||
77 | -- > 0190 DTM Date/time/period C 9 | | ||
78 | -- > 0200 TSR Transport service requirements C 9 | | ||
79 | -- > 0210 FTX Free text C 9 | | ||
80 | -- > 0220 EQD Equipment details C 99 | | ||
81 | -- > 0230 QTY Quantity C 9 | | ||
82 | -- > 0240 MEA Measurements C 9 | | ||
83 | -- > | | ||
84 | -- > 0250 ----- Segment group 5 ------------------ C 99---------+| | ||
85 | -- > 0260 LOC Place/location identification M 1 || | ||
86 | -- > 0270 DTM Date/time/period C 9----------++ | ||
87 | -- > | ||
88 | -- > 0280 ----- Segment group 6 ------------------ C 9-----------+ | ||
89 | -- > 0290 NAD Name and address M 1 | | ||
90 | -- > 0300 LOC Place/location identification C 9 | | ||
91 | -- > | | ||
92 | -- > 0310 ----- Segment group 7 ------------------ C 9----------+| | ||
93 | -- > 0320 CTA Contact information M 1 || | ||
94 | -- > 0330 COM Communication contact C 9----------++ | ||
95 | -- > | ||
96 | -- > 0340 ----- Segment group 8 ------------------ C 9-----------+ | ||
97 | -- > 0350 GID Goods item details M 1 | | ||
98 | -- > 0360 HAN Handling instructions C 9 | | ||
99 | -- > 0370 FTX Free text C 9 | | ||
100 | -- > | | ||
101 | -- > 0380 ----- Segment group 9 ------------------ C 9----------+| | ||
102 | -- > 0390 GDS Nature of cargo M 1 || | ||
103 | -- > 0400 FTX Free text C 9----------+| | ||
104 | -- > | | ||
105 | -- > 0410 ----- Segment group 10 ------------------ C 9----------+| | ||
106 | -- > 0420 MEA Measurements M 1 || | ||
107 | -- > 0430 EQN Number of units C 9----------+| | ||
108 | -- > | | ||
109 | -- > 0440 ----- Segment group 11 ------------------ C 9----------+| | ||
110 | -- > 0450 DIM Dimensions M 1 || | ||
111 | -- > 0460 EQN Number of units C 9----------+| | ||
112 | -- > | | ||
113 | -- > 0470 ----- Segment group 12 ------------------ C 9----------+| | ||
114 | -- > 0480 DGS Dangerous goods M 1 || | ||
115 | -- > 0490 FTX Free text C 9----------++ | ||
116 | -- > 0500 UNT Message trailer M 1 | ||
117 | -- | ||
118 | -- Dependencies: 'segmentBGM', 'segmentCOM', 'segmentCTA', 'segmentDGS', 'segmentDIM', 'segmentDTM', 'segmentEQD', 'segmentEQN', 'segmentFTX', 'segmentGDS', 'segmentGID', 'segmentHAN', 'segmentLOC', 'segmentMEA', 'segmentNAD', 'segmentQTY', 'segmentRFF', 'segmentTDT', 'segmentTSR'. | ||
119 | messageIFTSAI :: Parser Value | ||
120 | messageIFTSAI = | ||
121 | message "IFTSAI" | ||
122 | [ "0010" .@ once segmentUNH | ||
123 | , "0020" .@ once segmentBGM | ||
124 | , "0030" .@ repeated 9 segmentDTM | ||
125 | , "0040" .@ repeated 99 segmentFTX | ||
126 | , "0050" .@ repeated 9 ( | ||
127 | segmentGroup "1" | ||
128 | [ "0060" .@ once segmentRFF | ||
129 | , "0070" .@ repeated 9 segmentDTM | ||
130 | ] | ||
131 | ) | ||
132 | , "0080" .@ repeated 9 ( | ||
133 | segmentGroup "2" | ||
134 | [ "0090" .@ once segmentLOC | ||
135 | , "0100" .@ repeated 9 segmentDTM | ||
136 | ] | ||
137 | ) | ||
138 | , "0110" .@ repeated 9 ( | ||
139 | segmentGroup "3" | ||
140 | [ "0120" .@ once segmentEQD | ||
141 | , "0130" .@ repeated 9 segmentEQN | ||
142 | , "0140" .@ repeated 9 segmentMEA | ||
143 | , "0150" .@ repeated 9 segmentDIM | ||
144 | , "0160" .@ repeated 9 segmentFTX | ||
145 | ] | ||
146 | ) | ||
147 | , "0170" .@ repeated 999 ( | ||
148 | segmentGroup "4" | ||
149 | [ "0180" .@ once segmentTDT | ||
150 | , "0190" .@ repeated 9 segmentDTM | ||
151 | , "0200" .@ repeated 9 segmentTSR | ||
152 | , "0210" .@ repeated 9 segmentFTX | ||
153 | , "0220" .@ repeated 99 segmentEQD | ||
154 | , "0230" .@ repeated 9 segmentQTY | ||
155 | , "0240" .@ repeated 9 segmentMEA | ||
156 | , "0250" .@ repeated 99 ( | ||
157 | segmentGroup "5" | ||
158 | [ "0260" .@ once segmentLOC | ||
159 | , "0270" .@ repeated 9 segmentDTM | ||
160 | ] | ||
161 | ) | ||
162 | ] | ||
163 | ) | ||
164 | , "0280" .@ repeated 9 ( | ||
165 | segmentGroup "6" | ||
166 | [ "0290" .@ once segmentNAD | ||
167 | , "0300" .@ repeated 9 segmentLOC | ||
168 | , "0310" .@ repeated 9 ( | ||
169 | segmentGroup "7" | ||
170 | [ "0320" .@ once segmentCTA | ||
171 | , "0330" .@ repeated 9 segmentCOM | ||
172 | ] | ||
173 | ) | ||
174 | ] | ||
175 | ) | ||
176 | , "0340" .@ repeated 9 ( | ||
177 | segmentGroup "8" | ||
178 | [ "0350" .@ once segmentGID | ||
179 | , "0360" .@ repeated 9 segmentHAN | ||
180 | , "0370" .@ repeated 9 segmentFTX | ||
181 | , "0380" .@ repeated 9 ( | ||
182 | segmentGroup "9" | ||
183 | [ "0390" .@ once segmentGDS | ||
184 | , "0400" .@ repeated 9 segmentFTX | ||
185 | ] | ||
186 | ) | ||
187 | , "0410" .@ repeated 9 ( | ||
188 | segmentGroup "10" | ||
189 | [ "0420" .@ once segmentMEA | ||
190 | , "0430" .@ repeated 9 segmentEQN | ||
191 | ] | ||
192 | ) | ||
193 | , "0440" .@ repeated 9 ( | ||
194 | segmentGroup "11" | ||
195 | [ "0450" .@ once segmentDIM | ||
196 | , "0460" .@ repeated 9 segmentEQN | ||
197 | ] | ||
198 | ) | ||
199 | , "0470" .@ repeated 9 ( | ||
200 | segmentGroup "12" | ||
201 | [ "0480" .@ once segmentDGS | ||
202 | , "0490" .@ repeated 9 segmentFTX | ||
203 | ] | ||
204 | ) | ||
205 | ] | ||
206 | ) | ||
207 | , "0500" .@ once segmentUNT | ||
208 | ] | ||