Data File Comparison
 A Self-Study or Classroom Session
http://www.simotime.com
When technology complements business    Copyright © 1987-2010  SimoTime Enterprises  All Rights Reserved
  Table of Contents Version 09.05.17 
  Introduction
  Objective of Session
 
  Proof of Concept, Data File Conversion
  Requirements
  Materials Provided
  Criteria for Success
  What to do and How to do it
  Additional Information
 
  Numeric Fields, BINARY or COMP Format
  Numeric Fields, Packed-Decimal or COMP-3 Format
  Numeric Fields, Zone Decimal Format
  Summary
 
  Software Agreement and Disclaimer
  Downloads and Links to Similar Pages
  Glossary of Terms
  Comments or Suggestions
  About SimoTime
 
 Quick Clicks 
SimoPATH Home Page
ASCII / EBCDIC Tables
File Status Codes
Glossary of Terms
Help Desk for SimoTime

Introduction
(Next) (Previous) (Table-of-Contents)

The session will describe how to compare two data files that reside on a Windows (or UNIX) platform using Micro Focus COBOL and Micro Focus file formats. An exercise in the form of a sample Proof-of-Concept (POC) is provided that will use SimoTime technologies to generate the COBOL source code that may be compiled and executed using Micro Focus COBOL. Since the generated COBOL source code is COBOL/2 compliant it may be compiled and executed on a mainframe (either z/OS or VSE) to compare VSAM or QSAM files. For this exercise only the Windows operating system with Micro Focus COBOL will be used.

To perform this exercise requires a basic knowledge of the Windows environment and Micro Focus Net Express. Additional help is provided for individuals that may not be proficient in the use of Net Express or have forgotten how to perform a particular function.

Note: This module is part of The SimoPATH Series of training and reference materials. For more information refer to  The Home Page for The SimoPATH Series .

Objective of Session
(Next) (Previous) (Table-of-Contents)

The objective of this sample Proof-of-Concept POC is to define a practical process for comparing two data files on a Windows platform using Micro Focus Net Express. The following is a list of the minimum tasks to be completed for this Proof of Concept.

1. Do a record level compare of a sequential file that has been downloaded from a mainframe and converted from an EBCDIC-encoded format to an ASCII encoded format with a Micro Focus ASCII-encoded indexed file.
2. Explain what happens when a difference occurs.
3. Must be able to run the comparison process on a Mainframe, Windows or UNIX platform.
4. Document the Hardware and Software that is required to perform the Data File comparison process on a Windows platform.
5. Explain what happens with deleted or inserted records.

Requirements
(Next) (Previous) (Table-of-Contents)

If this session is being performed through self-study then it will be necessary to install the following software on a Windows system. Windows/XP or Windows Server is preferred.

1. Either Micro Focus Net Express or Micro Focus Mainframe Express must be installed. Refer to the Micro Focus documentation for more information about these technologies. Both of these technologies are usually pre-installed for the classroom environment.
2. The SimoZAPS with SimoREC1 software that is available from SimoTime must be installed and configured. Both of these technologies are usually pre-installed for the classroom environment.
3. The DataMig1 directory that is available from SimoTime must be installed with the minimum data file and COBOL copy file. This directory is usually pre-installed for the classroom environment.

Materials Provided
(Next) (Previous) (Table-of-Contents)

For the classroom environment two directories (c:\DataMig1 and c:\SimoLIBR) are provided that contain the following information.

1. The c:\DataMig1\Expect\ItemFTP1.DAT is a test copy of an ASCII encoded Item Master File that includes PACKED and BINARY data. This file was transferred from the mainframe as a flat sequential file.
2. The c:\DataMig1\Actual\ItemASC1.DAT is a test copy of an ASCII encoded Item Master File that includes PACKED and BINARY data. This file was processed using Micro Focus COBOL on a Windows platform and is a Micro Focus indexed file.
2. The c:\DataMig1\STR\ItemMast.STR is a structure file used by the Micro Focus Data File Editor to display records in a formatted output based on a copy file.
3. The c:\DataMig1\CobCpy1\ItemCB01.CPY is the copy file for the item master file. This directory also contains CUSTCB01.CPY that is the copy file for the customer master file. The copy files are used to create the HTML documentation. They are not used to do the data file compare.
4. The c:\SimoLIBR directory contains the SimoTime utility programs and additional copy files used to generate the conversion programs.

Criteria for Success
(Next) (Previous) (Table-of-Contents)

The following items must be completed to meet the minimum requirements for successfully completing the proof of concept.

