Joined: 26 Jul 2006 Posts: 30 Location: Des Moines, Iowa
We currently use FileAID on the mainframe to compare files and generate delta files that we then process to create delimited files that are downloaded to the LAN and loaded to our data warehouse. FileAID does the job well for us.
The complication comes when we try to do development on our workstations using Mainframe Express. Micro Focus doesn't provide a packaged application to replace FileAID.
If I would appreciate if any of you could put on your thinking caps about what I could do on the LAN to give me the FileAID capabilities.
Joined: 26 Jul 2006 Posts: 30 Location: Des Moines, Iowa
Thanks for the possibility!
In my conversations with Compuware, I've been told that the PC version of FileAID won't handle comparisons with EBCDIC or binary files. We download the files, or create files within the Mainframe Express environment and the files are created in EBCDIC.
Right now, I'm testing the remote job execution enhancement for Micro Focus Mainframe Express. THis should allow me to add a tag in the JCL and execute the job step on the mainframe.
So far, I've found a limitation where the mainframe step can't look at tape-based files, which is caused by the Mainframe Access server program. I'll post more as my experiment proceeds.
Joined: 26 Jul 2006 Posts: 30 Location: Des Moines, Iowa
• Created June 4, 2007 – DSA
• Updated (with Aliasing) March 20, 2008 - DSA
Chapter x: Remote Job Step Execution (RJSE)
This chapter describes the Mainframe Express (MFE) Remote Job Step Execution (RJSE) facility.
x.1 Introduction
MFE provides a facility, called Remote Job Step Execution (RJSE), for allowing execution of one or more steps of a job on a remote z/OS host. The system automatically takes care of uploading and downloading needed files with the end result being the same as if all steps were executed locally.
x.2 Why/when would you use it
You would execute a job step remotely if it cannot be executed successfully locally because of lack of availability of resources required by the step. The resources my be software, hardware, or data and may include any/all of
• Program(s) being executed. It may that the program(s) being executed is not available locally or is available but does not provide the function required or perhaps you do not wish to purchase such a program or perhaps it needs to be run in a more secure location.
• Special subsystems and/or proprietary packages are being used.
• Devices being used are not available locally. Perhaps you are printing something that must be printed on certain device or in a more secure location.
• Data being accessed is too large to move or is accessed heavily. Perhaps the data being accessed is stored in some proprietary format (e.g. HISAM database) or on a special device.
x.3 Using RJSE
In order to use RJSE, you must, at a minmum:
• Enable DataConnect for the MFE project (Click Project > Project Settings > Catalog tab and then enable DataConnect). You must also configure server access appropriately (Click Options > Server Access Configuration).
• Enable RJSE by setting this environment variable:
SET MF_RCCF=[ DELETEJOB | KEEPJOB ]
DELETEJOB will keep the host job logs and all of the sysouts if all of the sysouts have not been downloaded.
KEEPJOB will always keep the host job logs and all sysouts regardless of sysout downloads.
You can set this environment variable
• in an MFE command window and then invoke MFE
• or set it system-wide by going to control panel > system > advanced > Environment variables.
• Either
Designate job step(s) that will be executed on the host. You can only designate job step(s) that are executing a program (i.e. PGM= not PROC=). Use the following host-compatible JCL extension to do this:
//SOMESTEP EXEC PGM=SOMEPGM,PARM=’SOMEPARM’
//*MFE: %TYPEXEC=HOST
• Or
Define an alias of MFJRJSE for programs that are destined for execution on the host. Go to Project > Project Settings > Aliases tab to do this. This action will cause all programs with the aliased name(s) within any job to be executed on the host.
x.4 Datasets
Datasets used by the host destined step my reside on the host or locally on the PC. The system will automatically upload and/or download needed datasets. There will be times when you are more knowledgeable about what the step is doing, which datasets it is accessing as read-only and which datasets it may be writing or modifying. In those situations you can use the following JCL extensions to override system defaults.
• %UPLOAD=[ YES | NO | AUTO ]
%UPLOAD specifies whether or not the dataset referenced by the DD should be uploaded. AUTO indicates that the system will make the determination and do the right thing
• %DOWNLOAD=[ YES | NO | AUTO ]
%DOWNLOAD specifies whether or not the dataset referenced by the DD should be downloaded. AUTO indicates that the system will make the determination and do the right thing
• %PDSMEM=[ ALL | ONLY ]
%PDSMEM specifies whether the entire PDS or only the specified member of the dataset referenced by the DD should be uploaded/downloaded as controlled by the %UPLOAD and %DOWNLOAD options. The option is ignored if the dataset is not a PDS.
The system issues messages indicating actions it took to create, upload, download, and delete datasets. You can use to messages to fine-tune these activities.
x.4.1 Special DDs
By default, datasets associated with the following DD statements are not uploaded or downloaded.
• SYSUDUMP
• SYSABEND
• SYSMDUMP
• CEEDUMP
• PLIDUMP
• PL1DUMP
• SYSCHK
• SYSCKEOV
• SORTLIB
• JOBLIB
• STEPLIB
• JOBCAT
• STEPCAT
If you wish to do otherwise, you should code %UPLOAD and/or %DOWNLOAD keywords as appropriate.
x.4.2 RECFM=LSEQ
By default, RECFM=LSEQ datasets, when uploaded to the host, are uploaded as RECFM=FB datasets. If you wish to have them uploaded with RECFM other then FB, you should specify this by using the JCL extension keyword:
• %LSEQRECF=[ V | VB | F | FB ]
%LSEQRECF specifies that when this dataset is uploaded, it must be uploaded with this RECFM on the host.
You should ensure that the local LSEQ dataset has its LRECL set to a valid value other than 0. If its LRECL is 0, the system will assume host dataset LRECL of 80 (for F and FB) or 255 (for V and VB) and issue a warning message. Because this assumption may lead to other failures downstream, you are strongly advised to set local LRECL to a correct value.
x.4.3 Host Step Execution Audit Trail
For every step that is executed on the host, the system
• Issues messages indicating actions it took to create, upload, download, and delete datasets.
• Extracts select information from the host job log and inserts it into the local joblog for the host executed step.
• And it downloads the host job log and spools into in the local spool view under the DD name of %ZJOBLOG.
x.4.4 Error Messages
In rare cases, you may get unexpected error messages of the form:
JCLCM0118E Unexpected error from function RJSECA-FC-function-name RC=nnnnnnnn RS=nnnnnnnn.
JCLCM0119E Previous JCLCM0118E message is for DD/DSN ddname / datasetname.
If you get these messages you should report the problem to Micro Focus.
(Jean, I don’t know of we want to document these return/reason codes or not. Dave may have sent you the list. If not I can do that.)
Joined: 07 Jun 2005 Posts: 70 Location: South Africa
Hello David
We also use MFEEE extensively in our shop. The tool we rely on to do file comparisons is called BeyondCompare from scootersoftware.com. Very nice intuitive tool and I haven't yet happen upon a file type it couldn't compare.