The FLUC subprogram uses the element interface for original data in order to convert over and back between their different representations on different platforms and in different countries. For that purpose there are several methods for reading original data, convert and save them, adapting them in turn to different platforms (records vs. delimiters) and to regional differencies (character sets) so they remain legible. FLUC-UP is a platform-independent load module which is linked with applications like, for example, the FLUC-UtilityFLCL CONV. It is, therefore, a subprogram providing the full functionality of FLUC in one function.
Supports all functions and interfaces of the FLUC utility for processing files, data streams, and other data sources
Executes all write and read accesses to original files under its own control
Optional generation of a detailed processing and error log
Can be linked to applications written in any programming language including JAVA (JNI)
Available both as statically bound object code and as a dynamic library
Modular architecture be means of which for both reading and writing a respective I/O method, up to 32 conversions, and a formatting method can be selected and provided with specific parameters
The load module are controled over one string parameter known from the command line interface
Detailed statistical figures, an error trace, and various logs are produced (e.g. with character conversion)
Beside return codes, a processing log can be provided as feedback showing processing results
Available as 31/32-bit-code or as 64-bit-code
Since the entire FLUC consists of just one function that accepts 3 parameter strings (command line, filename for output (optional), file name for trace (optional)) integration into an application is very simple
The mainframe COBOL example below reads a file (DD:INPUT) record-by-record and writes it in CP1252 and with 0x0D0A as delimiter to a GZIP file for Windows (DD:OUTPUT). The example program uses DD names INPUT and OUTPUT and contains the corresponding conversion parameters in hardcoded form. The result is a simple batch utility to convert each kind of text file on z/OS (FB/VB/VSAM) to an GZIP file for Windows. (Padding characters of FB files are suppressed (SUPPAD))
Due to autodetection, the next COBOL example reads normal record-oriented files (PS(FB/VB), PDS/E(FB/VB), VSAM, ...), binary files, record- or text-oriented USS files, binary transfered text and XML files from other platforms, binary transfered GZIP, BZIP2 or XZ files containing binary, text or XML data, FLAMFILEs (undefined, stream or record oriented) and other format independent of the charset and writes the determined records to an output dataset in IBM1141.
And the last example is the JCL job to start the sample program (part of the software package) above.
This sample program works like our CLIST "FLVIEW" which is available as ISPF line command to browse each kind of file in ISPF 3.4.