The primary purpose of this project is to provide an open source library to assist developers in integrating EDI into business applications. This SDK is designed for custom EDI implementations. (ANSI X12 and UN/EDIFACT compatible)
Be the first to post a text review of EDI Software Development Kit. Rate and review a project by clicking thumbs up or thumbs down in the right column.
Updates to JclEDI.pas - Added more item management methods to TEDIObjectList and some existing methods were rewritten due to the new methods. - Removed "OPTIMIZED_DISASSEMBLE" directive and obsolete dynamic array code. Updates to JclEDIANSIX12.pas and JclUNEDIFACT.pas - Removed "OPTIMIZED_DISASSEMBLE" directive and obsolete dynamic array code. - Fixed spelling mistake. "ediDissassembled" should have been "ediDisassembled". - Fixed parsing to better detect when CR-LF pairs are being used as segment terminators. Also fixed bug where segment delimiter length greater than 2 would cause parsing errors. Note that mixing EDI Interchanges with and without CR-LF segment terminators is not supported at this time. Updates to JclEDISEF.pas - Value_UndefinedMaximum = 99999 changed to MaxInt because previous value was inadequate. - TEDISEFSubElement forward declaration added. - CloneAsSubElement function added to TEDISEFElement. - Internal field FExtendedData added to TEDISEFCompositeElement and TEDISEFSegment for storing syntax rules, dependency notes, and masks for now. - Clone function, Position increment, and Mask number parsing implemented in TEDISEFSegment. Mask number is parsed however it is not used at this time and is only accessible as a private field. - ParentTable property added to TEDISEFSegment and TEDISEFLoop. - ParentSet property added to TEDISEFLoop. - AssignSegmentPositions procedure added in TEDISEFSet. - Fixed explicit ordinal handling. - Position increment implemented. - If a set contains three tables then the "Heading", "Detail", and "Summary" descriptions will be set as their Id's. - TryExcept blocks added to TEDISEFTextSet.Disassemble to eat string to integer conversion exceptions. - Tested using diff program with SEF files to determine that file parsing and construction are working properly. Note the following tags are still not implemented: ".PRIVATE", ".PUBLIC", ".VALLISTS", ".OBJVARS", ".SEMREFS" - Note: Currently explicit ordinal and position increment values are not updated when performing adds, inserts, or deletes. Save and reload the file in order to refresh the values. - Added add, append, extract, insert, delete functions and procedures and methods to TEDISEF... classes. The new item management functions and procedures will ensure indexes are updated and object ownership is transferred when necessary. Some refactoring done to reflect these changes. - Fixed the parsing of segment id with a specified attribute because the attribute was being copied into the segment id. - Enabled items added to lists to be able to update their list item names so list find by name will work when TEDISEFDataObject.Id is updated. - TEDISEFDataObject.Clone warnings in D5 problem has been fixed by providing implemented Clone method in base class however it will return nil. - TEDISEFDataObjectList.AddByNameOrId was removed and a new Add method is used instead. An Insert method was also added. - TEDISEFTable.SEFSet property added. - TEDISEFText.Description property added to this base class. - Changed some looping structures from "for" to "while" loops so dynamic array emulation is not being used. (minor speed improvements) - Although new methods for adding, inserting, deleting were added, work is still being done to sync dictionary based objects in TEDISEFFile with TEDISEFSet owned objects. If changes in TEDISEFSet are assembled not all changes will be written to the output string and dictionary objects are not automatically updated at this time.
Be the first person to add a text review.
Copyright © 2009 Geeknet, Inc. All rights reserved. Terms of Use
Thanks for your rating!
Would you also like to write a review?
Thanks for your review!
Get credit for your review by logging in via OpenID. Click your account provider: