eddy 0.1.0 → 0.3.0

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.
Files changed (309) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +103 -37
  3. data/.solargraph.yml +4 -0
  4. data/.vscode/settings.json +17 -0
  5. data/.yardopts +2 -2
  6. data/CHANGELOG.md +50 -0
  7. data/Gemfile.lock +21 -7
  8. data/README.md +32 -3
  9. data/Rakefile +1 -10
  10. data/data/004010/code-lists/100.tsv +164 -0
  11. data/data/004010/code-lists/156.tsv +52 -0
  12. data/data/004010/code-lists/26.tsv +499 -0
  13. data/data/004010/code-lists/etc/100-fancy-definitions.tsv +164 -0
  14. data/data/004010/code-lists/etc/100-with-funds-codes.tsv +180 -0
  15. data/data/004010/code-lists/etc/26-alpha2.tsv +250 -0
  16. data/data/004010/code-lists/etc/26-alpha3.tsv +250 -0
  17. data/data/004010/elements-short.tsv +1405 -0
  18. data/data/004010/elements.tsv +3 -3
  19. data/data/004010/segments.tsv +1009 -1003
  20. data/data/004010/segments/ack.segment.yml +15 -0
  21. data/data/004010/segments/bak.segment.yml +9 -0
  22. data/data/004010/segments/beg.segment.yml +17 -0
  23. data/data/004010/segments/big.segment.yml +10 -0
  24. data/data/004010/segments/bsn.segment.yml +10 -0
  25. data/data/004010/segments/cad.segment.yml +14 -0
  26. data/data/004010/segments/ctp.segment.yml +19 -0
  27. data/data/004010/segments/ctt.segment.yml +13 -0
  28. data/data/004010/segments/dtm.segment.yml +7 -0
  29. data/data/004010/segments/envelope/ge.segment.yml +7 -0
  30. data/data/004010/segments/envelope/gs.segment.yml +13 -0
  31. data/data/004010/segments/envelope/iea.segment.yml +8 -0
  32. data/data/004010/segments/envelope/isa.segment.yml +22 -0
  33. data/data/004010/segments/envelope/se.segment.yml +7 -0
  34. data/data/004010/segments/envelope/st.segment.yml +12 -0
  35. data/data/004010/segments/hl.segment.yml +9 -0
  36. data/data/004010/segments/it1.segment.yml +20 -0
  37. data/data/004010/segments/lin.segment.yml +10 -0
  38. data/data/004010/segments/loop/hl.segment.yml +8 -0
  39. data/data/004010/segments/man.segment.yml +7 -0
  40. data/data/004010/segments/n1.segment.yml +9 -0
  41. data/data/004010/segments/n2.segment.yml +7 -0
  42. data/data/004010/segments/n3.segment.yml +6 -0
  43. data/data/004010/segments/n4.segment.yml +9 -0
  44. data/data/004010/segments/pid.segment.yml +10 -0
  45. data/data/004010/segments/po1.segment.yml +14 -0
  46. data/data/004010/segments/prf.segment.yml +9 -0
  47. data/data/004010/segments/ref.segment.yml +7 -0
  48. data/data/004010/segments/sac.segment.yml +20 -0
  49. data/data/004010/segments/sln.segment.yml +12 -0
  50. data/data/004010/segments/sn1.segment.yml +11 -0
  51. data/data/004010/segments/td1.segment.yml +13 -0
  52. data/data/004010/segments/td5.segment.yml +11 -0
  53. data/data/004010/segments/tds.segment.yml +10 -0
  54. data/data/schema/element_summary.json +60 -0
  55. data/data/schema/loop_summary.json +49 -0
  56. data/data/schema/segment_summary.json +66 -0
  57. data/data/schema/src/element_summary.schema.yml +73 -0
  58. data/data/schema/src/loop_summary.schema.yml +50 -0
  59. data/data/schema/src/segment_summary.schema.yml +59 -0
  60. data/data/schema/src/transaction_set_summary.schema.yml +27 -0
  61. data/data/schema/transaction_set_summary.json +33 -0
  62. data/data/sources.md +114 -145
  63. data/eddy.gemspec +6 -3
  64. data/exe/eddy +14 -0
  65. data/lib/definitions/elements/generated/1005.hierarchical_structure_code.rb +98 -0
  66. data/lib/definitions/elements/generated/1019.invoice_type_code.rb +40 -0
  67. data/lib/definitions/elements/generated/103.packaging_code.rb +29 -0
  68. data/lib/definitions/elements/generated/1166.contract_type_code.rb +87 -0
  69. data/lib/definitions/elements/generated/1232.purchase_category.rb +53 -0
  70. data/lib/definitions/elements/generated/127.reference_identification.rb +29 -0
  71. data/lib/definitions/elements/generated/128.reference_identification_qualifier.rb +1540 -0
  72. data/lib/definitions/elements/generated/1300.service_promotion_allowance_or_charge_code.rb +1090 -0
  73. data/lib/definitions/elements/generated/1301.agency_service_promotion_allowance_or_charge_code.rb +29 -0
  74. data/lib/definitions/elements/generated/133.routing_sequence_code.rb +60 -0
  75. data/lib/definitions/elements/generated/166.address_information.rb +29 -0
  76. data/lib/definitions/elements/generated/183.volume.rb +29 -0
  77. data/lib/definitions/elements/generated/187.weight_qualifier.rb +88 -0
  78. data/lib/definitions/elements/generated/19.city_name.rb +29 -0
  79. data/lib/definitions/elements/generated/206.equipment_initial.rb +29 -0
  80. data/lib/definitions/elements/generated/207.equipment_number.rb +29 -0
  81. data/lib/definitions/elements/generated/212.unit_price.rb +29 -0
  82. data/lib/definitions/elements/generated/22.commodity_code.rb +29 -0
  83. data/lib/definitions/elements/generated/23.commodity_code_qualifier.rb +60 -0
  84. data/lib/definitions/elements/generated/234.product_service_id.rb +29 -0
  85. data/lib/definitions/elements/generated/235.product_service_id_qualifier.rb +514 -0
  86. data/lib/definitions/elements/generated/236.price_identifier_code.rb +201 -0
  87. data/lib/definitions/elements/generated/248.allowance_or_charge_indicator.rb +44 -0
  88. data/lib/definitions/elements/generated/26.country_code.rb +535 -0
  89. data/lib/definitions/elements/generated/284.service_level_code.rb +103 -0
  90. data/lib/definitions/elements/generated/324.purchase_order_number.rb +29 -0
  91. data/lib/definitions/elements/generated/326.request_reference_number.rb +29 -0
  92. data/lib/definitions/elements/generated/327.change_order_sequence_number.rb +29 -0
  93. data/lib/definitions/elements/generated/328.release_number.rb +29 -0
  94. data/lib/definitions/elements/generated/330.quantity_ordered.rb +29 -0
  95. data/lib/definitions/elements/generated/347.hash_total.rb +29 -0
  96. data/lib/definitions/elements/generated/349.item_description_type.rb +40 -0
  97. data/lib/definitions/elements/generated/352.description.rb +29 -0
  98. data/lib/definitions/elements/generated/353.transaction_set_purpose_code.rb +102 -0
  99. data/lib/definitions/elements/generated/354.number_of_line_items.rb +30 -0
  100. data/lib/definitions/elements/generated/355.unit_or_basis_for_measurement_code.rb +831 -0
  101. data/lib/definitions/elements/generated/358.quantity_invoiced.rb +29 -0
  102. data/lib/definitions/elements/generated/367.contract_number.rb +29 -0
  103. data/lib/definitions/elements/generated/368.shipment_order_status_code.rb +139 -0
  104. data/lib/definitions/elements/generated/374.date_time_qualifier.rb +1149 -0
  105. data/lib/definitions/elements/generated/380.quantity.rb +29 -0
  106. data/lib/definitions/elements/generated/382.number_of_units_shipped.rb +29 -0
  107. data/lib/definitions/elements/generated/387.routing.rb +29 -0
  108. data/lib/definitions/elements/generated/396.shipment_identification.rb +29 -0
  109. data/lib/definitions/elements/generated/559.agency_qualifier_code.rb +213 -0
  110. data/lib/definitions/elements/generated/587.acknowledgment_type.rb +52 -0
  111. data/lib/definitions/elements/generated/610.amount.rb +30 -0
  112. data/lib/definitions/elements/generated/639.basis_of_unit_price_code.rb +128 -0
  113. data/lib/definitions/elements/generated/640.transaction_type_code.rb +483 -0
  114. data/lib/definitions/elements/generated/646.quantity_shipped_to_date.rb +29 -0
  115. data/lib/definitions/elements/generated/648.price_multiplier_qualifier.rb +43 -0
  116. data/lib/definitions/elements/generated/649.multiplier.rb +29 -0
  117. data/lib/definitions/elements/generated/66.identification_code_qualifier.rb +252 -0
  118. data/lib/definitions/elements/generated/662.relationship_code.rb +42 -0
  119. data/lib/definitions/elements/generated/668.line_item_status_code.rb +63 -0
  120. data/lib/definitions/elements/generated/67.identification_code.rb +29 -0
  121. data/lib/definitions/elements/generated/687.class_of_trade_code.rb +89 -0
  122. data/lib/definitions/elements/generated/750.product_process_characteristic_code.rb +254 -0
  123. data/lib/definitions/elements/generated/751.product_description_code.rb +29 -0
  124. data/lib/definitions/elements/generated/76.invoice_number.rb +29 -0
  125. data/lib/definitions/elements/generated/782.monetary_amount.rb +29 -0
  126. data/lib/definitions/elements/generated/786.security_level_code.rb +54 -0
  127. data/lib/definitions/elements/generated/79.lading_description.rb +29 -0
  128. data/lib/definitions/elements/generated/80.lading_quantity.rb +30 -0
  129. data/lib/definitions/elements/generated/87.marks_and_numbers.rb +29 -0
  130. data/lib/definitions/elements/generated/88.marks_and_numbers_qualifier.rb +57 -0
  131. data/lib/definitions/elements/generated/91.transportation_method_type_code.rb +108 -0
  132. data/lib/definitions/elements/generated/92.purchase_order_type_code.rb +106 -0
  133. data/lib/definitions/elements/generated/98.entity_identifier_code.rb +1349 -0
  134. data/lib/definitions/elements/manual/116.postal_code.rb +44 -0
  135. data/lib/definitions/elements/manual/124.application_receivers_code.rb +29 -0
  136. data/lib/definitions/elements/manual/140.standard_carrier_alpha_code.rb +211 -0
  137. data/lib/definitions/elements/manual/142.application_senders_code.rb +29 -0
  138. data/lib/definitions/elements/manual/143.transaction_set_identifier_code.rb +335 -0
  139. data/lib/definitions/elements/manual/156.state_or_province_code.rb +92 -0
  140. data/lib/definitions/elements/manual/28.group_control_number.rb +34 -0
  141. data/lib/definitions/elements/manual/329.transactional_set_control_number.rb +35 -0
  142. data/lib/definitions/elements/manual/337.time.rb +30 -0
  143. data/lib/definitions/elements/manual/350.assigned_identification.rb +33 -0
  144. data/lib/definitions/elements/manual/373.date.rb +30 -0
  145. data/lib/definitions/elements/manual/455.responsible_agency_code.rb +43 -0
  146. data/lib/definitions/elements/manual/479.functional_identifier_code.rb +271 -0
  147. data/lib/definitions/elements/manual/480.version_release_industry_identifier_code.rb +145 -0
  148. data/lib/definitions/elements/manual/784.length_of_binary_data.rb +30 -0
  149. data/lib/definitions/elements/manual/785.binary_data.rb +30 -0
  150. data/lib/definitions/elements/manual/96.number_of_included_segments.rb +30 -0
  151. data/lib/definitions/elements/manual/97.number_of_transaction_sets_included.rb +30 -0
  152. data/lib/definitions/elements/manual/hl/628.hierarchical_id_number.rb +29 -0
  153. data/lib/definitions/elements/manual/hl/734.hierarchical_parent_id_number.rb +29 -0
  154. data/lib/definitions/elements/manual/hl/735.hierarchical_level_code.rb +207 -0
  155. data/lib/definitions/elements/manual/hl/736.hierarchical_child_code.rb +39 -0
  156. data/lib/definitions/elements/manual/i/I01.authorization_information_qualifier.rb +48 -0
  157. data/lib/definitions/elements/manual/i/I02.authorization_information.rb +33 -0
  158. data/lib/definitions/elements/manual/i/I03.security_information_qualifier.rb +43 -0
  159. data/lib/definitions/elements/manual/i/I04.security_information.rb +33 -0
  160. data/lib/definitions/elements/manual/i/I05.interchange_id_qualifier.rb +75 -0
  161. data/lib/definitions/elements/manual/i/I06.interchange_sender_id.rb +29 -0
  162. data/lib/definitions/elements/manual/i/I07.interchange_receiver_id.rb +29 -0
  163. data/lib/definitions/elements/manual/i/I08.interchange_date.rb +35 -0
  164. data/lib/definitions/elements/manual/i/I09.interchange_time.rb +36 -0
  165. data/lib/definitions/elements/manual/i/I10.interchange_control_standards_identifier.rb +42 -0
  166. data/lib/definitions/elements/manual/i/I11.interchange_control_version_number.rb +55 -0
  167. data/lib/definitions/elements/manual/i/I12.interchange_control_number.rb +34 -0
  168. data/lib/definitions/elements/manual/i/I13.acknowledgment_requested.rb +43 -0
  169. data/lib/definitions/elements/manual/i/I14.usage_indicator.rb +40 -0
  170. data/lib/definitions/elements/manual/i/I15.component_element_separator.rb +36 -0
  171. data/lib/definitions/elements/manual/i/I16.number_of_included_functional_groups.rb +30 -0
  172. data/lib/definitions/elements/manual/misc/81.weight.rb +29 -0
  173. data/lib/definitions/elements/manual/misc/93.name.rb +29 -0
  174. data/lib/definitions/segments/generated/ack.rb +192 -0
  175. data/lib/definitions/segments/generated/bak.rb +90 -0
  176. data/lib/definitions/segments/generated/beg.rb +226 -0
  177. data/lib/definitions/segments/generated/big.rb +107 -0
  178. data/lib/definitions/segments/generated/bsn.rb +107 -0
  179. data/lib/definitions/segments/generated/cad.rb +175 -0
  180. data/lib/definitions/segments/generated/ctp.rb +158 -0
  181. data/lib/definitions/segments/generated/ctt.rb +141 -0
  182. data/lib/definitions/segments/generated/dtm.rb +56 -0
  183. data/lib/definitions/segments/generated/it1.rb +277 -0
  184. data/lib/definitions/segments/generated/lin.rb +107 -0
  185. data/lib/definitions/segments/generated/man.rb +56 -0
  186. data/lib/definitions/segments/generated/n1.rb +90 -0
  187. data/lib/definitions/segments/generated/n3.rb +39 -0
  188. data/lib/definitions/segments/generated/n4.rb +90 -0
  189. data/lib/definitions/segments/generated/pid.rb +107 -0
  190. data/lib/definitions/segments/generated/po1.rb +175 -0
  191. data/lib/definitions/segments/generated/prf.rb +90 -0
  192. data/lib/definitions/segments/generated/ref.rb +56 -0
  193. data/lib/definitions/segments/generated/sac.rb +107 -0
  194. data/lib/definitions/segments/generated/sln.rb +141 -0
  195. data/lib/definitions/segments/generated/sn1.rb +124 -0
  196. data/lib/definitions/segments/generated/td1.rb +158 -0
  197. data/lib/definitions/segments/generated/td5.rb +107 -0
  198. data/lib/definitions/segments/generated/tds.rb +39 -0
  199. data/lib/definitions/segments/manual/envelopes/ge.rb +53 -0
  200. data/lib/definitions/segments/manual/envelopes/gs.rb +163 -0
  201. data/lib/definitions/segments/manual/envelopes/iea.rb +53 -0
  202. data/lib/definitions/segments/manual/envelopes/isa.rb +295 -0
  203. data/lib/definitions/segments/manual/envelopes/se.rb +52 -0
  204. data/lib/definitions/segments/manual/envelopes/st.rb +52 -0
  205. data/lib/definitions/segments/manual/hl.rb +96 -0
  206. data/lib/definitions/segments/manual/n2.rb +52 -0
  207. data/lib/definitions/transaction_sets/manual/810/810.rb +143 -0
  208. data/lib/definitions/transaction_sets/manual/810/loops.rb +109 -0
  209. data/lib/definitions/transaction_sets/manual/850/850.rb +92 -0
  210. data/lib/definitions/transaction_sets/manual/850/loops.rb +58 -0
  211. data/lib/definitions/transaction_sets/manual/855/855.rb +83 -0
  212. data/lib/definitions/transaction_sets/manual/855/loops.rb +104 -0
  213. data/lib/definitions/transaction_sets/manual/856/856.rb +83 -0
  214. data/lib/definitions/transaction_sets/manual/856/loops.rb +155 -0
  215. data/lib/eddy.rb +29 -7
  216. data/lib/eddy/build/build.rb +47 -0
  217. data/lib/eddy/build/elements/element.rb +67 -0
  218. data/lib/eddy/build/elements/elements.rb +46 -0
  219. data/lib/eddy/build/elements/id.rb +55 -0
  220. data/lib/eddy/build/elements/n.rb +48 -0
  221. data/lib/eddy/build/loop_builder.rb +93 -0
  222. data/lib/eddy/build/segment_builder.rb +169 -0
  223. data/lib/eddy/build/transaction_set_builder.rb +218 -0
  224. data/lib/eddy/cli/cli.rb +39 -0
  225. data/lib/eddy/config.rb +51 -0
  226. data/lib/eddy/data.rb +50 -0
  227. data/lib/eddy/data/persistence/active_record.rb +10 -0
  228. data/lib/eddy/data/persistence/base.rb +47 -0
  229. data/lib/eddy/data/persistence/file.rb +50 -0
  230. data/lib/eddy/data/persistence/memory.rb +65 -0
  231. data/lib/eddy/data/store.rb +108 -0
  232. data/lib/eddy/errors.rb +112 -0
  233. data/lib/eddy/models/element.rb +14 -0
  234. data/lib/eddy/models/element/an.rb +55 -0
  235. data/lib/eddy/models/element/b.rb +53 -0
  236. data/lib/eddy/models/element/base.rb +116 -0
  237. data/lib/eddy/models/element/composite.rb +6 -0
  238. data/lib/eddy/models/element/dt.rb +100 -0
  239. data/lib/eddy/models/element/id.rb +58 -0
  240. data/lib/eddy/models/element/n.rb +94 -0
  241. data/lib/eddy/models/element/r.rb +84 -0
  242. data/lib/eddy/models/element/tm.rb +113 -0
  243. data/lib/eddy/models/loop.rb +74 -0
  244. data/lib/eddy/models/segment.rb +35 -0
  245. data/lib/eddy/models/transaction_set.rb +101 -0
  246. data/lib/eddy/parse.rb +58 -0
  247. data/lib/eddy/schema/element_summary.rb +123 -0
  248. data/lib/eddy/schema/loop_summary.rb +101 -0
  249. data/lib/eddy/schema/segment_summary.rb +116 -0
  250. data/lib/eddy/schema/transaction_set_summary.rb +96 -0
  251. data/lib/eddy/schema/validate.rb +41 -0
  252. data/lib/eddy/util.rb +16 -0
  253. data/lib/eddy/util/clean_folder.rb +14 -0
  254. data/lib/eddy/util/edi_data.rb +153 -0
  255. data/lib/eddy/util/new_number.rb +24 -0
  256. data/lib/eddy/util/normalize.rb +51 -0
  257. data/lib/eddy/util/paths.rb +19 -0
  258. data/lib/eddy/util/read.rb +38 -0
  259. data/lib/eddy/util/time.rb +56 -0
  260. data/lib/eddy/util/timestamp.rb +12 -0
  261. data/lib/eddy/util/trim.rb +29 -0
  262. data/lib/eddy/version.rb +1 -1
  263. data/lib/eddy/write/functional_group.rb +33 -0
  264. data/lib/eddy/write/interchange.rb +28 -0
  265. data/lib/eddy/write/simple_interchange.rb +57 -0
  266. data/lib/generators/eddy/initializer/initializer_generator.rb +17 -0
  267. data/lib/generators/eddy/initializer/templates/eddy.rb.erb +6 -0
  268. data/lib/generators/eddy/migration/migration_generator.rb +53 -0
  269. data/lib/generators/eddy/migration/templates/migration.rb.erb +35 -0
  270. data/tasks/build.rake +15 -0
  271. data/tasks/misc/gemspec.rake +12 -0
  272. data/tasks/misc/missing_lists.rake +240 -0
  273. data/tasks/misc/yaml2json.rake +20 -0
  274. data/todo.txt +16 -0
  275. metadata +297 -42
  276. data/data/004010/segments/ISA.tsv +0 -17
  277. data/data/schema.jsonc +0 -67
  278. data/lib/eddy/build/build_an.rb +0 -31
  279. data/lib/eddy/build/build_dt.rb +0 -46
  280. data/lib/eddy/build/build_elements.rb +0 -181
  281. data/lib/eddy/build/build_id.rb +0 -56
  282. data/lib/eddy/build/build_r_and_n.rb +0 -69
  283. data/lib/eddy/build/build_tm.rb +0 -52
  284. data/lib/eddy/build/segments.rb +0 -25
  285. data/lib/eddy/definitions/manual/elements/109.dt.pickup_date.rb +0 -20
  286. data/lib/eddy/definitions/manual/elements/111.tm.pickup_time.rb +0 -20
  287. data/lib/eddy/definitions/manual/elements/112.an.pier_name.rb +0 -19
  288. data/lib/eddy/definitions/manual/elements/785.b.binary_data.rb +0 -19
  289. data/lib/eddy/definitions/manual/elements/81.r.weight.rb +0 -19
  290. data/lib/eddy/definitions/manual/elements/86.n0.total_equipment.rb +0 -20
  291. data/lib/eddy/definitions/manual/elements/I02.authorization_information.rb +0 -20
  292. data/lib/eddy/definitions/manual/elements/I04.security_information.rb +0 -20
  293. data/lib/eddy/definitions/manual/elements/I08.interchange_date.rb +0 -20
  294. data/lib/eddy/definitions/manual/elements/I09.interchange_time.rb +0 -20
  295. data/lib/eddy/definitions/manual/elements/I15.component_element_separator.rb +0 -32
  296. data/lib/eddy/definitions/manual/segments/n1.rb +0 -14
  297. data/lib/eddy/element.rb +0 -14
  298. data/lib/eddy/element/an.rb +0 -36
  299. data/lib/eddy/element/b.rb +0 -9
  300. data/lib/eddy/element/base.rb +0 -37
  301. data/lib/eddy/element/dt.rb +0 -89
  302. data/lib/eddy/element/id.rb +0 -40
  303. data/lib/eddy/element/n.rb +0 -43
  304. data/lib/eddy/element/r.rb +0 -47
  305. data/lib/eddy/element/tm.rb +0 -108
  306. data/lib/eddy/error.rb +0 -14
  307. data/lib/eddy/helpers.rb +0 -31
  308. data/lib/eddy/segment.rb +0 -12
  309. data/lib/eddy/transaction_set.rb +0 -35
@@ -0,0 +1,90 @@
1
+ module Eddy
2
+ module Segments
3
+ # ### Segment Summary:
4
+ #
5
+ # - Id: BAK
6
+ # - Name: Beginning Segment for Purchase Order Acknowledgment
7
+ # - Purpose: To indicate the beginning of the Purchase Order Acknowledgment Transaction Set and transmit identifying numbers and date.
8
+ class BAK < Eddy::Segment
9
+
10
+ # @param store [Eddy::Data::Store]
11
+ # @return [void]
12
+ def initialize(store)
13
+ @id = "BAK"
14
+ @name = "Beginning Segment for Purchase Order Acknowledgment"
15
+ @bak01 = Eddy::Elements::E353.new(ref: "BAK01", req: "M")
16
+ @bak02 = Eddy::Elements::E587.new(ref: "BAK02", req: "M")
17
+ @bak03 = Eddy::Elements::E324.new(ref: "BAK03", req: "M")
18
+ @bak04 = Eddy::Elements::E373.new(ref: "BAK04", req: "M")
19
+ super(
20
+ store,
21
+ @bak01,
22
+ @bak02,
23
+ @bak03,
24
+ @bak04,
25
+ )
26
+ end
27
+
28
+ # ### BAK01
29
+ #
30
+ # - Id: 353
31
+ # - Name: Transaction Set Purpose Code
32
+ # - Type: ID
33
+ # - Min/Max: 2/2
34
+ # - Description: Code identifying purpose of transaction set
35
+ #
36
+ # @param arg [String]
37
+ # @return [void]
38
+ def BAK01=(arg)
39
+ @bak01.value = arg
40
+ end
41
+ alias TransactionSetPurposeCode= BAK01=
42
+
43
+ # ### BAK02
44
+ #
45
+ # - Id: 587
46
+ # - Name: Acknowledgment Type
47
+ # - Type: ID
48
+ # - Min/Max: 2/2
49
+ # - Description: Code specifying the type of acknowledgment
50
+ #
51
+ # @param arg [String]
52
+ # @return [void]
53
+ def BAK02=(arg)
54
+ @bak02.value = arg
55
+ end
56
+ alias AcknowledgmentType= BAK02=
57
+
58
+ # ### BAK03
59
+ #
60
+ # - Id: 324
61
+ # - Name: Purchase Order Number
62
+ # - Type: AN
63
+ # - Min/Max: 1/22
64
+ # - Description: Identifying number for Purchase Order assigned by the orderer/purchaser
65
+ #
66
+ # @param arg [String]
67
+ # @return [void]
68
+ def BAK03=(arg)
69
+ @bak03.value = arg
70
+ end
71
+ alias PurchaseOrderNumber= BAK03=
72
+
73
+ # ### BAK04
74
+ #
75
+ # - Id: 373
76
+ # - Name: Date
77
+ # - Type: DT
78
+ # - Min/Max: 8/8
79
+ # - Description: Date expressed as CCYYMMDD
80
+ #
81
+ # @param arg [Time]
82
+ # @return [void]
83
+ def BAK04=(arg)
84
+ @bak04.value = arg
85
+ end
86
+ alias Date= BAK04=
87
+
88
+ end
89
+ end
90
+ end
@@ -0,0 +1,226 @@
1
+ module Eddy
2
+ module Segments
3
+ # ### Segment Summary:
4
+ #
5
+ # - Id: BEG
6
+ # - Name: Beginning Segment for Purchase Order
7
+ # - Purpose: To indicate the beginning of the Purchase Order Transaction Set and transmit identifying numbers and dates
8
+ class BEG < Eddy::Segment
9
+
10
+ # @param store [Eddy::Data::Store]
11
+ # @return [void]
12
+ def initialize(store)
13
+ @id = "BEG"
14
+ @name = "Beginning Segment for Purchase Order"
15
+ @beg01 = Eddy::Elements::E353.new(ref: "BEG01", req: "M")
16
+ @beg02 = Eddy::Elements::E92.new(ref: "BEG02", req: "M")
17
+ @beg03 = Eddy::Elements::E324.new(ref: "BEG03", req: "M")
18
+ @beg04 = Eddy::Elements::E328.new(ref: "BEG04", req: "O")
19
+ @beg05 = Eddy::Elements::E373.new(ref: "BEG05", req: "M")
20
+ @beg06 = Eddy::Elements::E367.new(ref: "BEG06", req: "O")
21
+ @beg07 = Eddy::Elements::E587.new(ref: "BEG07", req: "O")
22
+ @beg08 = Eddy::Elements::E1019.new(ref: "BEG08", req: "O")
23
+ @beg09 = Eddy::Elements::E1166.new(ref: "BEG09", req: "O")
24
+ @beg10 = Eddy::Elements::E1232.new(ref: "BEG10", req: "O")
25
+ @beg11 = Eddy::Elements::E786.new(ref: "BEG11", req: "O")
26
+ @beg12 = Eddy::Elements::E640.new(ref: "BEG12", req: "O")
27
+ super(
28
+ store,
29
+ @beg01,
30
+ @beg02,
31
+ @beg03,
32
+ @beg04,
33
+ @beg05,
34
+ @beg06,
35
+ @beg07,
36
+ @beg08,
37
+ @beg09,
38
+ @beg10,
39
+ @beg11,
40
+ @beg12,
41
+ )
42
+ end
43
+
44
+ # ### BEG01
45
+ #
46
+ # - Id: 353
47
+ # - Name: Transaction Set Purpose Code
48
+ # - Type: ID
49
+ # - Min/Max: 2/2
50
+ # - Description: Code identifying purpose of transaction set
51
+ #
52
+ # @param arg [String]
53
+ # @return [void]
54
+ def BEG01=(arg)
55
+ @beg01.value = arg
56
+ end
57
+ alias TransactionSetPurposeCode= BEG01=
58
+
59
+ # ### BEG02
60
+ #
61
+ # - Id: 92
62
+ # - Name: Purchase Order Type Code
63
+ # - Type: ID
64
+ # - Min/Max: 2/2
65
+ # - Description: Code specifying the type of Purchase Order
66
+ #
67
+ # @param arg [String]
68
+ # @return [void]
69
+ def BEG02=(arg)
70
+ @beg02.value = arg
71
+ end
72
+ alias PurchaseOrderTypeCode= BEG02=
73
+
74
+ # ### BEG03
75
+ #
76
+ # - Id: 324
77
+ # - Name: Purchase Order Number
78
+ # - Type: AN
79
+ # - Min/Max: 1/22
80
+ # - Description: Identifying number for Purchase Order assigned by the orderer/purchaser
81
+ #
82
+ # @param arg [String]
83
+ # @return [void]
84
+ def BEG03=(arg)
85
+ @beg03.value = arg
86
+ end
87
+ alias PurchaseOrderNumber= BEG03=
88
+
89
+ # ### BEG04
90
+ #
91
+ # - Id: 328
92
+ # - Name: Release Number
93
+ # - Type: AN
94
+ # - Min/Max: 1/30
95
+ # - Description: Number identifying a release against a Purchase Order previously placed by the parties involved in the transaction
96
+ #
97
+ # @param arg [String]
98
+ # @return [void]
99
+ def BEG04=(arg)
100
+ @beg04.value = arg
101
+ end
102
+ alias ReleaseNumber= BEG04=
103
+
104
+ # ### BEG05
105
+ #
106
+ # - Id: 373
107
+ # - Name: Date
108
+ # - Type: DT
109
+ # - Min/Max: 8/8
110
+ # - Description: Date expressed as CCYYMMDD
111
+ #
112
+ # @param arg [Time]
113
+ # @return [void]
114
+ def BEG05=(arg)
115
+ @beg05.value = arg
116
+ end
117
+ alias Date= BEG05=
118
+
119
+ # ### BEG06
120
+ #
121
+ # - Id: 367
122
+ # - Name: Contract Number
123
+ # - Type: AN
124
+ # - Min/Max: 1/30
125
+ # - Description: Contract number
126
+ #
127
+ # @param arg [String]
128
+ # @return [void]
129
+ def BEG06=(arg)
130
+ @beg06.value = arg
131
+ end
132
+ alias ContractNumber= BEG06=
133
+
134
+ # ### BEG07
135
+ #
136
+ # - Id: 587
137
+ # - Name: Acknowledgment Type
138
+ # - Type: ID
139
+ # - Min/Max: 2/2
140
+ # - Description: Code specifying the type of acknowledgment
141
+ #
142
+ # @param arg [String]
143
+ # @return [void]
144
+ def BEG07=(arg)
145
+ @beg07.value = arg
146
+ end
147
+ alias AcknowledgmentType= BEG07=
148
+
149
+ # ### BEG08
150
+ #
151
+ # - Id: 1019
152
+ # - Name: Invoice Type Code
153
+ # - Type: ID
154
+ # - Min/Max: 3/3
155
+ # - Description: Code defining the method by which invoices are to be processed
156
+ #
157
+ # @param arg [String]
158
+ # @return [void]
159
+ def BEG08=(arg)
160
+ @beg08.value = arg
161
+ end
162
+ alias InvoiceTypeCode= BEG08=
163
+
164
+ # ### BEG09
165
+ #
166
+ # - Id: 1166
167
+ # - Name: Contract Type Code
168
+ # - Type: ID
169
+ # - Min/Max: 2/2
170
+ # - Description: Code identifying a contract type
171
+ #
172
+ # @param arg [String]
173
+ # @return [void]
174
+ def BEG09=(arg)
175
+ @beg09.value = arg
176
+ end
177
+ alias ContractTypeCode= BEG09=
178
+
179
+ # ### BEG10
180
+ #
181
+ # - Id: 1232
182
+ # - Name: Purchase Category
183
+ # - Type: ID
184
+ # - Min/Max: 2/2
185
+ # - Description: Code identifying the broad category of products or services being acquired
186
+ #
187
+ # @param arg [String]
188
+ # @return [void]
189
+ def BEG10=(arg)
190
+ @beg10.value = arg
191
+ end
192
+ alias PurchaseCategory= BEG10=
193
+
194
+ # ### BEG11
195
+ #
196
+ # - Id: 786
197
+ # - Name: Security Level Code
198
+ # - Type: ID
199
+ # - Min/Max: 2/2
200
+ # - Description: Code indicating the level of confidentiality assigned by the sender to the information following
201
+ #
202
+ # @param arg [String]
203
+ # @return [void]
204
+ def BEG11=(arg)
205
+ @beg11.value = arg
206
+ end
207
+ alias SecurityLevelCode= BEG11=
208
+
209
+ # ### BEG12
210
+ #
211
+ # - Id: 640
212
+ # - Name: Transaction Type Code
213
+ # - Type: ID
214
+ # - Min/Max: 2/2
215
+ # - Description: Code specifying the type of transaction
216
+ #
217
+ # @param arg [String]
218
+ # @return [void]
219
+ def BEG12=(arg)
220
+ @beg12.value = arg
221
+ end
222
+ alias TransactionTypeCode= BEG12=
223
+
224
+ end
225
+ end
226
+ end
@@ -0,0 +1,107 @@
1
+ module Eddy
2
+ module Segments
3
+ # ### Segment Summary:
4
+ #
5
+ # - Id: BIG
6
+ # - Name: Beginning Segment for Invoice
7
+ # - Purpose: To indicate the beginning of an invoice transaction set and transmit identifying numbers and dates.
8
+ class BIG < Eddy::Segment
9
+
10
+ # @param store [Eddy::Data::Store]
11
+ # @return [void]
12
+ def initialize(store)
13
+ @id = "BIG"
14
+ @name = "Beginning Segment for Invoice"
15
+ @big01 = Eddy::Elements::E373.new(ref: "BIG01", req: "M")
16
+ @big02 = Eddy::Elements::E76.new(ref: "BIG02", req: "M")
17
+ @big03 = Eddy::Elements::E373.new(ref: "BIG03", req: "O")
18
+ @big04 = Eddy::Elements::E324.new(ref: "BIG04", req: "O")
19
+ @big05 = Eddy::Elements::E328.new(ref: "BIG05", req: "O")
20
+ super(
21
+ store,
22
+ @big01,
23
+ @big02,
24
+ @big03,
25
+ @big04,
26
+ @big05,
27
+ )
28
+ end
29
+
30
+ # ### BIG01
31
+ #
32
+ # - Id: 373
33
+ # - Name: Date
34
+ # - Type: DT
35
+ # - Min/Max: 8/8
36
+ # - Description: Date expressed as CCYYMMDD
37
+ #
38
+ # @param arg [Time]
39
+ # @return [void]
40
+ def BIG01=(arg)
41
+ @big01.value = arg
42
+ end
43
+ alias Date1= BIG01=
44
+
45
+ # ### BIG02
46
+ #
47
+ # - Id: 76
48
+ # - Name: Invoice Number
49
+ # - Type: AN
50
+ # - Min/Max: 1/22
51
+ # - Description: Identifying number assigned by issuer
52
+ #
53
+ # @param arg [String]
54
+ # @return [void]
55
+ def BIG02=(arg)
56
+ @big02.value = arg
57
+ end
58
+ alias InvoiceNumber= BIG02=
59
+
60
+ # ### BIG03
61
+ #
62
+ # - Id: 373
63
+ # - Name: Date
64
+ # - Type: DT
65
+ # - Min/Max: 8/8
66
+ # - Description: Date expressed as CCYYMMDD
67
+ #
68
+ # @param arg [Time]
69
+ # @return [void]
70
+ def BIG03=(arg)
71
+ @big03.value = arg
72
+ end
73
+ alias Date2= BIG03=
74
+
75
+ # ### BIG04
76
+ #
77
+ # - Id: 324
78
+ # - Name: Purchase Order Number
79
+ # - Type: AN
80
+ # - Min/Max: 1/22
81
+ # - Description: Identifying number for Purchase Order assigned by the orderer/purchaser
82
+ #
83
+ # @param arg [String]
84
+ # @return [void]
85
+ def BIG04=(arg)
86
+ @big04.value = arg
87
+ end
88
+ alias PurchaseOrderNumber= BIG04=
89
+
90
+ # ### BIG05
91
+ #
92
+ # - Id: 328
93
+ # - Name: Release Number
94
+ # - Type: AN
95
+ # - Min/Max: 1/30
96
+ # - Description: Number identifying a release against a Purchase Order previously placed by the parties involved in the transaction
97
+ #
98
+ # @param arg [String]
99
+ # @return [void]
100
+ def BIG05=(arg)
101
+ @big05.value = arg
102
+ end
103
+ alias ReleaseNumber= BIG05=
104
+
105
+ end
106
+ end
107
+ end
@@ -0,0 +1,107 @@
1
+ module Eddy
2
+ module Segments
3
+ # ### Segment Summary:
4
+ #
5
+ # - Id: BSN
6
+ # - Name: Beginning Segment for Ship Notice
7
+ # - Purpose: To transmit identifying numbers, dates, and other basic data relating to the transaction set.
8
+ class BSN < Eddy::Segment
9
+
10
+ # @param store [Eddy::Data::Store]
11
+ # @return [void]
12
+ def initialize(store)
13
+ @id = "BSN"
14
+ @name = "Beginning Segment for Ship Notice"
15
+ @bsn01 = Eddy::Elements::E353.new(ref: "BSN01", req: "M")
16
+ @bsn02 = Eddy::Elements::E396.new(ref: "BSN02", req: "M")
17
+ @bsn03 = Eddy::Elements::E373.new(ref: "BSN03", req: "M")
18
+ @bsn04 = Eddy::Elements::E337.new(ref: "BSN04", req: "M")
19
+ @bsn05 = Eddy::Elements::E1005.new(ref: "BSN05", req: "O")
20
+ super(
21
+ store,
22
+ @bsn01,
23
+ @bsn02,
24
+ @bsn03,
25
+ @bsn04,
26
+ @bsn05,
27
+ )
28
+ end
29
+
30
+ # ### BSN01
31
+ #
32
+ # - Id: 353
33
+ # - Name: Transaction Set Purpose Code
34
+ # - Type: ID
35
+ # - Min/Max: 2/2
36
+ # - Description: Code identifying purpose of transaction set
37
+ #
38
+ # @param arg [String]
39
+ # @return [void]
40
+ def BSN01=(arg)
41
+ @bsn01.value = arg
42
+ end
43
+ alias TransactionSetPurposeCode= BSN01=
44
+
45
+ # ### BSN02
46
+ #
47
+ # - Id: 396
48
+ # - Name: Shipment Identification
49
+ # - Type: AN
50
+ # - Min/Max: 2/30
51
+ # - Description: A unique control number assigned by the original shipper to identify a specific shipment
52
+ #
53
+ # @param arg [String]
54
+ # @return [void]
55
+ def BSN02=(arg)
56
+ @bsn02.value = arg
57
+ end
58
+ alias ShipmentIdentification= BSN02=
59
+
60
+ # ### BSN03
61
+ #
62
+ # - Id: 373
63
+ # - Name: Date
64
+ # - Type: DT
65
+ # - Min/Max: 8/8
66
+ # - Description: Date expressed as CCYYMMDD
67
+ #
68
+ # @param arg [Time]
69
+ # @return [void]
70
+ def BSN03=(arg)
71
+ @bsn03.value = arg
72
+ end
73
+ alias Date= BSN03=
74
+
75
+ # ### BSN04
76
+ #
77
+ # - Id: 337
78
+ # - Name: Time
79
+ # - Type: TM
80
+ # - Min/Max: 4/8
81
+ # - Description: Time expressed in 24-hour clock time as follows: HHMM, or HHMMSS, or HHMMSSD, or HHMMSSDD, where H = hours (00-23), M = minutes (00-59), S = integer seconds (00-59) and DD = decimal seconds; decimal seconds are expressed as follows: D = tenths (0-9) and DD = hundredths (00-99)
82
+ #
83
+ # @param arg [Time]
84
+ # @return [void]
85
+ def BSN04=(arg)
86
+ @bsn04.value = arg
87
+ end
88
+ alias Time= BSN04=
89
+
90
+ # ### BSN05
91
+ #
92
+ # - Id: 1005
93
+ # - Name: Hierarchical Structure Code
94
+ # - Type: ID
95
+ # - Min/Max: 4/4
96
+ # - Description: Code indicating the hierarchical application structure of a transaction set that utilizes the HL segment to define the structure of the transaction set
97
+ #
98
+ # @param arg [String]
99
+ # @return [void]
100
+ def BSN05=(arg)
101
+ @bsn05.value = arg
102
+ end
103
+ alias HierarchicalStructureCode= BSN05=
104
+
105
+ end
106
+ end
107
+ end