JRecord Changelog

What's new in JRecord 0.80.8i Beta

Feb 25, 2016
  • Added new parameter -OutputFileStructure (-ofs) to Cobol2Csv program. This option allows users to generate Csv files with/without column headings.
  • Refactor IOBuilder Interfaces and implementation classes. General code cleanup.
  • Refactor Cobol2Xml Interfaces and implementation classes.
  • Fixes for the Fixed-Width and Csv IOBuilders
  • Added initToSpaces option to IOBuilders / Cobol2Xml classes. When writing very large Cobol Files, setting to false will be more efficient, but you will need to set every field
  • Added Cobol-Copybook Reader option to IOBuilders and Cobol2Xml interfaces/classes.
  • Added Record-Hierarchy option to Cobol2Xml classes. This allows you to define a hierarchy between records and read/write xml more accurately reflects the internal relationship
  • Added Record-Selection and Record-Hierarchy options to Data2Xml and Xml2Data programs (batch cobol to/from Xml programs)
  • Added JavaScript / Groovy examples of converting cobol files to/from Xml.

New in JRecord 0.80.8h Beta (Feb 25, 2016)

  • Fix issue with file structure in CobolIoProvider.java (Bug #12)
  • Fix issue with redefines (Bug #13)
  • Fix to TextLineReader to make it thread safe (Bug 15)
  • Several other minor fixes
  • Added support for occurs depending Cobol Xml programs
  • Added support for specifying Usage at Group Level in copybook
  • Added support for Multi-line value's in copybook
  • Added maven pom files
  • Added test files to Source directory to allow Maven Testing
  • Changes for testing on Linux
  • Extra tests
  • Reorganise source diretory
  • Change to cb2xml 0.95.5

New in JRecord 0.80.8g Beta (Feb 25, 2016)

  • Adding Multi-Record support to the cobol2Xml and xml2Cobol support
  • Added array support to xml2Cobol
  • Added option to set Record-Type by position in the file.

New in JRecord 0.80.8f Beta (Feb 25, 2016)

  • Added new Data2Xml and Xml2Data programs. These are replacements for Dat2Xml and Dat2Xml in the cb2xml project
  • Allow Multiple copybooks to be used by the one IOBuilder
  • Added Export to the JRecordInterface1.SCHEMA_XML option. This will save a ExternalRecord as Xml.

New in JRecord 0.80.8e Beta (Aug 19, 2015)

  • Import/Export of RecordEditor-Xml to include Group-Details.
  • Fix for looking accessing array-fields in the GetGroupField method
  • Added deprecated to some old methods
  • Add Checks to IOBuilders to make sure the Line-Type is compatible with the schema (i.e. byte based records are used with Binary layouts).
  • More Work & testing of IOBuilders. Inparticular the CSV, FIXED_WIDTH, SCHEMA and SCHEMA_XML IOBuilders have undergone basic testing
  • More IOBuilder examples
  • fix for Record-Selections where the field is in a different record.

New in JRecord 0.80.8c Beta (Mar 3, 2015)

  • Support for Occurs Depending on in the common section when using the SPLIT_REDEFINE option.
  • Improvements when creating Occurs-Depending records.
  • Fix for sign trailing Issue (supplied by Nick Briggs)

New in JRecord 0.80.8b Beta (Feb 23, 2015)

  • JRecord is a library for reading Cobol data files in Java. This introduces basic support for Occurs Depending.
  • Warnings:
  • Only download the version if you need support for Occurs Depending. Otherwise use JRecord 0.80.8
  • Changes:
  • basic support for Occurs depending

New in JRecord 0.80.8a Beta (Feb 19, 2015)

  • basic support for Occurs depending

New in JRecord 0.80.8 Beta (Feb 19, 2015)

  • There is a new Default Csv parser that is much Closer to the Csv Standard. Most people should notice the difference. JRecord will use the new CsvLine class (instead of Line) when reading Csv files. For the most part you should not notice the difference, there are some situations where you might, e.g. if the input line is "","","" if you do line.getFullLine() you get back "","","" while with the new CsvLine you get ,,. If you want to use the "old" lines, you can:
  • New CobolIoBuilder classes have been introduced (JRecord_Basics.htmlBasic IoBuilder Introduction and examples). These should make it easier read and write cobol data files.
  • There are new Csv options for Csv files with embedded carriage-return (n) characters:
  • By default, JRecord will still use the cb2xml.properties file; but you can specify Cobol columns via CommonBits or specifying the columns when converting the cobol copybook.
  • The GetUnique*Field methods and getFields methods have been replaced by new getGroupField and getGroup

New in JRecord 0.80.7 Beta (Nov 19, 2014)

  • New method of defining File-Schemas in Java code.
  • New ways of getting IO-Readers / Writers
  • Several fixes to the Parameter parsing in Cobol2Csv & Csv2Cobol programs
  • Cobol2Csv & Csv2Cobol programs now accept Xml-Schemas
  • New CsvLine class
  • New Cobol2Cobol utility for copying from one fixed-width file to another.
  • More Example programs
  • Updated Documentation

New in JRecord 0.80.6 (Oct 28, 2014)

  • This is a cleanup release after 0.80.5 (which was rushed out). Most of the changes are Minor
  • Changes:
  • Postive Comp-3 numbers now use the no-sign nyble instead of the positive nyble value.
  • Added Fixed-Width-Char line support (Constants.IO_FIXED_LENGTH_CHAR)
  • Resolved some differences between the processing of Xml-Schemas in JRecord versus RecordEditor
  • New Example programs for:
  • Cobol2Csv and Csv2Cobol example programs
  • Processing Multi-Record files
  • Handling duplicate field names
  • Manipulating schema's
  • New Cobol2Csv and Csv2Cobol example programs:
  • Extra documentation

New in JRecord 0.80.5 (Aug 25, 2014)

  • Zoned-Decimal in Ebcdic-German + several other European language versions of Ebcdic
  • Several fix's for Fixed Width 16 bit charsets (e.g. UTF-16 etc)
  • Fix's / enhancements for Unicode Csv files

New in JRecord 0.80.4 (Jul 29, 2014)

  • Adding an new Null-Constant ~ CommonBits.NULL_VALUE
  • When used, the default value ("" for String, 0 for numerics) is assigned to the field, see XmplLineIOF.java
  • salesRecord.getFieldValue("KEYCODE-NO").set(CommonBits.NULL_VALUE);
  • salesRecord.getFieldValue("DATE").set(CommonBits.NULL_VALUE);
  • Fix's RecordEditor-Xml import/export for System-Name and eol-type.

New in JRecord 0.80.3 (Jul 1, 2014)

  • Adding Syncronize to the Cobol-Copybook reader to make it Trhead safe.

New in JRecord 0.80.2 (Jul 1, 2014)

  • Adding getUniqueField & getUniqueFieldGroupsInSequence which retrieve field-definitions using both the field name and one or more group levels

New in JRecord 0.80.1 (Oct 29, 2013)

  • Adding ~1, ~2, ~3 etc to duplicate field-names

New in JRecord 0.80 (Jul 15, 2013)

  • Fixed several problems like supporting Cobol fields starting with numeric values, no field name on redefines etc.
  • Fixed issue when field-name is blank on Redefines.
  • Fields with no Field-Name are treated as Filler's.
  • JRecord will not allow you to assign a negative number when field is defined as positive in Cobol.
  • New positive Zoned decimal and Packed-Decimal types.
  • Two new Cobol Dialects (Convert.FMT_MAINFRAME_COMMA_DECIMAL and Convert.FMT_FUJITSU_COMMA_DECIMAL) for when a comma is used for the decimal point (note: no comma character is supported).
  • The Cobol Copybook loader now accepts a stream for the input file.
  • AbstractLine's (Line) now has a method getFieldIterator(String/Integer) that will return a Field-Value Iterator / Iterable class.
  • Views are now displayed as separate tabs on the one screen rather than on a screen by them selves.
  • New "Child Screens" available on list screens. Child screens show the currently selected record.
  • Scripting (Macro's) added (via JSR 233). You can now run Macro's (Jython etc) on your Cobol Data files in the editor.
  • New Script Editor added (via rsyntaxtextarea package).
  • New "Text" view (Text files only). This view display the file in a normal Text-editor mode instead of in tables.
  • Finally fixed some of the issues with the copy-Utility (probably more though)
  • Added code to Detect the "Copybook-Type" so you should not need to set the copybook type now

New in JRecord 0.68.2 (Apr 24, 2012)

  • Many classes have moved package's. Classes have not changed names, just location.
  • Reason: The RecordEditor has its own version of JRecord (JRecordRE). I have created
  • a JRecord_Common which contains classes common to the 2 versions of JRecord
  • Advantages:
  • Improved testing, anything in JRecord_Common will be heavily tested as part of
  • RecordEditor Testing
  • Reduced maintenace (for me)
  • Extra functionality
  • Disadvantages:
  • Old source code will need to be updated for the new library.

New in JRecord 0.68.1c (Mar 21, 2011)

  • Support for multiple Record Selection fields in package + Wizard / Edit
  • Improved Binary Field Search in the Wizard
  • Improved Save/As Export function in the editor.
  • Updated Options dialog

New in JRecord 0.68.1b (Sep 8, 2010)

  • Extra CSV style's added (User request)
  • Changes to the layout-wizard for the new styles
  • CSV & Copy utility fixes
  • Added optional Error-File and error-limits to the online / batch copy utilities
  • Added new -il/-ol (input/output layout) and -ef (error file) options to the batch utility

New in JRecord 0.68.1a (Jul 7, 2010)

  • Bug fix for Layout Wizard