History of Changes
- Release 3.5.9 - April 3, 2008
Minor changes.
- Missing segment error are not reported at default error level because the error level in the
validation logic was set too low.
NOTE: Even if you do not implement this update you should still update the OBOE.properties
property errorLevelToReport to 3 or higher so these types of errors are correctly reported.
errorLevelToReport=3
- Coded several OBOE.property file properties as public static final in Util class
public final static String xmlPath = "xmlPath";
public final static String errorLevelToReport = "errorLevelToReport";
public final static String searchDirective = "searchDirective";
public final static String baseDirectory = "baseDirectory";
public final static String useNamespace = "useNamespace";
public final static String throwParsingException = "throwParsingException";
public final static String doPrevalidate = "doPrevalidate";
public final static String useObject = "useObject";
public final static String realNumbersRetainPrecision = "realNumbersRetainPrecision";
public final static String checkPropertyFileForChanges = "checkPropertyFileForChanges";
- Release 3.5.8 - February 12, 2008
Minor changes.
- Enhanced ability to change message delimiters.
- Restored logic when building segments and loops. When segment or loop are not part of the
container previous release threw an exception. Restored to release 3.5.6 where a null is
returned instead. Also the containing object will write a debug level log message indicating
an unknown object was trying to be created.
- Corrected null pointer exception in composite class when no data elements present and
composite is required.
- Updated SEF file processor to handle multiple transaction set definitions.
- Updated Rules and Code ID Builder to recognize edits by end-user.
- Corrected RulesAndCodeBuilder. When building idList nodes null pointer thrown when no id objects existed.
- Corrected RulesAndCodeBuilder. For idListClass missing "<" character when writing file.
- Release 3.5.7 - October 17, 2007
Minor changes.
- Enhanced MessageStripper utility to better recognize end of X12 ISA/ISE messages.
- IDList103Parser was not accepting 3 character codes or Part 1 only data.
- Release 3.5.6 - September 10, 2007
Major changes.
- In the class TemplateSegmentContainer the method
getTemplateSegment(String, String) now throws an OBOEException if
the second argument (known as the primary ID value) is not valid
for that particular segment. In prior releases the method returned
a null. This code only effects clients using the OBOE HIPAA package
or if those using that particular method in their designs.
- In the class TemplateSegmentContainer both getTemplateSegment
methods will throw an unknown segment exception if the first parm
is incorrect.
Minor changes.
- Though specified, the Segment class constructor never threw an
OBOEException. The throws clause and associated comments have been
removed.
- Relaxed the XML rule in transactionSetRules.dtd, idList.dtd and
envelopeRules.dtd so that the idValue node is no longer required.
- Updated idList classes for the relaxed rule. If an idValue is not
specified with an idCode, the getValue and describe() methods will
return the idCode value - as long as the idCode is valid.
- Added version information to the manifest.mf file as follows
Name: com/americancoders/edi
Specification-Title: OBOE - Open Business Objects for EDI - ${package}
Specification-Version: ${version}
Specification-Vendor: American Coders, Ltd
so for this release ${package} is 356 and ${version} is 3.5.6.
- Added a new property element to OBOE.properties file. Element name
is realNumbersRetainPrecision which can be set as either true or false.
When set to true the RealDE object will maintain the decimal precision of the
value when set.
| Incoming Value
| Output when property is false
| Output when property is true
|
| 15.00
| 15
| 15.00
|
| 15.10
| 15.1
| 15.10
|
| 15.
| 15
| 15.
|
| 15
| 15
| 15
|
To keep the code backwards compatible the default value is
false.
- Release 3.5.5 - June 28, 2007
Minor changes.
- Added logic to method setCountInTrailer() of class EDIFactFunctionalGroup.
- Referenced incorrect segment in setHeaderTrailer of class TransactionSet.
This bug effected EDIFACT applications.
- Completed code for setCountInTrailer method in EDIFactFunctionalGroup class.
- Changes in 3.5.2 caused a bug in searching for the OBOE.properties file but only when loading the
property file from the classpath. 3.5.2 removed the '/' from the file's pathname.
By removing the '/' the application was searching for the file in the loaded class package name.
New logic searches with and without '/' in the file name.
- Release 3.5.4 - June 14, 2007
Minor changes.
- Expanded DateDE year range from 1900-2099 to 1850-2150. Some real
old person caused problem with a HIPAA application.
- Release 3.5.3 - June 1, 2007
Minor changes.
- Corrected bug in MessageStripper class. Bug caused early termination
of input string if the last segment identifier (ISE for x12, UNZ for EDIFACT)
appeared within a character field.
- OBOECodeGenerator specified application code to work done for
a client. References to CMS1500Parser replaced with correct EnvelopeFactory
reference.
- Method writeFormattedText not initializing formatting indicator correctly thereby
causing method to always format envelope object as X12.
- FunctionalGroup containers not recognizing and setting header/trailer segment types correctly.
- In AWT and SWING gui classes replaced deprecated show method with setVisible(true).
- Release 3.5.2 - May 7, 2007
Major changes.
- Improved logic to specify different EDI delimiters for outbound documents.
Prior to this release delimiters were changed after the fact using a
thread/pipe mechanism.
- Removed threading logic that performed delimiter change logic.
- Created new interface to allow inline delimiter update.
Minor changes.
- All references to OBOE.properties made case sensitive.
- OBOE.properties file not closed after being read.
- Release 3.5.1 - April 5, 2007
Minor changes.
- All references to OBOE.properties made case sensitive.
- OBOE.properties file not closed after being read.
- Release 3.5.0 - February 23, 2007
Major changes.
- Created subclasses of the Tokenizer class for each of the known EDI types.
X12, EDIFACT, Tradacoms and ACH.
You may have to update your source code if your programs spefically
creates and uses com.americancoders.edi.Tokenizer. There is a very
good chance your programs doesn't directly call this class.
If the code creates a Tokenizer the following changes are required:
X12
Tokenizer et = new Tokenizer(inReader, "X12", dErr);
to
Tokenizer et = new X12Tokenizer(inReader, dErr);
EDIFACT
Tokenizer et = new Tokenizer(inReader, "EDIFact", dErr);
to
Tokenizer et = new EDIFactTokenizer(inReader, dErr);
Tradacoms
Tokenizer et = new Tokenizer(inReader, "Tradacoms", dErr);
to
Tokenizer et = new TradacomsTokenizer(inReader, dErr);
- Added a new property to allow the user to specify if prevalidation worked.
Prior releases assumed prevalidation and as such prevented some valid segments with
invalid ID data fields not to be parsed.
For HIPAA application users:
add the following line to your OBOE.properties file:
doPrevalidate=true
Minor changes.
- Removed object serialization/externalization logic from Envelope classes.
- Updated error message when parsing incoming documents.
Parser will display byte offset of segments it doesn't know.
- Added Util method to test prevalidation logic.
- Release 3.4.0 January 30, 2007
Major changes.
- Updated the structure of the XML rules files. The update allows the previous versionrules files to be
compatible with this version.
Changes
- Added new attributes to idListFile node. "exclude" and "include"
allows you to specify what idlist codes to include/exclude during the code check.
The field values are comma seperated and ranges may be specfied using a dash. For
instance if an idlist file has values ranging from 00 to 99.
include="01, 99" indicates that field values 01 and 99 are the only values that
are valid.
exclude="02-98" indicates that field values 02 and 98 are not valid. Values 00 01
and 99 are valid.
- Replaced application utility OBOERulesFileEditor with RulesAndCodeBuilder.
- Removed requirement for secondary XML rules file directory. Any deletions from a
the rules file is permament, so it's better to save the file in a new directory.
- Removed ability to edit name, position, id and description. This maybe restored in a future release.
- Added ability to create program scripts for the PIXES language.
Minor changes.
- Added Excel.java class to samples directory. This class
creates Excel spreadsheets from X12 messages. There is one requirement:
the open source package
JExcelApi
package from sourceforge.