EDI
TOOLKIT for RUBY (edi4r)¶ ↑
This is Ruby gem edi4r version 0.9.6.2
Edi4r was created to greatly simplify the creation and processing of data for Electronic Data Interchange (EDI
). In particular, it supports the UN/EDIFACT syntax (ISO 9573) and optionally SAP IDocs. Limited support is offered for ANSI X.12 and SEDAS.
Installation¶ ↑
Install it as any other Ruby gem, e.g.:
sudo gem install edi4r-<version>.gem
With administrator privileges and network access, just type:
gem install edi4r
Usage¶ ↑
require 'edi4r' # Older installations: require_gem 'edi4r' require 'edi4r/edifact' # optional # Build a UN/EDIFACT interchange from its character representation in a file: ic = nil File.open("received.edi") {|hnd| ic = EDI::E::Interchange.parse( hnd ) } ic.each do |msg| # Process message, here: Just list document numbers from (only) segment BGM puts msg['BGM'].first.d1004 end # Create a minimalistic interchange ic = EDI::E::Interchange.new # Default: syntax version=3, charset = UNOB msg = ic.new_message # Default: ORDERS D.96A bgm = msg.new_segment('BGM') # Obtain an empty segment bgm.cC002.d1001 = '220' # Add some content to mandatory elements bgm.d1004 = 'PO-54321' dtm = msg.new_segment('DTM') dtm.cC507.d2005 = '137' uns = msg.new_segment('UNS') uns.d0081 = 'S' [bgm, dtm, uns].each {|seg| msg.add seg} # Add segments to message ic.add msg # Add message to interchange - ready to go! ic.header.cS002.d0004 = 'sender'; ic.header.cS003.d0010 = 'recipient' # UNB ic.validate # Conforming to standard? print ic # Could be sent that way!
See also¶ ↑
-
Background info about data structure and classes.
-
A Tutorial for examples of use.
-
A Changelog is maintained since version 0.8
-
Finally, see TO-DO for the current wish list.
-
This code is put under the Ruby license, see COPYING for details.
Author¶ ↑
Heinz W. Werntges, RheinMain University of Applied Sciences, Wiesbaden (edi-ai-dcsm@hs-rm.de)
Copyright¶ ↑
Copyright © 2006, 2015 Heinz W. Werntges. Licensed under the same terms as Ruby.
Enjoy,
Heinz