edifact_types/d95b/
types.rs

1use serde::{Deserialize, Serialize};
2use strum_macros::{Display, EnumString};
3
4/// Syntax identifier
5///
6/// Coded identification of the agency controlling a syntax and syntax level used in an interchange.
7#[derive(Debug, Serialize, Deserialize, EnumString, Display, Clone, PartialEq, Eq, Default)]
8pub enum _0001 {
9    /// UN/ECE level A
10    /// As defined in the basic code table of ISO 646 with the exceptions of lower case letters, alternative graphic character allocations and national or application-oriented graphic character allocations.
11    UNOA,
12    /// UN/ECE level B
13    /// As defined in the basic code table of ISO 646 with the exceptions of alternative graphic character allocations and national or application-oriented graphic character allocations.
14    UNOB,
15    /// UN/ECE level C
16    /// As defined in ISO 8859-1 : Information processing - Part 1: Latin alphabet No. 1.
17    #[default]
18    UNOC,
19    /// UN/ECE level D
20    /// As defined in ISO 8859-2 : Information processing - Part 2: Latin alphabet No. 2.
21    UNOD,
22    /// UN/ECE level E
23    /// As defined in ISO 8859-5 : Information processing - Part 5: Latin/Cyrillic alphabet.
24    UNOE,
25    /// UN/ECE level F
26    /// As defined in ISO 8859-7 : Information processing - Part 7: Latin/Greek alphabet.
27    UNOF,
28}
29
30/// Syntax version number
31///
32/// Version number of the syntax identified in the syntax identifier (0001)
33#[derive(Debug, Serialize, Deserialize, EnumString, Display, Clone, PartialEq, Eq, Default)]
34pub enum _0002 {
35    /// Version 1
36    /// ISO 9735:1988.
37    #[strum(serialize = "1")]
38    _1,
39    /// Version 2
40    /// ISO 9735:1990.
41    #[strum(serialize = "2")]
42    _2,
43    /// Version 3
44    /// ISO 9735 Amendment 1:1992.
45    #[default]
46    #[strum(serialize = "3")]
47    _3,
48}
49
50/// Partner identification code qualifier
51///
52/// Qualifier referring to the source of codes for the identifiers of interchanging partners.
53#[derive(Debug, Serialize, Deserialize, EnumString, Display, Clone, PartialEq, Eq)]
54pub enum _0007 {
55    /// DUNS (Dun & Bradstreet)
56    ///
57    /// Self explanatory.
58    #[strum(serialize = "1")]
59    _1,
60    /// IATA (International Air Transport Association)
61    ///
62    /// Self explanatory.
63    #[strum(serialize = "4")]
64    _4,
65    /// INSEE/SIRET
66    ///
67    /// Self explanatory.
68    #[strum(serialize = "5")]
69    _5,
70    /// UCC Communications ID (Uniform Code Council Communications Identifier)
71    ///
72    /// The Uniform Code Council Communications Identifier is a ten digit code used to uniquely identify physical and logical locations.
73    #[strum(serialize = "8")]
74    _8,
75    /// DUNS with 4 digit suffix
76    ///
77    /// Self explanatory.
78    #[strum(serialize = "9")]
79    _9,
80    /// Telephone number
81    ///
82    /// Self explanatory.
83    #[strum(serialize = "12")]
84    _12,
85    /// EAN (European Article Numbering Association)
86    ///
87    /// Self explanatory.
88    #[strum(serialize = "14")]
89    _14,
90    /// AIAG (Automotive Industry Action Group)
91    ///
92    /// Self explanatory.
93    #[strum(serialize = "18")]
94    _18,
95    /// INSEE/SIREN
96    ///
97    /// Self explanatory.
98    #[strum(serialize = "22")]
99    _22,
100    /// ISO 6523: Organization identification
101    ///
102    /// Self explanatory.
103    #[strum(serialize = "30")]
104    _30,
105    /// DIN (Deutsches Institut fuer Normung)
106    ///
107    /// German standardization institute.
108    #[strum(serialize = "31")]
109    _31,
110    /// BfA (Bundesversicherungsanstalt fuer Angestellte)
111    ///
112    /// German social security association.
113    #[strum(serialize = "33")]
114    _33,
115    /// National Statistical Agency
116    ///
117    /// Self explanatory.
118    #[strum(serialize = "34")]
119    _34,
120    /// General Electric Information Services
121    ///
122    /// Self explanatory.
123    #[strum(serialize = "51")]
124    _51,
125    /// IBM Network Services
126    ///
127    /// Self explanatory.
128    #[strum(serialize = "52")]
129    _52,
130    /// Datenzentrale des Einzelhandels, Germany
131    ///
132    /// German data centre for retail trade.
133    #[strum(serialize = "53")]
134    _53,
135    /// Bundesverband der Deutschen Baustoffhaendler, Germany
136    ///
137    /// German building material trade association.
138    #[strum(serialize = "54")]
139    _54,
140    /// Bank identifier code
141    ///
142    /// Self explanatory.
143    #[strum(serialize = "55")]
144    _55,
145    /// Statens Teleforvaltning
146    ///
147    /// Norwegian telecommunications regulatory authority (NTRA).
148    #[strum(serialize = "56")]
149    _56,
150    /// KTNet
151    ///
152    /// Korea Trade Network Services.
153    #[strum(serialize = "57")]
154    _57,
155    /// UPU (Universal Postal Union)
156    ///
157    /// Self explanatory.
158    #[strum(serialize = "58")]
159    _58,
160    /// ODETTE
161    ///
162    /// Organization for Data Exchange through Tele-Transmission in Europe (European automotive industry project).
163    #[strum(serialize = "59")]
164    _59,
165    /// SCAC (Standard Carrier Alpha Code)
166    ///
167    /// Directory of standard multimodal carriers and tariff agent codes. The SCAC lists and codes transportation companies.
168    #[strum(serialize = "61")]
169    _61,
170    /// ECA (Electronic Commerce Australia)
171    ///
172    /// Australian association for electronic commerce.
173    #[strum(serialize = "63")]
174    _63,
175    /// TELEBOX 400 (Deutsche Bundespost)
176    ///
177    /// German post office.
178    #[strum(serialize = "65")]
179    _65,
180    /// NHS (National Health Service)
181    ///
182    /// United Kingdom National Health Service.
183    #[strum(serialize = "80")]
184    _80,
185    /// Athens Chamber of Commerce
186    ///
187    /// Greek Chamber of Commerce.
188    #[strum(serialize = "84")]
189    _84,
190    /// Swiss Chamber of Commerce
191    ///
192    /// Swiss Chamber of Commerce.
193    #[strum(serialize = "85")]
194    _85,
195    /// US Council for International Business
196    ///
197    /// United States Council for International Business.
198    #[strum(serialize = "86")]
199    _86,
200    /// National Federation of Chambers of Commerce and Industry
201    ///
202    /// Belguim National Federation of Chambers of Commerce andIndustry.
203    #[strum(serialize = "87")]
204    _87,
205    /// Assigned by seller or seller's agent
206    ///
207    /// Self explanatory.
208    #[strum(serialize = "91")]
209    _91,
210    /// Assigned by buyer or buyer's agent
211    ///
212    /// Self explanatory.
213    #[strum(serialize = "92")]
214    _92,
215    /// Mutually defined
216    ///
217    /// Self explanatory.
218    #[strum(serialize = "ZZZ")]
219    ZZZ,
220}
221
222/// Recipient's reference/password qualifier
223///
224/// Qualifier for the recipient's reference or password.
225#[derive(Debug, Serialize, Deserialize, EnumString, Display, Clone, PartialEq, Eq)]
226pub enum _0025 {
227    /// Reference
228    /// Self explanatory.
229    AA,
230    /// Password
231    /// Self explanatory.
232    BB,
233}
234
235/// Processing priority code
236///
237/// Code determined by the sender requesting processing priority for the interchange.
238#[derive(Debug, Serialize, Deserialize, EnumString, Display, Clone, PartialEq, Eq)]
239pub enum _0029 {
240    /// Highest priority
241    /// Self explanatory.
242    A,
243}
244
245/// Acknowledgement request
246///
247/// Code determined by the sender for acknowledgement of the interchange.
248#[derive(Debug, Serialize, Deserialize, EnumString, Display, Clone, PartialEq, Eq)]
249pub enum _0031 {
250    /// Requested
251    /// Acknowledgement is requested.
252    #[strum(serialize = "1")]
253    _1,
254}
255
256/// Test indicator
257///
258/// Indication that the interchange is a test.
259#[derive(Debug, Serialize, Deserialize, EnumString, Display, Clone, PartialEq, Eq)]
260pub enum _0035 {
261    /// Interchange is a test
262    /// Self explanatory.
263    #[strum(serialize = "1")]
264    _1,
265}
266
267/// 1225  Message function code
268#[derive(Debug, Serialize, Deserialize, Clone, PartialEq, Eq, EnumString, Display)]
269#[strum(serialize_all = "camelCase")]
270pub enum _1225 {
271    /// Cancellation
272    ///
273    /// Message cancelling a previous transmission for a given
274    /// transaction.
275    #[serde(rename = "1")]
276    _1,
277    /// Addition
278    #[serde(rename = "2")]
279    _2,
280    /// Deletion
281    #[serde(rename = "3")]
282    _3,
283    /// Change
284    #[serde(rename = "4")]
285    _4,
286    /// Replace
287    #[serde(rename = "5")]
288    _5,
289    #[serde(rename = "6")]
290    _6,
291    #[serde(rename = "7")]
292    _7,
293    #[serde(rename = "8")]
294    _8,
295    #[serde(rename = "9")]
296    _9,
297    #[serde(rename = "10")]
298    _10,
299    #[serde(rename = "11")]
300    _11,
301    #[serde(rename = "12")]
302    _12,
303    #[serde(rename = "13")]
304    _13,
305    #[serde(rename = "14")]
306    _14,
307    #[serde(rename = "15")]
308    _15,
309    #[serde(rename = "16")]
310    _16,
311    #[serde(rename = "17")]
312    _17,
313    #[serde(rename = "18")]
314    _18,
315    #[serde(rename = "19")]
316    _19,
317    #[serde(rename = "20")]
318    _20,
319    #[serde(rename = "21")]
320    _21,
321    #[serde(rename = "22")]
322    _22,
323    #[serde(rename = "23")]
324    _23,
325    #[serde(rename = "24")]
326    _24,
327    #[serde(rename = "25")]
328    _25,
329    #[serde(rename = "26")]
330    _26,
331    #[serde(rename = "27")]
332    _27,
333    #[serde(rename = "28")]
334    _28,
335    #[serde(rename = "29")]
336    _29,
337    #[serde(rename = "30")]
338    _30,
339    #[serde(rename = "31")]
340    _31,
341    #[serde(rename = "32")]
342    _32,
343    #[serde(rename = "33")]
344    _33,
345    #[serde(rename = "34")]
346    _34,
347    #[serde(rename = "35")]
348    _35,
349    #[serde(rename = "36")]
350    _36,
351    #[serde(rename = "37")]
352    _37,
353    #[serde(rename = "38")]
354    _38,
355    #[serde(rename = "39")]
356    _39,
357    #[serde(rename = "40")]
358    _40,
359    #[serde(rename = "41")]
360    _41,
361    #[serde(rename = "42")]
362    _42,
363    #[serde(rename = "43")]
364    _43,
365    #[serde(rename = "44")]
366    _44,
367    #[serde(rename = "45")]
368    _45,
369    #[serde(rename = "46")]
370    _46,
371    #[serde(rename = "47")]
372    _47,
373    #[serde(rename = "48")]
374    _48,
375    #[serde(rename = "49")]
376    _49,
377    #[serde(rename = "50")]
378    _50,
379    #[serde(rename = "51")]
380    _51,
381    #[serde(rename = "52")]
382    _52,
383    /// 53 Test
384    ///
385    /// Code indicating the message is to be considered as a
386    /// test.
387    #[serde(rename = "53")]
388    _53,
389}
390
391/// 2379  Date or time or period format code
392#[derive(Debug, Serialize, Deserialize, Clone)]
393pub enum _2379 {
394    /// DDMMYY
395    ///
396    /// Calendar date: D = Day; M = Month; Y = Year.
397    #[serde(rename = "2")]
398    _2,
399    /// MMDDYY
400    ///
401    /// Calendar date: M = Month; D = Day; Y = Year.
402    #[serde(rename = "3")]
403    _3,
404    /// DDMMCCYY
405    ///
406    /// Calendar date C=Century; Y=Year; M=Month; D=Day.
407    _4,
408    /// DDMMCCYYHHMM
409    ///
410    ///  Calendar date and time: C=Century; Y=Year; M=Month;
411    /// D=Day; H=Hour; M=Minute.
412    _5,
413    /// YYMMDD
414    ///
415    /// Calendar date: Y = Year; M = Month; D = Day.
416    _101,
417    /// CCYYMMDD
418    ///
419    /// Calendar date: C = Century ; Y = Year ; M = Month ; D =
420    /// Day.
421    _102,
422    /// YYWWD
423    ///
424    /// Calendar week day: Y = Year ; W = Week ; D = Day Week
425    /// number 01 is always first week of January Day number 1
426    /// is always Monday.
427    _103,
428    /// YYDDD
429    ///
430    /// Calendar day: Y = Year ; D = Day January the first = Day
431    /// 001 Always start numbering the days of the year from
432    /// January 1st through December 31st.
433    _105,
434    /// MMDD
435    ///
436    /// Day of a month: M = Month; D = Day.
437    #[serde(rename = "106")]
438    _106,
439    /// DDD
440    ///
441    /// Day's number within a specific year: D = Day.
442    #[serde(rename = "107")]
443    _107,
444    /// WW
445    ///
446    /// Week's number within a specific year: W = Week.
447    #[serde(rename = "108")]
448    _108,
449    /// MM
450    ///
451    /// Month's number within a specific year: M = Month.
452    #[serde(rename = "109")]
453    _109,
454    /// DD
455    ///
456    /// Day's number within is a specific month: D = Day.
457    #[serde(rename = "110")]
458    _110,
459    /// YYMMDDHHMM
460    ///
461    /// Calendar date including time without seconds: Y = Year;
462    /// M = Month; D = Day; H = Hour; M = Minute.
463    #[serde(rename = "201")]
464    _201,
465    /// YYMMDDHHMMSS
466    ///
467    /// Calendar date including time with seconds: Y = Year; M =
468    /// Month; D = Day; H = Hour; m = Minutes = Seconds.
469    #[serde(rename = "202")]
470    _202,
471    /// CCYYMMDDHHMM
472    ///
473    /// Calendar date including time with minutes: C=Century;
474    /// Y=Year; M=Month; D=Day; H=Hour; M=Minutes.
475    #[serde(rename = "203")]
476    _203,
477    /// CCYYMMDDHHMMSS
478    ///
479    /// Calendar date including time with seconds:
480    /// C=Century;Y=Year;
481    /// M=Month;D=Day;H=Hour;M=Minute;S=Second.
482    _204,
483    /// CCYYMMDDHHMMZHHMM
484    ///
485    /// Calendar date including time and time zone expressed in
486    /// hours and minutes.
487    /// ZHHMM = time zone given as offset from Coordinated
488    /// Universal Time (UTC).
489    _205,
490
491    /// YYMMDDHHMMZZZ
492    ///
493    /// See 201 + Z = Time zone.
494    _301,
495    /// YYMMDDHHMMSSZZZ
496    ///
497    /// See 202 + Z = Time zone.
498    _302,
499    /// CCYYMMDDHHMMZZZ
500    ///
501    /// See 203 plus Z=Time zone.
502    _303,
503
504    /// CCYYMMDDHHMMSSZZZ
505    ///
506    /// See 204 plus Z=Time zone.
507    _304,
508    /// MMDDHHMM
509    ///
510    /// Month, day, hours, minutes; M = Month; D = Day; H =
511    /// Hour; M = Minute.
512    _305,
513    /// DDHHMM
514    ///
515    /// Day, hours, minutes; D = Day; H = Hour; M = Minute.
516    _306,
517    /// HHMM
518    ///
519    /// Time without seconds: H = Hour; m = Minute.
520    _401,
521    /// HHMMSS
522    ///
523    /// Time with seconds: H = Hour; m = Minute; s = Seconds.
524    _402,
525    /// HHMMSSZZZ
526    ///
527    /// See 402 plus Z=Time zone.
528    _404,
529    /// MMMMSS
530    ///
531    /// Time without hours: m=minutes, s=seconds.
532    _405,
533    /// ZHHMM
534    ///
535    /// Offset from Coordinated Universal Time (UTC) where Z is
536    /// plus (+) or minus (-).
537    _406,
538    /// HHMMHHMM
539    ///
540    /// Time span without seconds: H = Hour; m = Minute;.
541    _501,
542    /// HHMMSS-HHMMSS
543    ///
544    /// Format of period to be given without hyphen.
545    _502,
546    /// HHMMSSZZZ-HHMMSSZZZ
547    ///
548    /// Format of period to be given without hyphen.
549    _503,
550    ///   CC
551    ///              Century.
552    _600,
553    ///   YY
554    ///              Calendar year: Y = Year.
555    _601,
556    ///   CCYY
557    ///              Calendar year including century: C = Century; Y = Year.
558    _602,
559    ///   YYS
560    ///              Semester in a calendar year: Y = Year; S = Semester.
561    _603,
562    /// CCYYS
563    ///
564    /// Semester in a calendar year: C = Century; Y = Year; S =
565    /// Semester.
566    _604,
567    /// CCYYQ
568    ///
569    /// Quarter in a calendar year: C = Century; Y = Year; Q =
570    /// Quarter.
571    _608,
572    /// YYMM
573    ///
574    /// Month within a calendar year: Y = Year; M = Month.
575    _609,
576    /// CCYYMM
577    ///
578    /// Month within a calendar year: CC = Century; Y = Year; M
579    /// = Month.
580    _610,
581
582    /// YYMMA
583    ///
584    /// Format of period to be given without hyphen (A = ten
585    ///     days period).
586    _613,
587
588    /// CCYYMMA
589    ///
590    /// Format of period to be given without hyphen (A = ten
591    ///       days period).
592    _614,
593
594    /// YYWW
595    /// Week within a calendar year: Y = Year; W = Week 1st week
596    ///       of January = week 01.
597    _615,
598    /// CCYYWW
599    ///
600    /// Week within a calendar year: CC = Century; Y = Year; W =
601    /// Week (1st week of January = week 01).
602    _616,
603    /// YY-YY
604    ///
605    /// Format of period to be given in actual message without
606    /// hyphen.
607    _701,
608    /// CCYY-CCYY
609    ///
610    /// Format of period to be given in actual message without
611    /// hyphen.
612    _702,
613    /// YYS-YYS
614    ///
615    /// Format of period to be given without hyphen.
616    _703,
617    /// CCYYS-CCYYS
618    ///
619    /// Format of period to be given in actual message without
620    /// hyphen.
621    _704,
622    /// YYPYYP
623    ///
624    /// Format of period to be given without hyphen (P = period
625    /// of 4 months).
626    _705,
627    /// CCYYP-CCYYP
628    ///
629    /// Format of period to be given without hyphen (P = period
630    /// of 4 months).
631    _706,
632    /// YYQ-YYQ
633    ///
634    /// Format of period to be given without hyphen.
635    _707,
636    /// CCYYQ-CCYYQ
637    ///
638    /// Format of period to be given in actual message without
639    /// hyphen.
640    _708,
641    /// YYMM-YYMM
642    ///
643    /// Format of period to be given in actual message without
644    /// hyphen.
645    _709,
646    /// CCYYMM-CCYYMM
647    ///
648    /// Format of period to be given in actual message without
649    /// hyphen.
650    #[serde(rename = "710")]
651    _710,
652    ///   CCYYMMDD-CCYYMMDD
653    ///
654    /// Format of period to be given in actual message without
655    /// hyphen.
656    _711,
657    /// YYMMDDHHMM-YYMMDDHHMM
658    ///
659    /// Format of period to be given in actual message without
660    /// hyphen.
661    _713,
662    /// YYWW-YYWW
663    ///
664    /// Format of period to be given in actual message without
665    /// hyphen.
666    _715,
667    /// CCYYWW-CCYYWW
668    ///
669    /// Format of period to be given without hyphen.
670    _716,
671    /// YYMMDD-YYMMDD
672    ///
673    /// Format of period to be given in actual message without
674    /// hyphen.
675    _717,
676    /// CCYYMMDD-CCYYMMDD
677    ///
678    /// Format of period to be given without hyphen.
679    _718,
680    /// CCYYMMDDHHMM-CCYYMMDDHHMM
681    ///
682    /// A period of time which includes the century, year,
683    /// month, day, hour and minute. Format of period to be
684    /// given in actual message without hyphen.
685    _719,
686    /// DHHMM-DHHMM
687    ///
688    /// Format of period to be given without hyphen (D=day of
689    /// the week, 1=Monday; 2=Tuesday; ... 7=Sunday).
690    _720,
691    /// Year
692    ///
693    /// To indicate a quantity of years.
694    _901,
695    /// Month
696    ///
697    /// To indicate a quantity of months.
698    _902,
699    /// Week
700    ///
701    /// To indicate a quantity of weeks.
702    _903,
703    /// Day
704    ///
705    /// To indicate a quantity of days.
706    _904,
707    /// Hour
708    ///
709    /// To indicate a quantity of hours.
710    _905,
711    /// Minute
712    ///
713    /// To indicate a quantity of minutes.
714    _906,
715    /// Second
716    ///
717    /// To indicate a quantity of seconds.
718    #[serde(rename = "807")]
719    _807,
720    /// Semester
721    ///
722    /// To indicate a quantity of semesters (six months).
723    _808,
724    /// Four months period
725    ///
726    /// To indicate a quantity of four months periods.
727    #[serde(rename = "809")]
728    _809,
729    /// Trimester
730    ///
731    /// To indicate a quantity of trimesters (three months).
732    _810,
733    /// Half month
734    ///
735    /// To indicate a quantity of half months.
736    #[serde(rename = "811")]
737    _811,
738    /// Ten days
739    ///
740    /// To indicate a quantity of ten days periods.
741    #[serde(rename = "812")]
742    _812,
743    /// Day of the week
744    ///
745    /// Numeric representation of the day (Monday = 1).
746    #[serde(rename = "813")]
747    _813,
748    /// Working days
749    ///
750    /// Number of working days.
751    #[serde(rename = "814")]
752    _814,
753}
754
755/// 4343  Response type code
756#[derive(Debug, Serialize, Deserialize, PartialEq, Eq, Clone, EnumString, Display)]
757pub enum _4343 {
758    AA,
759    AB,
760    AC,
761    AD,
762    AE,
763    AF,
764    AG,
765    AH,
766    AI,
767    AJ,
768    AP,
769    AQ,
770    AR,
771    AS,
772    CA,
773    CO,
774    NA,
775    RE,
776    UR,
777    US,
778}