1. Provide a data file comparison process that may be executed on an IBM Mainframe, a Windows platform or a UNIX platform.
2. A copy of the output describing the differences in the two files.
3. A demonstration on a Windows platform that executes the data file comparison process and shows the correct data structure for the ASCII encoded Item Master File.
4. Provide HTML documentation for the record layout in order to relate the "position in record" of a difference with an actual field name based on a COBOL copy file.

What to do and How to do it
(Next) (Previous) (Table-of-Contents)

The objective of this project is to experience first-hand the issues that will be encountered and the solutions required when doing data file comparisons on a Windows platform. Because most mainframe files contain a mixture of alpha-numeric fields (i.e. "USAGE IS DISPLAY" in COBOL terminology) and numeric fields that may be packed (COMP-3) or binary (COMP) the data file comparison process will need to handle this format and properly display differences in a format that is easily understood by human beings.

For this project two directories will be used. The first directory (c:\SimoLIBR) contains the utility programs and copy files needed to generate the COBOL data file comparison program. The c:\SimoLIBR directory will need to be included in the PATH environment variable. The second directory (c:\DataMig1) contains the modules and data files specific to this learning session.

The following is a series of tasks that must be accomplished to successfully complete this learning session

Task Description
1. Generate the COBOL source member for a Data File Comparison program.
Note: Refer to the document for Data File Compare, Generate Source Code for additional help.
Note: If this procedure does not run correctly the problem is usually with the c:\SimoLIBR directory. Either the SimoZAPS or SimoREC1 utility programs were not installed correctly or the c:\SimoLIBR directory is not in the PATH.
2. Create HTML Documentation based on a COBOL copy. This documentation will be used as reference material when a difference occurs during the compare process. This documentation is generated based on the information (or record layout) as defined in a COBOL copy file.
Note: Refer to the Creating HTML Documentation for additional information.
3. Verify that a COBOL source member was created (ItCompC1.CBL) and placed in the c:\DataMig1\COBOL directory.
Verify that an HTML document was created (itemcb01.htm) and placed in the c:\DataMig1\HTML directory.
Note: Refer to the document for Data File Compare, View Source Code for additional help.
Note: If step 1 is successful then the COBOL source member should be automatically displayed with NotePAD. You may view the source code and then close the NotePAD windows. Do not change the source code.
4. Compile the generated COBOL source member as a DLL using the command line interface for Micro Focus Net Express.
Note: Refer to the Net Express Command Line Interface document for additional information about compiling a COBOL source member and creating a DLL member.
5. Execute the data file compare program and examine the differences.
Note: For help in executing the program refer to the Execute the Data File Compare Program and Examine the Differences document for additional information. This document also describes how to map data file names.

Additional Information
(Next) (Previous) (Table-of-Contents)

This section provides additional information or insight into some of the tasks performed by this exercise. There are numerous things to consider when comparing data files. The comparison task is easy, in today's environment with possible ASCII or EBCDIC encoded files along with packed or binary numeric fields within a record it becomes a challenge as to how to properly display and interpret this information when a difference occurs.

Numeric Fields, BINARY or COMP Format
(Next) (Previous) (Table-of-Contents)

This link provides additional information about Binary or COMP (i.e. COMPUTATIONAL) fields. The Binary or COMP Format, Description and Discussion document provides additional information for converting this type of field or data string.

Numeric Fields, Packed-Decimal or COMP-3 Format
(Next) (Previous) (Table-of-Contents)

This link provides additional information about Packed Decimal or COMP-3 (i.e. COMPUTATIONAL-3) fields. The Packed-Decimal or COMP-3 Format, Description and Discussion document provides additional information about this type of field or data string.

Numeric Fields, Zone Decimal Format
(Next) (Previous) (Table-of-Contents)

This link provides additional information about Zone Decimal fields. The unsigned, zone decimal fields are text fields and are assumed to be a simple, no risk conversion. However, it is best to treat unsigned fields as signed since it is possible for a signed zone value to end up in an unsigned field and as long as it is a positive value the mainframe will process the field.

Signed fields that are in a zone decimal format need special handling and should not be handled as text data. The Zoned Decimal Format, Description and Discussion document provides additional information for converting this type of field or data string.

Summary
(Next) (Previous) (Table-of-Contents)

The purpose of this session is to describe the techniques and effort involved to compare two data file on a Windows platform using Micro Focus COBOL and Micro Focus formatted files. This session is available as an on site class or an on line, self-study course.

Software Agreement and Disclaimer
(Next) (Previous) (Table-of-Contents)

