Subscribe
THE DAILY DIGEST

The daily edition.

Essential reading from Rocket Enterprise. Straight to the source.

Archived edition
DAILY EDITION1 story· 3 min read

MFFTP separates record formatting, character conversion, and catalog charset

MFFTP is more than a wrapper around the operating system’s FTP client. It translates mainframe dataset names into distributed filesystem names, interacts with the Enterprise Server catalog, can reformat line-sequential data into fixed- or variable-length records, and can perform character-set conversion. These are distinct stages, which matters when diagnosing a migrated file that is cataloged correctly but contains incorrectly encoded or structured data. Basic Operation

IN FOCUS

MFFTP separates record formatting, character conversion, and catalog charset

MFFTP is more than a wrapper around the operating system’s FTP client. It translates mainframe dataset names into distributed filesystem names, interacts with the Enterprise Server catalog, can reformat line-sequential data into fixed- or variable-length records, and can perform character-set conversion. These are distinct stages, which matters when diagnosing a migrated file that is cataloged correctly but contains incorrectly encoded or structured data. Basic Operation [1]

Read the full briefing

Scope: Rocket Enterprise Developer 12.0 for Eclipse on Linux/UNIX; Enterprise Server MFFTP.

MFFTP is more than a wrapper around the operating system’s FTP client. It translates mainframe dataset names into distributed filesystem names, interacts with the Enterprise Server catalog, can reformat line-sequential data into fixed- or variable-length records, and can perform character-set conversion. These are distinct stages, which matters when diagnosing a migrated file that is cataloged correctly but contains incorrectly encoded or structured data. Basic Operation

Character conversion is explicitly selected through a conversion module. For example:

EXIT TRAN ASC2EBC

The module name describes the transformation for a PUT: ASC2EBC converts local ASCII data to EBCDIC before sending it. On a GET, the same module applies the reverse direction, converting received EBCDIC data to local ASCII. Conversely, EBC2ASC performs EBCDIC-to-ASCII on PUT and ASCII-to-EBCDIC on GET. The conversion can also be selected through LOCSITE, for example:

LOCSITE ENCODING=SBCS
LOCSITE SBDATACONN=ASC2EBC

Rocket also supports user-written conversion modules for mappings not covered by the built-ins. The supplied MYE2A example demonstrates a custom table generated with Codecomp, but Rocket explicitly warns that this sample must not be treated as a general-purpose EBCDIC-to-ASCII converter. Using Data Conversion Modules with MFFTP

MFFTP_CATALOG_CHARSET controls something different: the character-set attribute assigned when MFFTP catalogs a new dataset. By default, the new dataset receives the server’s character set. The variable can override that value with ASCII or EBCDIC aliases such as ASCII, ASC, EBCDIC, or EBC. If the requested value differs from the server character set, MFFTP issues a warning. The documentation describes this separately from the conversion module, so a catalog override should not be assumed to transform the transferred bytes. MFFTP Control Variables

There is also a useful safety mechanism. When TRAN requests code-page translation, MFFTP normally tests a simulated 256-byte round trip—PUT transformation followed by GET transformation—and warns if the result differs from the original bytes. MFFTP_TRANSLATE_SAFETY=OFF suppresses those warnings, but Rocket says to use that setting cautiously. MFFTP Control Variables

Takeaway: Validate three independent properties during transfer: record format, byte conversion, and catalog charset. Correct catalog metadata does not by itself prove that the file’s contents were converted correctly.

Enterprise Developer / Enterprise Server · 12.0 · Linux/UNIX
Documentation references
That’s the briefing.You’ve reached the end of this edition.
More editions

From the archive

View all
Oct 18

XA reconnection and XA transaction recovery solve different problems

Oct 17

Exporting live CAS health metrics with OpenTelemetry

Oct 16

ESF auditing is a delivery pipeline, not just an ESCWA checkbox