Permission to use, copy, modify and distribute this software, documentation or training material for any purpose requires a fee to be paid to SimoTime Enterprises. Once the fee is received by SimoTime the latest version of the software, documentation or training material will be delivered and a license will be granted for use within an enterprise, provided the SimoTime copyright notice appear on all copies of the software. The SimoTime name or Logo may not be used in any advertising or publicity pertaining to the use of the software without the written permission of SimoTime Enterprises.

SimoTime Enterprises makes no warranty or representations about the suitability of the software, documentation or learning material for any purpose. It is provided "AS IS" without any express or implied warranty, including the implied warranties of merchantability, fitness for a particular purpose and non-infringement. SimoTime Enterprises shall not be liable for any direct, indirect, special or consequential damages resulting from the loss of use, data or projects, whether in an action of contract or tort, arising out of or in connection with the use or performance of this software, documentation or training material.

Downloads and Links to Similar Pages
(Next) (Previous) (Table-of-Contents)

The Home Page for The SimoPATH Series  is the starting point to view information about training sessions and learning materials available from SimoTime Enterprises.

The SimoZAPS Utility Program has the capability of generating the COBOL source code for programs that will do file conversion or file comparison of sequential and VSAM (KSDS) files. The file conversion function will do a file format (i.e. sequential to indexed) or file content (EBCDIC and ASCII) conversion. SimoZAPS can also read a sequential file in EBCDIC format and create an ASCII/CRLF file or VSAM KSDS file in ASCII format. The conversion tables may be viewed or modified to meet unique requirements. The file comparison function will allow the user to specify the positions within a record to compare and has the ability to track inserted and deleted records for file that are sequenced by a key field. The Hexcess/2 function provides the capability of viewing, finding or patching the contents of a file in hexadecimal.

The SimoREC1 Utility Program has the capability of generating a callable COBOL program that will do the conversion of a data string between EBCDIC and ASCII. The generated COBOL source code or the conversion tables may be viewed or modified to meet unique requirements. The generated program may be called by an I/O program generated by SimoZAPS.

This item will provide a link to  an ASCII or EBCDIC translation table. A column for decimal, hexadecimal and binary is also included.

This document provides a quick summary of the  File Status Key  for VSAM data sets and QSAM files.

Signed fields that are in a zone decimal format need special handling and should not be handled as text data. The Zoned Decimal Format, Description and Discussion document provides additional information for converting this type of numeric field or data string.

This link provides additional information about Packed Decimal or COMP-3 (i.e. COMPUTATIONAL-3) fields. The Packed-Decimal or COMP-3 Format, Description and Discussion document provides additional information about this type of numeric field or data string.

This link provides additional information about Binary or COMP (i.e. COMPUTATIONAL) fields. The Binary or COMP Format, Description and Discussion document provides additional information for this type of numeric field or data string.

Check out  The VSAM - QSAM Connection  for more examples of mainframe VSAM and QSAM accessing techniques and sample code.

The hexadecimal dump of the parameter-buffer uses the same technique as describe in another SimoTime example that describes the dumping of a data string using COBOL. The name of the member that does the actual hexadecimal dump is called SimoDUMP. A copy file (PASSDUMP.CPY) is provided for defining the pass area.

You may view the complete list of examples at http://www.simotime.com/sim4dzip.htm and many are available as a SimoTime Z-Pack (a zip file package with sample source code, data and documentation).

Note: You must be attached to the Internet to download a Z-Pack or view the list.

Glossary of Terms
(Next) (Previous) (Table-of-Contents)

Check out  The SimoTime Glossary  for a list of terms and definitions used in the documents provided by SimoTime.

Comments or Suggestions
(Next) (Previous) (Table-of-Contents)

If you have any questions, suggestions or comments please call or send an e-mail to: helpdesk@simotime.com

We appreciate your comments and feedback.

About SimoTime Enterprises
(Next) (Previous) (Table-of-Contents)

Founded in 1987, SimoTime Enterprises is a privately owned company. We specialize in the creation and deployment of business applications using new or existing technologies and services. We have a team of individuals that understand the broad range of technologies being used in today's environments. This includes the smallest thin client using the Internet and the very large mainframe systems. There is more to making the Internet work for your company's business than just having a nice looking WEB site. It is about combining the latest technologies and existing technologies with practical business experience. It's about the business of doing business and looking good in the process. Quite often, to reach larger markets or provide a higher level of service to existing customers it requires the newer Internet technologies to work in a complementary manner with existing corporate mainframe systems. Whether you want to use the Internet to expand into new market segments or as a delivery vehicle for existing business functions simply give us a call or check the web site at http://www.simotime.com


Return-to-Top
Copyright © 1987-2010 SimoTime Enterprises  All Rights Reserved
When technology complements business
http://www.simotime.com
Version 06.01.06