Program Generation
Zoned Decimal, Packed and Binary
  Table of Contents  v-16.01.01 - numbnt07.htm 
  Introduction
  Document Organization
  File Conversion
  CSV Text to Fixed-Field-Length
  Process Control File for Binary Signed
  Process Control File for Binary Unsigned
  Process Control File for Packed Signed
  Process Control File for Packed Unsigned
  Process Control File for Zoned Signed
  Process Control File for Zoned Unsigned
  Accumulate Summary Totals
  Totals for Various Numeric Structures
  Process Control File for Binary Signed
  Process Control File for Binary Unsigned
  Process Control File for Packed Signed
  Process Control File for Packed Unsigned
  Process Control File for Zoned Signed
  Process Control File for Zoned Unsigned
  Technical Details
  Member Naming Conventions
  Record Structure Definitions
  Copy File for Binary Signed
  Copy File for Binary Unsigned
  Copy File for Packed-Decimal Signed
  Copy File for Packed-Decimal Unsigned
  Copy File for Zoned-Decimal Signed
  Copy File for Zoned-Decimal Unsigned
  Ancillary Functionality
  Set the Environment
  Display and Log Messages
  Summary
  Software Agreement and Disclaimer
  Downloads and Links
  Current Server or Internet Access
  Internet Access Required
  Glossary of Terms
  Comments, Suggestions or Feedback
  Company Overview
The SimoTime Home Page 

Table of Contents Previous Section Next Section Introduction

This suite of programs will describe and demonstrate how to generate programs that will convert between various formats such as Packed Decimal, Binary and Zoned Decimal and accumulate summary totals to ensure numeric integrity is maintained.


We have made a significant effort to ensure the documents and software technologies are correct and accurate. We reserve the right to make changes without notice at any time. The function delivered in this version is based upon the enhancement requests from a specific group of users. The intent is to provide changes as the need arises and in a timeframe that is dependent upon the availability of resources.

Copyright © 1987-2022
SimoTime Technologies and Services
All Rights Reserved

Table of Contents Previous Section Next Section Document Organization

This document is the 2nd document of a set of three (3) documents and describes how the programs that do the data conversions and accumulate summary totals are generated. The following provides the links to the primary document for running the test programs and a document that describes how the test files are created.

The following link is for the 1st document in a set of three (3) documents and describes how to validate application behavior and data integrity during regression testing or user acceptance testing. Also, the technique of accumulating summary totals and record counts may be used to validate a complete and successful file transfer.

Link to Internet   Link to Server   Explore the numeric formats and conversion techniques for sharing numeric data between Mainframe Systems and Linux, UNIX or Windows Systems. A Mainframe System and the COBOL programming language supports a variety of different numeric formats that will be discussed in this document.

The following link is for the 3rd document in a set of three (3) documents and describes how the test files are created.

Link to Internet   Link to Server   Explore how to create test files that contain various numeric formats such as packed-decimal, binary and zoned-decimal.

Each of the numeric categories (or formats) presents its own set of possibilities and considerations. Hyperlinks to additional documents describing additional details about the various numeric formats may be found in the Downloads and Links to Similar Pages section of this document.

Table of Contents Previous Section Next Section File Conversion

The primary objective of this suite of programs is to read the test files and accumulate summary totals. In order to meet the primary objective it is necessary to create a set of user test files. We start this process by creating two Primary Test Files with a Comma-Separated-Values (CSV) record structure. The data strings within the records are all text characters and may be created, viewed or updated using a text editor of choice. One of the Primary Test Files will be used for signed number and the other will be used for unsigned numbers.

The Primary Test Files are then read and converted to a Fixed-Field-Length (FFL) format using a BINARY, PACKED or ZONED-Decimal format.

The conversion programs are generated using input from a Process Control File (PCF) and a COBOL Copy File (CPY). The following link provides additional information about generating the conversion programs.

Link to Internet   Link to Server   Explore How to Generate a Data File Convert Program using simple specification statements in a Process Control File (PCF). This link to the User Guide includes the information necessary to create a Process Control File and generate the COBOL programs that will do the actual data file conversion. The User Guide contains a list of the PCF statements that are used for the data file convert process.

The Process Control Files are described in the following sub-sections of this document.

Table of Contents Previous Section Next Section CSV Text to Fixed-Field-Length

Generate the programs that will convert a sequential file with a Comma-Separated-Values (CSV) record structure to a file with a Fixed-Field-Length(FFL) record structure. The text fields will be populated with text information that describes the record content and numeric field formats. The text-formatted input numeric data will be converted to the numeric format defined in the user-specified COBOL Copy File.

Table of Contents Previous Section Next Section Process Control File for Binary Signed

The following PCF member (NUMMBS01.pcf) will be used to convert a sequential file with CSV Formatted record containing all text data to a sequential file that will contain text strings and numeric fields that use a SIGNED, BINARY (or "USAGE IS COMPUTATION") format with a Fixed-Field-Length (FFL).

***********************************************************************
*      NUMMBS01.PCF - a Process Control File for Numeric Fields       *
*   This Process Control File is provided by SimoTime Technologies    *
*             (C) Copyright 1987-2019 All Rights Reserved             *
*               Web Site URL:   http://www.simotime.com               *
*                     e-mail:   helpdesk@simotime.com                 *
***********************************************************************
* SYSUT1, Record Sequential file with CSV formatted records.          *
* SYSUT2, Record Sequential file with 80-byte FFL formatted records.  *
***********************************************************************
* This set of specification will generate a callable COBOL routine
* that will import data from an RSEQ file with a CSV Record structure.
* The new file will be an RSEQ file with a FFL record structure.
* Note: CSV is Comma Separated Value
*       FFL is Fixed Field Length
*
&SIMOPREP  call ..\..\ENV1BASE
&USERPREP  call USERCONV
&CONFORM   IBM
&COPYFILE  NUMTBSB1.CPY
&HTMLFILE  numtbsb1.htm
*HEAD34    ....:....1....:....2....:....3....
&HEAD34    RSEQ, CSV to FFL BINARY Signed
&PROGID    NUMMBSC1
&SYSUT1    org=Sequential recfm=FIXED    rlen=80
&SYSUT2    org=Sequential recfm=FIXED    rlen=80
*
&TRANSINIT SPACES
*
***********************************************************************
* The TRANSFILL function is performed before the write and
* after the call to the executable member defined by the
* IMPCALL function.
*
&TRANSFILL POS  1 LEN 8 'BINARY  '
&TRANSFILL POS 10 LEN 8 'SIGNED  '
&TRANSFILL POS 19 LEN 8 'LEADING '
&TRANSFILL POS 28 LEN 8 'AUTO    '
*
***********************************************************************
* The &IMP... statements define the following.
*     1. The name of the member to be generated.
*     2. The format for the data structures.
*     3. The name of the fields to be imported.
*
&IMPCALL   NUMMBSR1
&IMPREC    BS-RECORD
&IMPLREC   80
&IMPFMT    CSV ,
&IMPORT    BS-IDENTIFIER
&IMPORT    BS-SIGN-KEY
&IMPORT    BS-SIGN-POS
&IMPORT    BS-SIGN-EXT
&IMPORT    BS-72
&IMPORT    BS-23
&IMPORT    BS-52
&IMPORT    BS-60
&IMPORT    BS-20
*
&END

Table of Contents Previous Section Next Section Process Control File for Binary Unsigned

The following PCF member (NUMMBU01.pcf) will be used to convert a sequential file with CSV Formatted record containing all text data to a sequential file that will contain text strings and numeric fields that use a UNSIGNED, BINARY (or "USAGE IS COMPUTATION") format with a Fixed-Field-Length (FFL).

***********************************************************************
*      NUMMBU01.PCF - a Process Control File for Numeric Fields       *
*   This Process Control File is provided by SimoTime Technologies    *
*             (C) Copyright 1987-2019 All Rights Reserved             *
*               Web Site URL:   http://www.simotime.com               *
*                     e-mail:   helpdesk@simotime.com                 *
***********************************************************************
* SYSUT1, Record Sequential file with CSV formatted records.          *
* SYSUT2, Record Sequential file with 80-byte FFL formatted records.  *
***********************************************************************
* This set of specification will generate a callable COBOL routine
* that will import data from a LSEQ file with a CSV Record structure.
* The new file will be an RSEQ file with a FFL record structure.
* Note: CSV is Comma Separated Value
*       FFL is Fixed Field Length
*
&SIMOPREP  call ..\..\ENV1BASE
&USERPREP  call USERCONV
&CONFORM   IBM
&COPYFILE  NUMTBUB1.CPY
&HTMLFILE  numtbub1.htm
*HEAD34    ....:....1....:....2....:....3....
&HEAD34    RSEQ, CSV to FFL BINARY Unsigned
&PROGID    NUMMBUC1
&SYSUT1    org=Sequential recfm=FIXED    rlen=80
&SYSUT2    org=Sequential recfm=FIXED    rlen=80
*
&TRANSINIT SPACES
*
***********************************************************************
* The TRANSFILL function is performed before the write and
* after the call to the executable member defined by the
* IMPCALL function.
*
&TRANSFILL POS  1 LEN 8 'BINARY  '
&TRANSFILL POS 10 LEN 8 'UNSIGNED'
&TRANSFILL POS 19 LEN 8 'LEADING '
&TRANSFILL POS 28 LEN 8 'AUTO    '
*
***********************************************************************
* The &IMP... statements define the following.
*     1. The name of the member to be generated.
*     2. The format for the data structures.
*     3. The name of the fields to be imported.
*
&IMPCALL   NUMMBUR1
&IMPREC    BU-RECORD
&IMPLREC   80
&IMPFMT    CSV ,
&IMPORT    BU-IDENTIFIER
&IMPORT    BU-SIGN-KEY
&IMPORT    BU-SIGN-POS
&IMPORT    BU-SIGN-EXT
&IMPORT    BU-72
&IMPORT    BU-23
&IMPORT    BU-52
&IMPORT    BU-60
&IMPORT    BU-20
*
&END

Table of Contents Previous Section Next Section Process Control File for Packed Signed

The following PCF member (NUMMPS01.pcf) will be used to convert a sequential file with CSV Formatted record containing all text data to a sequential file that will contain text strings and numeric fields that use a SIGNED, PACKED-Decimal (or "USAGE IS COMPUTATION-3") format with a Fixed-Field-Length (FFL).

***********************************************************************
*      NUMMPS01.PCF - a Process Control File for Numeric Fields       *
*   This Process Control File is provided by SimoTime Technologies    *
*             (C) Copyright 1987-2019 All Rights Reserved             *
*               Web Site URL:   http://www.simotime.com               *
*                     e-mail:   helpdesk@simotime.com                 *
***********************************************************************
* SYSUT1, Record Sequential file with CSV formatted records.          *
* SYSUT2, Record Sequential file with 80-byte FFL formatted records.  *
***********************************************************************
* This set of specification will generate a callable COBOL routine
* that will import data from a LSEQ file with a CSV Record structure.
* The new file will be an RSEQ file with a FFL record structure.
* Note: CSV is Comma Separated Value
*       FFL is Fixed Field Length
*
&SIMOPREP  call ..\..\ENV1BASE
&USERPREP  call USERCONV
&CONFORM   IBM
&COPYFILE  NUMTPSB1.CPY
&HTMLFILE  numtpsb1.htm
*HEAD34    ....:....1....:....2....:....3....
&HEAD34    RSEQ, CSV to FFL PACKED Signed
&PROGID    NUMMPSC1
&SYSUT1    org=Sequential recfm=FIXED    rlen=80
&SYSUT2    org=Sequential recfm=FIXED    rlen=80
*
&TRANSINIT SPACES
*
***********************************************************************
* The TRANSFILL function is performed before the write and
* after the call to the executable member defined by the
* IMPCALL function.
*
&TRANSFILL POS  1 LEN 8 'PACKED  '
&TRANSFILL POS 10 LEN 8 'SIGNED  '
&TRANSFILL POS 19 LEN 8 'LEADING '
&TRANSFILL POS 28 LEN 8 'AUTO    '
*
***********************************************************************
* The &IMP... statements define the following.
*     1. The name of the member to be generated.
*     2. The format for the data structures.
*     3. The name of the fields to be imported.
*
&IMPCALL   NUMMPSR1
&IMPREC    PS-RECORD
&IMPLREC   80
&IMPFMT    CSV ,
&IMPORT    PS-IDENTIFIER
&IMPORT    PS-SIGN-KEY
&IMPORT    PS-SIGN-POS
&IMPORT    PS-SIGN-EXT
&IMPORT    PS-72
&IMPORT    PS-23
&IMPORT    PS-52
&IMPORT    PS-60
&IMPORT    PS-20
*
&END

Table of Contents Previous Section Next Section Process Control File for Packed Unsigned

The following PCF member (NUMMPU01.pcf) will be used to convert a sequential file with CSV Formatted record containing all text data to a sequential file that will contain text strings and numeric fields that use a UNSIGNED, PACKED-Decimal (or "USAGE IS COMPUTATION-3") format with a Fixed-Field-Length (FFL).

***********************************************************************
*      NUMMPU01.PCF - a Process Control File for Numeric Fields       *
*   This Process Control File is provided by SimoTime Technologies    *
*             (C) Copyright 1987-2019 All Rights Reserved             *
*               Web Site URL:   http://www.simotime.com               *
*                     e-mail:   helpdesk@simotime.com                 *
***********************************************************************
* SYSUT1, Record Sequential file with CSV formatted records.          *
* SYSUT2, Record Sequential file with 80-byte FFL formatted records.  *
***********************************************************************
* This set of specification will generate a callable COBOL routine
* that will import data from a LSEQ file with a CSV Record structure.
* The new file will be an RSEQ file with a FFL record structure.
* Note: CSV is Comma Separated Value
*       FFL is Fixed Field Length
*
&SIMOPREP  call ..\..\ENV1BASE
&USERPREP  call USERCONV
&CONFORM   IBM
&COPYFILE  NUMTPUB1.CPY
&HTMLFILE  numtpub1.htm
*HEAD34    ....:....1....:....2....:....3....
&HEAD34    RSEQ, CSV to FFL PACKED Unsigned
&PROGID    NUMMPUC1
&SYSUT1    org=Sequential recfm=FIXED    rlen=80
&SYSUT2    org=Sequential recfm=FIXED    rlen=80
*
&TRANSINIT SPACES
*
***********************************************************************
* The TRANSFILL function is performed before the write and
* after the call to the executable member defined by the
* IMPCALL function.
*
&TRANSFILL POS  1 LEN 8 'PACKED  '
&TRANSFILL POS 10 LEN 8 'UNSIGNED'
&TRANSFILL POS 19 LEN 8 'LEADING '
&TRANSFILL POS 28 LEN 8 'AUTO    '
*
***********************************************************************
* The &IMP... statements define the following.
*     1. The name of the member to be generated.
*     2. The format for the data structures.
*     3. The name of the fields to be imported.
*
&IMPCALL   NUMMPUR1
&IMPREC    PU-RECORD
&IMPLREC   80
&IMPFMT    CSV ,
&IMPORT    PU-IDENTIFIER
&IMPORT    PU-SIGN-KEY
&IMPORT    PU-SIGN-POS
&IMPORT    PU-SIGN-EXT
&IMPORT    PU-72
&IMPORT    PU-23
&IMPORT    PU-52
&IMPORT    PU-60
&IMPORT    PU-20
*
&END

Table of Contents Previous Section Next Section Process Control File for Zoned Signed

The following PCF member (NUMMZS01.pcf) will be used to convert a sequential file with CSV Formatted record containing all text data to a sequential file that will contain text strings and numeric fields that use a SIGNED, ZONED-Decimal (or "USAGE IS DISPLAY") format with a Fixed-Field-Length (FFL).

***********************************************************************
*      NUMMZS01.PCF - a Process Control File for Numeric Fields       *
*   This Process Control File is provided by SimoTime Technologies    *
*             (C) Copyright 1987-2019 All Rights Reserved             *
*               Web Site URL:   http://www.simotime.com               *
*                     e-mail:   helpdesk@simotime.com                 *
***********************************************************************
* SYSUT1 Sequential File with Variable-Length, CSV records format.    *
* SYSUT2 is a Record Sequential file, 80-byte fixed-length records.   *
***********************************************************************
* This set of specification will generate a callable COBOL routine
* that will import data from a LSEQ file with a CSV Record structure.
* The new file will be an RSEQ file with a FFL record structure.
* Note: CSV is Comma Separated Value
*       FFL is Fixed Field Length
*
&SIMOPREP  call ..\..\ENV1BASE
&USERPREP  call USERCONV
&CONFORM   IBM
&COPYFILE  NUMTZSB1.CPY
&HTMLFILE  numtzsb1.htm
*HEAD34    ....:....1....:....2....:....3....
&HEAD34    RSEQ, CSV to FFL ZONED Signed
&PROGID    NUMMZSC1
&SYSUT1    org=Sequential recfm=FIXED    rlen=80
&SYSUT2    org=Sequential recfm=FIXED    rlen=80
*
&TRANSINIT SPACES
*
***********************************************************************
* The TRANSFILL function is performed before the write and
* after the call to the executable member defined by the
* IMPCALL function.
*
&TRANSFILL POS  1 LEN 8 'ZONED   '
&TRANSFILL POS 10 LEN 8 'SIGNED  '
&TRANSFILL POS 19 LEN 8 'LEADING '
&TRANSFILL POS 28 LEN 8 'AUTO    '
*
***********************************************************************
* The &IMP... statements define the following.
*     1. The name of the member to be generated.
*     2. The format for the data structures.
*     3. The name of the fields to be imported.
*
&IMPCALL   NUMMZSR1
&IMPREC    ZS-RECORD
&IMPLREC   80
&IMPFMT    CSV ,
&IMPORT    ZS-IDENTIFIER
&IMPORT    ZS-SIGN-KEY
&IMPORT    ZS-SIGN-POS
&IMPORT    ZS-SIGN-EXT
&IMPORT    ZS-72
&IMPORT    ZS-23
&IMPORT    ZS-52
&IMPORT    ZS-60
&IMPORT    ZS-20
*
&END

Table of Contents Previous Section Next Section Process Control File for Zoned Unsigned

The following PCF member (NUMMZU01.pcf) will be used to convert a sequential file with CSV Formatted record containing all text data to a sequential file that will contain text strings and numeric fields that use a UNSIGNED, ZONED-Decimal (or "USAGE IS DISPLAY") format with a Fixed-Field-Length (FFL).

***********************************************************************
*      NUMMZU01.PCF - a Process Control File for Numeric Fields       *
*   This Process Control File is provided by SimoTime Technologies    *
*             (C) Copyright 1987-2019 All Rights Reserved             *
*               Web Site URL:   http://www.simotime.com               *
*                     e-mail:   helpdesk@simotime.com                 *
***********************************************************************
* SYSUT1, Record Sequential file with CSV formatted records.          *
* SYSUT2, Record Sequential file with 80-byte FFL formatted records.  *
***********************************************************************
* This set of specification will generate a callable COBOL routine
* that will import data from a LSEQ file with a CSV Record structure.
* The new file will be an RSEQ file with a FFL record structure.
* Note: CSV is Comma Separated Value
*       FFL is Fixed Field Length
*
&SIMOPREP  call ..\..\ENV1BASE
&USERPREP  call USERCONV
&CONFORM   IBM
&COPYFILE  NUMTZUB1.CPY
&HTMLFILE  numtzub1.htm
*HEAD34    ....:....1....:....2....:....3....
&HEAD34    RSEQ, CSV to FFL ZONED Unsigned
&PROGID    NUMMZUC1
&SYSUT1    org=Sequential recfm=FIXED    rlen=80
&SYSUT2    org=Sequential recfm=FIXED    rlen=80
*
&TRANSINIT SPACES
*
***********************************************************************
* The TRANSFILL function is performed before the write and
* after the call to the executable member defined by the
* IMPCALL function.
*
&TRANSFILL POS  1 LEN 8 'ZONED   '
&TRANSFILL POS 10 LEN 8 'UNSIGNED'
&TRANSFILL POS 19 LEN 8 'LEADING '
&TRANSFILL POS 28 LEN 8 'AUTO    '
*
***********************************************************************
* The &IMP... statements define the following.
*     1. The name of the member to be generated.
*     2. The format for the data structures.
*     3. The name of the fields to be imported.
*
&IMPCALL   NUMMZUR1
&IMPREC    ZU-RECORD
&IMPLREC   80
&IMPFMT    CSV ,
&IMPORT    ZU-IDENTIFIER
&IMPORT    ZU-SIGN-KEY
&IMPORT    ZU-SIGN-POS
&IMPORT    ZU-SIGN-EXT
&IMPORT    ZU-72
&IMPORT    ZU-23
&IMPORT    ZU-52
&IMPORT    ZU-60
&IMPORT    ZU-20
*
&END

Table of Contents Previous Section Next Section Accumulate Summary Totals

The primary objective of this suite of programs is to read the test files and accumulate summary totals. In order to meet the primary objective it is necessary to generate the programs that will read a file and accumulate the summary totals.

The conversion programs are generated using input from a Process Control File (PCF) and a COBOL Copy File (CPY). The following link provides additional information about generating the conversion programs.

Link to Internet   Link to Server   Explore How to Generate a Data File Compare, Validate or Hex-Dump Program using simple specification statements in a Process Control File (PCF). This link to the User Guide includes the information necessary to create a Process Control File and generate the COBOL programs that will do a data file compare, accumulate summary totals with a record count or produce a Hex-Dump of records in a VSAM, KSDS based on a list of user-defined keys. The User Guide contains a list of the PCF statements that are used for the data file compare, validate or dump process.

The Process Control Files are described in the following sub-sections of this document.

Table of Contents Previous Section Next Section Totals for Various Numeric Structures

Generate the programs that will that will read a file and accumulate summary totals using a variety of different numeric formats or structures (i.e. Binary, Packed or Zoned-Decimal). The numeric fields to be processed are user-selected based on their field names specified in a COBOL Copy File.

Table of Contents Previous Section Next Section Process Control File for Binary Signed

The following PCF member (NUMTBS01.pcf) will be used to generate the programs that will accumulate summary totals for a group of user-defined numeric fields that are stored in a SIGNED, BINARY format. The COBOL syntax would be PIC S9(9) USAGE IS COMPUTATIONAL.

***********************************************************************
*      NUMTBS01.PCF - a Process Control File for Numeric Totals       *
*   This Process Control File is provided by SimoTime Technologies    *
*             (C) Copyright 1987-2019 All Rights Reserved             *
*               Web Site URL:   http://www.simotime.com               *
*                     e-mail:   helpdesk@simotime.com                 *
***********************************************************************
* SYSUT1 is a sequential file with 80-byte, fixed-length records.     *
***********************************************************************
* This Process Control File will be used to generate a callable COBOL
* routine that will calculate summary totals for the specified field
* names as defined in a COBOL copy file.
*
* The input file (SYSUT1) is a Micro Focus Record Sequential file.
* The output will be written to SYSOUT.
*
* The following group of statements will define the high level
* functions and processes to be performed.
*
&SIMOPREP  call ..\Env1BASE
&USERPREP  call USERCOGI
&CONFORM   IBM
&COPYFILE  NUMTBSB1.CPY
&HTMLFILE  numtbsb1.htm
*
* The following group of statements will define the behavioral
* characteristics and environment variable for the file I/O Program
* to be generated.
*
*HEAD34    ....:....1....:....2....:....3....
&HEAD34    Signed Binary --- Calculate Totals
&PROGID    NUMTBSC1
&SYSUT1    org=Sequential recfm=FIXED    rmax=80
*
* The following group of statements will define the behavioral
* characteristics and environment variables for the numeric totals
* to be generated.
* The following defines the name of the callable routine for special
* numeric processing.
*
&NUMCALL   NUMTBSR1
&NUMREC    BS-RECORD
*
* The following group of statements will define the type of processing
* and the name of the numeric fields.
*
&UT1TOTAL  BS-72
&UT1TOTAL  BS-23
&UT1TOTAL  BS-52
&UT1TOTAL  BS-60
&UT1TOTAL  BS-20
*
&END

Table of Contents Previous Section Next Section Process Control File for Binary Unsigned

The following PCF member (NUMTBU01.pcf) will be used to generate the programs that will accumulate summary totals for a group of user-defined numeric fields that are stored in a UNSIGNED, BINARY format. The COBOL syntax would be PIC 9(9) USAGE IS COMPUTATIONAL.

***********************************************************************
*      NUMTBU01.PCF - a Process Control File for Numeric Totals       *
*   This Process Control File is provided by SimoTime Technologies    *
*             (C) Copyright 1987-2019 All Rights Reserved             *
*               Web Site URL:   http://www.simotime.com               *
*                     e-mail:   helpdesk@simotime.com                 *
***********************************************************************
* SYSUT1 is a sequential file with 80-byte, fixed-length records.     *
***********************************************************************
* This Process Control File will be used to generate a callable COBOL
* routine that will calculate summary totals for the specified field
* names as defined in a COBOL copy file.
*
* The input file (SYSUT1) is a Micro Focus Record Sequential file.
* The output will be written to SYSOUT.
*
* The following group of statements will define the high level
* functions and processes to be performed.
*
&SIMOPREP  call ..\Env1BASE
&USERPREP  call USERCOGI
&CONFORM   IBM
&COPYFILE  NUMTBUB1.CPY
&HTMLFILE  numtbub1.htm
*
* The following group of statements will define the behavioral
* characteristics and environment variable for the file I/O Program
* to be generated.
*
*HEAD34    ....:....1....:....2....:....3....
&HEAD34    UnSigned Binary - Calculate Totals
&PROGID    NUMTBUC1
&SYSUT1    org=Sequential recfm=FIXED    rmax=80
*
* The following group of statements will define the behavioral
* characteristics and environment variables for the numeric totals
* to be generated.
* The following defines the name of the callable routine for special
* numeric processing.
*
&NUMCALL   NUMTBUR1
&NUMREC    BU-RECORD
*
* The following group of statements will define the type of processing
* and the name of the numeric fields.
*
&UT1TOTAL  BU-72
&UT1TOTAL  BU-23
&UT1TOTAL  BU-52
&UT1TOTAL  BU-60
&UT1TOTAL  BU-20
*
&END

Table of Contents Previous Section Next Section Process Control File for Packed Signed

The following PCF member (NUMTPS01.pcf) will be used to generate the programs that will accumulate summary totals for a group of user-defined numeric fields that are stored in a SIGNED, PACKED-Decimal format. The COBOL syntax would be PIC S9(9) USAGE IS COMPUTATIONAL-3.

***********************************************************************
*      NUMTPS01.PCF - a Process Control File for Numeric Totals       *
*   This Process Control File is provided by SimoTime Technologies    *
*             (C) Copyright 1987-2019 All Rights Reserved             *
*               Web Site URL:   http://www.simotime.com               *
*                     e-mail:   helpdesk@simotime.com                 *
***********************************************************************
* SYSUT1 is a sequential file with 80-byte, fixed-length records.     *
***********************************************************************
* This Process Control File will be used to generate a callable COBOL
* routine that will calculate summary totals for the specified field
* names as defined in a COBOL copy file.
*
* The input file (SYSUT1) is a Micro Focus Record Sequential file.
* The output will be written to SYSOUT.
*
* The following group of statements will define the high level
* functions and processes to be performed.
*
&SIMOPREP  call ..\Env1BASE
&USERPREP  call USERCOGI
&CONFORM   IBM
&COPYFILE  NUMTPSB1.CPY
&HTMLFILE  numtpsb1.htm
*
* The following group of statements will define the behavioral
* characteristics and environment variable for the file I/O Program
* to be generated.
*
*HEAD34    ....:....1....:....2....:....3....
&HEAD34    Signed Packed --- Calculate Totals
&PROGID    NUMTPSC1
&SYSUT1    org=Sequential recfm=FIXED    rmax=80
*
* The following group of statements will define the behavioral
* characteristics and environment variables for the numeric totals
* to be generated.
* The following defines the name of the callable routine for special
* numeric processing.
*
&NUMCALL   NUMTPSR1
&NUMREC    PS-RECORD
*
* The following group of statements will define the type of processing
* and the name of the numeric fields.
*
&UT1TOTAL  PS-72
&UT1TOTAL  PS-23
&UT1TOTAL  PS-52
&UT1TOTAL  PS-60
&UT1TOTAL  PS-20
*
&END

Table of Contents Previous Section Next Section Process Control File for Packed Unsigned

The following PCF member (NUMTPU01.pcf) will be used to generate the programs that will accumulate summary totals for a group of user-defined numeric fields that are stored in a UNSIGNED, PACKED-Decimal format. The COBOL syntax would be PIC 9(9) USAGE IS COMPUTATIONAL-3.

***********************************************************************
*      NUMTPU01.PCF - a Process Control File for Numeric Totals       *
*   This Process Control File is provided by SimoTime Technologies    *
*             (C) Copyright 1987-2019 All Rights Reserved             *
*               Web Site URL:   http://www.simotime.com               *
*                     e-mail:   helpdesk@simotime.com                 *
***********************************************************************
* SYSUT1 is a sequential file with 80-byte, fixed-length records.     *
***********************************************************************
* This Process Control File will be used to generate a callable COBOL
* routine that will calculate summary totals for the specified field
* names as defined in a COBOL copy file.
*
* The input file (SYSUT1) is a Micro Focus Record Sequential file.
* The output will be written to SYSOUT.
*
* The following group of statements will define the high level
* functions and processes to be performed.
*
&SIMOPREP  call ..\Env1BASE
&USERPREP  call USERCOGI
&CONFORM   IBM
&COPYFILE  NUMTPUB1.CPY
&HTMLFILE  numtpub1.htm
*
* The following group of statements will define the behavioral
* characteristics and environment variable for the file I/O Program
* to be generated.
*
*HEAD34    ....:....1....:....2....:....3....
&HEAD34    UnSigned Packed - Calculate Totals
&PROGID    NUMTPUC1
&SYSUT1    org=Sequential recfm=FIXED    rmax=80
*
* The following group of statements will define the behavioral
* characteristics and environment variables for the numeric totals
* to be generated.
* The following defines the name of the callable routine for special
* numeric processing.
*
&NUMCALL   NUMTPUR1
&NUMREC    PU-RECORD
*
* The following group of statements will define the type of processing
* and the name of the numeric fields.
*
&UT1TOTAL  PU-72
&UT1TOTAL  PU-23
&UT1TOTAL  PU-52
&UT1TOTAL  PU-60
&UT1TOTAL  PU-20
*
&END

Table of Contents Previous Section Next Section Process Control File for Zoned Signed

The following PCF member (NUMTZS01.pcf) will be used to generate the programs that will accumulate summary totals for a group of user-defined numeric fields that are stored in a SIGNED, ZONED-Decimal format. The COBOL syntax would be PIC S9(9) USAGE IS DISPLAY.

***********************************************************************
*      NUMTZS01.PCF - a Process Control File for Numeric Totals       *
*   This Process Control File is provided by SimoTime Technologies    *
*             (C) Copyright 1987-2019 All Rights Reserved             *
*               Web Site URL:   http://www.simotime.com               *
*                     e-mail:   helpdesk@simotime.com                 *
***********************************************************************
* SYSUT1 is a sequential file with 80-byte, fixed-length records.     *
***********************************************************************
* This Process Control File will be used to generate a callable COBOL
* routine that will calculate summary totals for the specified field
* names as defined in a COBOL copy file.
*
* The input file (SYSUT1) is a Micro Focus Record Sequential file.
* The output will be written to SYSOUT.
*
* The following group of statements will define the high level
* functions and processes to be performed.
*
&SIMOPREP  call ..\Env1BASE
&USERPREP  call USERCOGI
&CONFORM   IBM
&COPYFILE  NUMTZSB1.CPY
&HTMLFILE  numtzsb1.htm
*
* The following group of statements will define the behavioral
* characteristics and environment variable for the file I/O Program
* to be generated.
*
*HEAD34    ....:....1....:....2....:....3....
&HEAD34    Signed Zoned ---- Calculate Totals
&PROGID    NUMTZSC1
&SYSUT1    org=Sequential recfm=FIXED    rmax=80
*
* The following group of statements will define the behavioral
* characteristics and environment variables for the numeric totals
* to be generated.
* The following defines the name of the callable routine for special
* numeric processing.
*
&NUMCALL   NUMTZSR1
&NUMREC    ZS-RECORD
*
* The following group of statements will define the type of processing
* and the name of the numeric fields.
*
&UT1TOTAL  ZS-72
&UT1TOTAL  ZS-23
&UT1TOTAL  ZS-52
&UT1TOTAL  ZS-60
&UT1TOTAL  ZS-20
*
&END

Table of Contents Previous Section Next Section Process Control File for Zoned Unsigned

The following PCF member (NUMTZU01.pcf) will be used to generate the programs that will accumulate summary totals for a group of user-defined numeric fields that are stored in a UNSIGNED, ZONED-Decimal format. The COBOL syntax would be PIC 9(9) USAGE IS DISPLAY.

***********************************************************************
*      NUMTZU01.PCF - a Process Control File for Numeric Totals       *
*   This Process Control File is provided by SimoTime Technologies    *
*             (C) Copyright 1987-2019 All Rights Reserved             *
*               Web Site URL:   http://www.simotime.com               *
*                     e-mail:   helpdesk@simotime.com                 *
***********************************************************************
* SYSUT1 is a sequential file with 80-byte, fixed-length records.     *
***********************************************************************
* This Process Control File will be used to generate a callable COBOL
* routine that will calculate summary totals for the specified field
* names as defined in a COBOL copy file.
*
* The input file (SYSUT1) is a Micro Focus Record Sequential file.
* The output will be written to SYSOUT.
*
* The following group of statements will define the high level
* functions and processes to be performed.
*
&SIMOPREP  call ..\Env1BASE
&USERPREP  call USERCOGI
&CONFORM   IBM
&COPYFILE  NUMTZUB1.CPY
&HTMLFILE  numtzub1.htm
*
* The following group of statements will define the behavioral
* characteristics and environment variable for the file I/O Program
* to be generated.
*
*HEAD34    ....:....1....:....2....:....3....
&HEAD34    UnSigned Zoned -- Calculate Totals
&PROGID    NUMTZUC1
&SYSUT1    org=Sequential recfm=FIXED    rmax=80
*
* The following group of statements will define the behavioral
* characteristics and environment variables for the numeric totals
* to be generated.
* The following defines the name of the callable routine for special
* numeric processing.
*
&NUMCALL   NUMTZUR1
&NUMREC    ZU-RECORD
*
* The following group of statements will define the type of processing
* and the name of the numeric fields.
*
&UT1TOTAL  ZU-72
&UT1TOTAL  ZU-23
&UT1TOTAL  ZU-52
&UT1TOTAL  ZU-60
&UT1TOTAL  ZU-20
*
&END

Table of Contents Previous Section Next Section Technical Details

This section provides a closer look at the system environments, component structures and processing techniques used with this suite of programs.

Table of Contents Previous Section Next Section Member Naming Conventions

The use of a naming convention can be very helpful when organizing source members into groups based on their business purpose or technical function.

The naming convention for the Windows CMD Files,Mainframe JCL Members, Program Members and non-Relational Data Structures is as follows.

Positions Description
1-3 The literal "NUx" is used to identify a member as part of the numeric item and "x" denotes the following.
D = Data set for a non-Relational Data Structure.
M = Program or Source Member
4 If positions 1-3 = "NUM" then the literal "NUMx" is used to identify the purpose of the member and "x" denoteds the following.
B = A program or test case that has a primary purpose of processing numeric data.
M = Will do an iMport of variable length text information into a file with fixed field length.
T = Used to define the Type of a record or field structure. Typically, this will be a COBOL copy file.
X = Will do an eXtract of Fixed-Field information into a file with CSV formatted records.
5 Defines the numeric format of the Fixed-Field-Length structure.
A = ASCII/Text data string.
B = Binary Format or Usage is COMP
P = Packed-Decimal or Usage is COMP-3
Z = Zoned-Decimal Format or Usage is DISPLAY
6 Defines the sign value as follows.
S = Signed Numeric Format
U = Unsigned or implied positive format.
7-8 Defines the Type of member.
Wn = a Windows CMD file where "n" is an additional identifier when multiple CMD files are required.
Jn = a ZOS, JCL member where "n" is an additional identifier when multiple JCL members are required.
Cn = a COBOL Source member where "n" is an additional identifier when multiple COBOL Source members are required.
Rn = the source code for a COBOL Routine where "n" is an additional identifier when multiple members are required.
  Naming Convention for Program Members

The following is a list of some of the terms or abbreviations that are used in this document.

Term Description
RSEQ Used to refer to a Record Sequential File
RCSV Used to refer to a Record Sequential File that has records formatted as multiple, variable-length data strings separated by a comma. This data structure is commonly referred to as a Comma-Separated-Values (or CSV) structure.
RFFL Used to refer to a Record Sequential File that has records formatted as multiple, fixed-length data fields that are concatenated without fields separator characters. This data structure is commonly referred to as a Fixed-Field-Length (or FFL) structure.
  Terms or Abbreviations used in this document

Table of Contents Previous Section Next Section Record Structure Definitions

A COBOL Copy File is used to define the record structure for each of the test files that are used by this suite of programs.

Table of Contents Previous Section Next Section Copy File for Binary Signed

The following CPY member (NUMTBSB1.cpy) is the COBOL Copy File that defines the record structure for the test file that contains the Binary, Signed numeric fields.

      *****************************************************************
      *               NUMTBSB1.cpy - a COBOL Copy File                *
      *   Copy File for testing with BINARY-SIGNED numeric values.    *
      *****************************************************************
      *         Copyright (C) 1987-2019 SimoTime Technologies         *
      *                     All Rights Reserved                       *
      *****************************************************************
      *              Provided by SimoTime Technologies                *
      *        Our e-mail address is: helpdesk@simotime.com           *
      *     Also, visit our Web Site at http://www.simotime.com       *
      *****************************************************************
       01  BS-RECORD.
           05  BS-DESCRIPTION.
               10  BS-IDENTIFIER        PIC X(8).
               10  FILLER               PIC X.
               10  BS-SIGN-KEY          PIC X(8).
               10  FILLER               PIC X.
               10  BS-SIGN-POS          PIC X(8).
               10  FILLER               PIC X.
               10  BS-SIGN-EXT          PIC X(8).
               10  FILLER               PIC X.
      *
      * ------------------------------------------------------------- *
      *    A group of SIGNED Numbers using a COMPUTATIONAL format.
      *    The physical structure is Binary.
      *    An abbreviated form of the USAGE IS COMPUTATIONAL clause
      *    is simply coded as COMP.
      *
           05  BS-72                    PIC S9(7)V99   COMP.
           05  FILLER                   PIC X.
           05  BS-23                    PIC S9(2)V999  COMP.
           05  FILLER                   PIC X.
           05  BS-52                    PIC S9(5)V99   COMP.
           05  FILLER                   PIC X.
           05  BS-60                    PIC S9(6)      COMP.
           05  FILLER                   PIC X.
           05  BS-20                    PIC S99        COMP.
           05  FILLER                   PIC X.
      *
           05  FILLER                   PIC X(21).
      *
      ***  NUMTBSB1 - End-of-Copy File - - - - - - - - - - - NUMTBSB1 *
      *****************************************************************
      *

The following link provides additional documentation for the COBOL copy file (NUMTBSB1.cpy) that defines the record structure for a test file that contains the Binary, Signed numeric fields.

Link to Internet   Link to Server   Explore numeric values that use a Signed, BINARY format. This HTML document was generated by SimoTime Technologies and is based on the field definitions included in a user-defined COBOL copy file.

Table of Contents Previous Section Next Section Copy File for Binary Unsigned

The following CPY member (NUMTBUB1.cpy) is the COBOL Copy File that defines the record structure for the test file that contains the Binary, Unsigned numeric fields.

      *****************************************************************
      *               NUMTBUB1.cpy - a COBOL Copy File                *
      *   Copy File for testing with BINARY-UNSIGNED numeric values.  *
      *****************************************************************
      *         Copyright (C) 1987-2019 SimoTime Technologies         *
      *                     All Rights Reserved                       *
      *****************************************************************
      *              Provided by SimoTime Technologies                *
      *        Our e-mail address is: helpdesk@simotime.com           *
      *     Also, visit our Web Site at http://www.simotime.com       *
      *****************************************************************
       01  BU-RECORD.
           05  BU-DESCRIPTION.
               10  BU-IDENTIFIER        PIC X(8).
               10  FILLER               PIC X.
               10  BU-SIGN-KEY          PIC X(8).
               10  FILLER               PIC X.
               10  BU-SIGN-POS          PIC X(8).
               10  FILLER               PIC X.
               10  BU-SIGN-EXT          PIC X(8).
               10  FILLER               PIC X.
      *
      * ------------------------------------------------------------- *
      *    A group of UNSIGNED Numbers using a COMPUTATIONAL format.
      *    The physical structure is Binary.
      *    An abbreviated form of the USAGE IS COMPUTATIONAL clause
      *    is simply coded as COMP.
      *
           05  BU-72                    PIC 9(7)V99    COMP.
           05  FILLER                   PIC X.
           05  BU-23                    PIC 9(2)V999   COMP.
           05  FILLER                   PIC X.
           05  BU-52                    PIC 9(5)V99    COMP.
           05  FILLER                   PIC X.
           05  BU-60                    PIC 9(6)       COMP.
           05  FILLER                   PIC X.
           05  BU-20                    PIC 99         COMP.
           05  FILLER                   PIC X.
      *
           05  FILLER                   PIC X(21).
      *
      ***  NUMTBUB1 - End-of-Copy File - - - - - - - - - - - NUMTBUB1 *
      *****************************************************************
      *

The following link provides additional documentation for the COBOL copy file (NUMTBUB1.cpy) that defines the record structure for a test file that contains the Binary, Unsigned numeric fields.

Link to Internet   Link to Server   Explore numeric values that use an Unsigned, BINARY format. This HTML document was generated by SimoTime Technologies and is based on the field definitions included in a user-defined COBOL copy file.

Table of Contents Previous Section Next Section Copy File for Packed-Decimal Signed

The following CPY member (NUMTPSB1.cpy) is the COBOL Copy File that defines the record structure for the test file that contains the Packed-Decimal, Signed numeric fields.

      *****************************************************************
      *               NUMTPSB1.cpy - a COBOL Copy File                *
      *   Copy File for testing with PACKED-SIGNED numeric values.    *
      *         Copyright (C) 1987-2019 SimoTime Technologies         *
      *                     All Rights Reserved                       *
      *              Provided by SimoTime Technologies                *
      *        Our e-mail address is: helpdesk@simotime.com           *
      *     Also, visit our Web Site at http://www.simotime.com       *
      *****************************************************************
       01  PS-RECORD.
           05  PS-DESCRIPTION.
               10  PS-IDENTIFIER        PIC X(8).
               10  FILLER               PIC X.
               10  PS-SIGN-KEY          PIC X(8).
               10  FILLER               PIC X.
               10  PS-SIGN-POS          PIC X(8).
               10  FILLER               PIC X.
               10  PS-SIGN-EXT          PIC X(8).
               10  FILLER               PIC X.
      *
      * ------------------------------------------------------------- *
      *    A group of SIGNED Numbers using a COMPUTATIONAL-3 format.
      *    The physical structure is Packed-Decimal.
      *    An abbreviated form of the USAGE IS COMPUTATIONAL-3 clause
      *    is simply coded as COMP-3.
      *
           05  PS-72                    PIC S9(7)V99   COMP-3.
           05  FILLER                   PIC X.
           05  PS-23                    PIC S9(2)V999  COMP-3.
           05  FILLER                   PIC X.
           05  PS-52                    PIC S9(5)V99   COMP-3.
           05  FILLER                   PIC X.
           05  PS-60                    PIC S9(6)      COMP-3.
           05  FILLER                   PIC X.
           05  PS-20                    PIC S99        COMP-3.
           05  FILLER                   PIC X.
      *
           05  FILLER                   PIC X(21).
      *
      ***  NUMTPSB1 - End-of-Copy File - - - - - - - - - - - NUMTPSB1 *
      *****************************************************************
      *

The following link provides additional documentation for the COBOL copy file (NUMTPSB1.cpy) that defines the record structure for a test file that contains the Packed-Decimal, Signed numeric fields.

Link to Internet   Link to Server   Explore numeric values that use a Signed, PACKED-DECIMAL format. This HTML document was generated by SimoTime Technologies and is based on the field definitions included in a user-defined COBOL copy file.

Table of Contents Previous Section Next Section Copy File for Packed-Decimal Unsigned

The following CPY member (NUMTPUB1.cpy) is the COBOL Copy File that defines the record structure for the test file that contains the Packed-Decimal, Unsigned numeric fields.

      *****************************************************************
      *               NUMTPUB1.cpy - a COBOL Copy File                *
      *   Copy File for testing with PACKED-UNSIGNED numeric values.  *
      *         Copyright (C) 1987-2019 SimoTime Technologies         *
      *                     All Rights Reserved                       *
      *              Provided by SimoTime Technologies                *
      *        Our e-mail address is: helpdesk@simotime.com           *
      *     Also, visit our Web Site at http://www.simotime.com       *
      *****************************************************************
       01  PU-RECORD.
           05  PU-DESCRIPTION.
               10  PU-IDENTIFIER        PIC X(8).
               10  FILLER               PIC X.
               10  PU-SIGN-KEY          PIC X(8).
               10  FILLER               PIC X.
               10  PU-SIGN-POS          PIC X(8).
               10  FILLER               PIC X.
               10  PU-SIGN-EXT          PIC X(8).
               10  FILLER               PIC X.
      *
      * ------------------------------------------------------------- *
      *    A group of UNSIGNED Numbers using a COMPUTATIONAL-3 format.
      *    The physical structure is Packed-Decimal.
      *    An abbreviated form of the USAGE IS COMPUTATIONAL-3 clause
      *    is simply coded as COMP-3.
      *
           05  PU-72                    PIC 9(7)V99    COMP-3.
           05  FILLER                   PIC X.
           05  PU-23                    PIC 9(2)V999   COMP-3.
           05  FILLER                   PIC X.
           05  PU-52                    PIC 9(5)V99    COMP-3.
           05  FILLER                   PIC X.
           05  PU-60                    PIC 9(6)       COMP-3.
           05  FILLER                   PIC X.
           05  PU-20                    PIC 99         COMP-3.
           05  FILLER                   PIC X.
      *
           05  FILLER                   PIC X(21).
      *
      ***  NUMTPUB1 - End-of-Copy File - - - - - - - - - - - NUMTPUB1 *
      *****************************************************************
      *

The following link provides additional documentation for the COBOL copy file (NUMTPUB1.cpy) that defines the record structure for a test file that contains the Packed-Decimal, Unsigned numeric fields.

Link to Internet   Link to Server   Explore numeric values that use an Unsigned, PACKED-DECIMAL format. This HTML document was generated by SimoTime Technologies and is based on the field definitions included in a user-defined COBOL copy file.

Table of Contents Previous Section Next Section Copy File for Zoned-Decimal Signed

The following CPY member (NUMTZSB1.cpy) is the COBOL Copy File that defines the record structure for the test file that contains the Zoned-Decimal, Signed numeric fields.

      *****************************************************************
      *               NUMTZSB1.cpy - a COBOL Copy File                *
      *   Copy File for testing with ZONED-SIGNED numeric values.     *
      *****************************************************************
      *         Copyright (C) 1987-2019 SimoTime Technologies         *
      *                     All Rights Reserved                       *
      *****************************************************************
      *              Provided by SimoTime Technologies                *
      *        Our e-mail address is: helpdesk@simotime.com           *
      *     Also, visit our Web Site at http://www.simotime.com       *
      *****************************************************************
       01  ZS-RECORD.
           05  ZS-DESCRIPTION.
               10  ZS-IDENTIFIER        PIC X(8).
               10  FILLER               PIC X.
               10  ZS-SIGN-KEY          PIC X(8).
               10  FILLER               PIC X.
               10  ZS-SIGN-POS          PIC X(8).
               10  FILLER               PIC X.
               10  ZS-SIGN-EXT          PIC X(8).
               10  FILLER               PIC X.
      *
      * ------------------------------------------------------------- *
      *    A group of SIGNED Numbers using a DISPLAY format.
      *    The physical structure is Zoned-Decimal.
      *    Since the USAGE IS DISPLAY clause is the default it is
      *    typically not hard-coded.
      *
      *    Note: Even though the COBOL systax implies "DISPLAY" the
      *    rightmost position of a signed value may be displayed as
      *    a non-numeric character.
      *    Also, this numeric format is sensitive to EBCDIC and ASCII
      *    encoding schemas.
      *
           05  ZS-72                    PIC S9(7)V99.
           05  FILLER                   PIC X.
           05  ZS-23                    PIC S9(2)V999.
           05  FILLER                   PIC X.
           05  ZS-52                    PIC S9(5)V99.
           05  FILLER                   PIC X.
           05  ZS-60                    PIC S9(6).
           05  FILLER                   PIC X.
           05  ZS-20                    PIC S99.
           05  FILLER                   PIC X.
      *
           05  FILLER                   PIC X(10).
      *
      ***  NUMTZSB1 - End-of-Copy File - - - - - - - - - - - NUMTZSB1 *
      *****************************************************************
      *

The following link provides additional documentation for the COBOL copy file (NUMTZSB1.cpy) that defines the record structure for a test file that contains the Zoned-Decimal, Signed numeric fields.

Link to Internet   Link to Server   Explore numeric values that use a Signed, ZONED-DECIMAL format. This HTML document was generated by SimoTime Technologies and is based on the field definitions included in a user-defined COBOL copy file.

Table of Contents Previous Section Next Section Copy File for Zoned-Decimal Unsigned

The following CPY member (NUMTZUB1.cpy) is the COBOL Copy File that defines the record structure for the test file that contains the Zoned-Decimal, Unsigned numeric fields.

      *****************************************************************
      *               NUMTZUB1.cpy - a COBOL Copy File                *
      *   Copy File for testing with ZONED-UNSIGNED numeric values.   *
      *****************************************************************
      *         Copyright (C) 1987-2019 SimoTime Technologies         *
      *                     All Rights Reserved                       *
      *****************************************************************
      *              Provided by SimoTime Technologies                *
      *        Our e-mail address is: helpdesk@simotime.com           *
      *     Also, visit our Web Site at http://www.simotime.com       *
      *****************************************************************
       01  ZU-RECORD.
           05  ZU-DESCRIPTION.
               10  ZU-IDENTIFIER        PIC X(8).
               10  FILLER               PIC X.
               10  ZU-SIGN-KEY          PIC X(8).
               10  FILLER               PIC X.
               10  ZU-SIGN-POS          PIC X(8).
               10  FILLER               PIC X.
               10  ZU-SIGN-EXT          PIC X(8).
               10  FILLER               PIC X.
      *
      * ------------------------------------------------------------- *
      *    A group of UNSIGNED Numbers using a DISPLAY format.
      *    The physical structure is Zoned-Decimal.
      *    Since the USAGE IS DISPLAY clause is the default it is
      *    typically not hard-coded.
      *
      *    Note: this numeric format is sensitive to EBCDIC and ASCII
      *    encoding schemas.
      *
           05  ZU-72                    PIC 9(7)V99.
           05  FILLER                   PIC X.
           05  ZU-23                    PIC 9(2)V999.
           05  FILLER                   PIC X.
           05  ZU-52                    PIC 9(5)V99.
           05  FILLER                   PIC X.
           05  ZU-60                    PIC 9(6).
           05  FILLER                   PIC X.
           05  ZU-20                    PIC 99.
           05  FILLER                   PIC X.
      *
           05  FILLER                   PIC X(10).
      *
      ***  NUMTZUB1 - End-of-Copy File - - - - - - - - - - - NUMTZUB1 *
      *****************************************************************
      *

The following link provides additional documentation for the COBOL copy file (NUMTZUB1.cpy) that defines the record structure for a test file that contains the Zoned-Decimal, Unsigned numeric fields.

Link to Internet   Link to Server   Explore numeric values that use an Unsigned, ZONED-DECIMAL format. This HTML document was generated by SimoTime Technologies and is based on the field definitions included in a user-defined COBOL copy file.

Table of Contents Previous Section Next Section Ancillary Functionality

This section provides additional detail about the secondary CMD files and programs that are used in this set of sample programs.

Table of Contents Previous Section Next Section Set the Environment

A command file (ENV1BASE.cmd) is called from other command files to set commonly used environment variables. This provides a single point of definition. The following is a listing of the contents of the command file.

@echo OFF
rem  * *******************************************************************
rem  *               ENV1BASE.cmd - a Windows Command File               *
rem  *        This program is provided by SimoTime Technologies          *
rem  *           (C) Copyright 1987-2021 All Rights Reserved             *
rem  *             Web Site URL:   http://www.simotime.com               *
rem  *                   e-mail:   helpdesk@simotime.com                 *
rem  * *******************************************************************
rem  *
rem  * Text   - Provide a single point to set common environment variables.
rem  * Author - SimoTime Technologies
rem  * Date   - January 24, 1996
rem  *
rem  * Set the commonly used environment variables. This is used to provide
rem  * a single point for managing the commonly used environment variables.
rem  *
     set SimoLIBR=c:\SimoLIBR
     set BASELIB1=c:\SIMOSAM1\DEVL
     set BASELIB8=c:\SimoSAM8
     set BaseWIP1=c:\SimoSAM1\WIP1
     set DATAZERO=c:\SIMODATA\DEVL\DATA\ZERO
     set BASEAPP=%BaseLib1%
     set BASESYS=%BaseLib1%\SYS1
     set BASECAT=%BaseLib1%\DATA
     set UMAPALIB=%BASECAT%\ASC1
     set UMAPELIB=%BASECAT%\EBC1
     set SYSLOG=%BASESYS%\LOGS\SYSLOG_USER.DAT
     set SYSOUT=%BASEAPP%\LOGS\SYSOUT_SIMSAM01.txt
     set SLZMSG=%BASEAPP%\LOGS\SLZMSG_USER.TXT
     set PostNOTE=%BASEAPP%\LOGS\JOBLOG_SIMONOTE.TXT
     set SIMONOTE=%BASEAPP%\LOGS\JOBLOG_SIMONOTE.txt
     set USERPOST=%BASEAPP%\LOGS\ASSIGNED_USER_POST_FILE.txt
     call SIMONOTE "* SIMONOTE Job Log File is %SIMONOTE% "
     if [%1]==[] goto NO_POST
     set SYSOUT=%BaseLib1%\LOGS\SYSOUT_%1.txt
     call SIMONOTE "*******************************************************************************%1"
     call SIMONOTE "* ENV1BASE is preparing the System Environment..."
     call SIMONOTE "* SIMOLIBR is %SIMOLIBR%"
     call SIMONOTE "* MIFOSYS1 is %MIFOSYS1%"
     call SIMONOTE "* BASELIB1 is %BASELIB1%"
:NO_POST
rem  *
     set MQBASE=C:\Program Files\IBM\WebSphere MQ
rem  *
rem  * Set the location for the Apache-Tomcat Server...
     set CATALINA_HOME=C:\APACHETC\apache-tomcat-7.0.52
rem     set CATALINA_HOME=C:\Program Files (x86)\Java\jdk1.8.0_112
rem  *
rem  * Set the Environment for the Java Environment...
rem     set JAVABASE=C:\APACHETC\apache-tomcat-7.0.52
     set JAVABASE=C:\Program Files (x86)\Java\jdk1.8.0_112
     set JAVASDK="%JAVABASE%\bin"
     set JAVA_HOME=%JAVABASE%
     set JRE_HOME=%JAVABASE%
     set SIMOTCAT=%CATALINA_HOME%\webapps\simotcat
     set SIMPACKS=%CATALINA_HOME%\webapps\simotcat\WEB-INF\classes\simpacks
rem  *
rem  * Set the environment for the Micro Focus technology...
     set MIFOEDEV=C:\Program Files (x86)\Micro Focus\Enterprise Developer
     set MIFOVCBL=C:\Program Files (x86)\Micro Focus\Visual COBOL Build Tools
     set MIFOESTU=C:\Program Files (x86)\Micro Focus\Studio Enterprise Edition 6.0
     set MIFOEMFE="C:\Program Files (x86)\Micro Focus\Mainframe Express"
rem  *
rem  * Large file support, performance tuning and record locking of the File Handler
     set EXTFH=%BASESYS%\CONFIG\EXTFHBIG.CFG
rem  *
rem  * For IMS Support
     set ES_IMSLIB=%BASEAPP%\IMSLIB
     set ES_ACBLIB=%BASEAPP%\IMSLIB
rem  *
rem  * EZASOKETS Check EZASOKETS Enabled box or set ES_EZASOKET_SUPPORT=YES
     set EZACONFG=BASESYS1\CONFIG\EZACONFG.dat
rem  *
rem  * Resource Allocation and Performance for SORT and non-Relational Data
rem  set MFJSENGINE=SYNCSORT
     set SORTSCHEME=1
     set SORTSPACE=750000000
     set TMP=C:\SORTWORK
rem  *
     set ES_ALLOC_OVERRIDE=%BASESYS%\CONFIG\CATMAPA1.cfg
rem  * For CORE_ON_ERROR function, ABEND Dump
rem  *     set COBCONFIG_=%BASESYS%\CONFIG\diagnose.cfg
rem  *
rem  * Consolidated Trace Facility (CTF)
rem  *     set MFTRACE_CONFIG=%BASESYS%\CONFIG\ctf.cfg
rem  *     set MFTRACE_LOGS=c:\ctflogs
rem  *
rem  * For Job Restart, ABEND Recovery
     set MF_UCC11=Y
     set ES_JES_RESTART=Y
rem  *
rem  * Set environment for MFBSI (Micro Focus Batch Scheduling Interface)
     set ES_EMP_EXIT_1=mfbsiemx
     set MFBSI_DIR=%BASESYS%\LOGS\%JESSERVERNAME%
     set MFBSIEOP_CMD=ENABLE
     set MFBSIEOP_CSV=ENABLE
     set MFBSIEOP_HTM=ENABLE
     set MFBSIEOP_XML=ENABLE
rem  *
rem  * Set Behavior and Trace Flags for GETJOBDD
rem  *   Position=12345678/12345678
     set JDDFLAGS=nnnWnnnn/YYnnnnnn
rem  *
rem  * If not already set then set the PATH for Micro Focus Directories
     if "%SIMOPATH%" == "Y" goto JUMPPATH
     if "%MIFOSYS1%" == "EDEV" goto JUMPEDEV
     if "%MIFOSYS1%" == "VCBL" goto JUMPVCBL
     if "%MIFOSYS1%" == "ESTU" goto JUMPESTU
     if "%MIFOSYS1%" == "EMFE" goto JUMPEMFE
:JUMPEDEV
     set path=%BASESYS%\LOADLIB;%MIFOEDEV%\bin;%JAVASDK%;%BASEAPP%\JAVA;%PATH%;
     set CobCpy=%BASEAPP%\CobCpy1;%BASEAPP%\CobCpy2;%BASEAPP%\CobCpy6;%SimoLIBR%;%MIFOEDEV%\CPYLIB
     set MIFOBASE=%MIFOEDEV%
     goto JUMPPATH
:JUMPVCBL
     set path=%MIFOVCBL%\bin;%MIFOVCBL%;%JAVASDK%;%BASEAPP%\JAVA;%PATH%;
     set MIFOBASE=%MIFOVCBL%
     goto JUMPPATH
:JUMPESTU
     set MIFOBASE=%MIFOESTU%\Base
     set MIFOBIN=%MIFOBASE%\bin
     set path=%BASESYS%\LOADLIB;%MIFOBASE%;%MIFOBIN%;%JAVASDK%;%BASEAPP%\JAVA;%PATH%;
     set CobCpy=%BASEAPP%\CobCpy1;%BASEAPP%\CobCpy2;%BASEAPP%\CobCpy6;%SimoLIBR%;%MIFOBASE%\SOURCE
     goto JUMPPATH
:JUMPEMFE
     set MIFOBASE=%MIFOEMFE%\Base
     set MIFOBIN=%MIFOBASE%\bin
     set path=%BASESYS%\LOADLIB;%MIFOBASE%;%MIFOBIN%;%JAVASDK%;%BASEAPP%\JAVA;%PATH%;
     set CobCpy=%BASEAPP%\CobCpy1;%BASEAPP%\CobCpy2;%BASEAPP%\CobCpy6;%SimoLIBR%;%MIFOBASE%\SOURCE
     goto JUMPPATH
rem  *
:JUMPPATH
     set SIMOPATH=Y
rem  *
     set MAINFRAME_FLOATING_POINT=true
     set COBIDY=%BASEAPP%\COBIDY
     set COBPATH=.;%BASEAPP%\LOADLIB;%BASEAPP%\LOADLIB\GNTS;%BASESYS%\LOADLIB;%SimoLIBR%
     set LIBPATH=.;%BASEAPP%\LOADLIB;%BASEAPP%\LOADLIB\GNTS;%BASESYS%\LOADLIB;%SimoLIBR%
     set TXDIR=%BASESYS%\LOADLIB;%MIFOBASE%
     set CobCpy=%BASEAPP%\CobCpy1;%BASEAPP%\CobCpy2;%BASEAPP%\CobCpy6;%SimoLIBR%
rem  *
     set USERCLASS=%BASELIB1%\LOADLIB
     set CLASSPATH=.
     set CLASSPATH=%CLASSPATH%;%JAVABASE%
     set CLASSPATH=%CLASSPATH%;%JAVABASE%\lib
     set CLASSPATH=%CLASSPATH%;\%USERCLASS%\simpacks
     set CLASSPATH=%CLASSPATH%;C:\APACHETC\apache-tomcat-7.0.52\webapps\simotcat\WEB-INF\classes
     set CLASSPATH=%CLASSPATH%;C:\APACHETC\apache-tomcat-7.0.52\webapps\simotcat\WEB-INF\classes\simpacks
rem  *
     if "%MIFOSYS1%" == "ESTU" set CLASSPATH=%CLASSPATH%;%MIFOBIN%
     if "%MIFOSYS1%" == "EDEV" set CLASSPATH=%CLASSPATH%;%MIFOEDEV%
     if "%MIFOSYS1%" == "VCBL" set CLASSPATH=%CLASSPATH%;%MIFOVCBL%
     if "%MIFOSYS1%" == "VCBL" set CLASSPATH=%CLASSPATH%;%MIFOVCBL%\bin\mfcobol.jar
rem  *
     set JobStatus=0000
     call SimoNOTE "* Settings CmdName ENV1BASE.cmd, Version 20.05.22, %MIFOSYS1% "
     call SimoNOTE "* BaseAPP ..... %BASEAPP% "
rem *      call SimoNOTE "* MFBSIDIR .... %MFBSI_DIR% "
     call SimoNOTE "* MIFOSYS1 is %MIFOSYS1% "
     call SimoNOTE "* MIFOBASE is %MIFOBASE% "
     call SimoNOTE "* SIMOLIBR is %SIMOLIBR% "

Table of Contents Previous Section Next Section Display and Log Messages

The following CMD File (SIMONOTE.cmd) is called from other command files to consistently display messages and write to a log file. The following is a listing of the contents of the command file.

@echo OFF
rem  * *******************************************************************
rem  *               SIMONOTE.cmd - a Windows Command File               *
rem  *         This program is provided by SimoTime Technologies         *
rem  *            (C) Copyright 1987-2019 All Rights Reserved            *
rem  *              Web Site URL:   http://www.simotime.com              *
rem  *                    e-mail:   helpdesk@simotime.com                *
rem  * *******************************************************************
rem  *
rem  * Text    - Display message on screen and write to a log file.
rem  * Author  - SimoTime Technologies
rem  *
rem  * This script may be called from other scripts and expects a single
rem  * parameter enclosed in double quotes. The double quotes will be
rem  * removed. Before writing to the log file a date and time stamp
rem  * will be inserted in front of the message text.
rem  *
rem  * Note: The tilde (~) removes leading/trailing double-quotes.
rem  *
if "%SimoNOTE%" == "" set SimoNOTE=c:\SimoLIBR\LOGS\SimoTime.LOG
echo %date% %time% %~1>> %SimoNOTE%
echo %~1

Table of Contents Previous Section Next Section Summary

This suite of programs will describe and demonstrate how to generate programs that will convert between various formats such as Packed Decimal, Binary and Zoned Decimal and accumulate summary totals to ensure numeric integrity is maintained. This document may be used as a tutorial for new programmers or as a quick reference for experienced programmers.

In the world of programming there are many ways to solve a problem. This documentation and software were developed and tested on systems that are configured for a SIMOTIME environment based on the hardware, operating systems, user requirements and security requirements. Therefore, adjustments may be needed to execute the jobs and programs when transferred to a system of a different architecture or configuration.

SIMOTIME Services has experience in moving or sharing data or application processing across a variety of systems. For additional information about SIMOTIME Services or Technologies please contact us using the information in the  Contact, Comment or Feedback  section of this document.

Table of Contents Previous Section Next Section Software Agreement and Disclaimer

Permission to use, copy, modify and distribute this software, documentation or training material for any purpose requires a fee to be paid to SimoTime Technologies. 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 Technologies.

SimoTime Technologies 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 expressed or implied warranty, including the implied warranties of merchantability, fitness for a particular purpose and non-infringement. SimoTime Technologies 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.

Table of Contents Previous Section Next Section Downloads and Links

This section includes links to documents with additional information that are beyond the scope and purpose of this document. The first group of documents may be available from a local system or via an internet connection, the second group of documents will require an internet connection.

Note: A SimoTime License is required for the items to be made available on a local system or server.

Table of Contents Previous Section Next Section Current Server or Internet Access

The following links may be to the current server or to the Internet.

Link to Internet   Link to Server   Explore the Numbers Connection for additional information about the structure and processing of numeric data items (or numeric fields).

Link to Internet   Link to Server   Explore The Binary or COMP format for numeric data strings. This numeric structure is supported by COBOL and may be explicitly defined with the "USAGE IS COMP" or "USAGE IS BINARY" clause.

Link to Internet   Link to Server   Explore The Edited for Display format for numeric data strings. This numeric structure is supported by COBOL and may be used with an edit-mask to prepare the presentation for readability by human beings.

Link to Internet   Link to Server   Explore The Packed-Decimal or COMP-3 format for numeric data strings. This numeric structure is supported by COBOL and may be explicitly defined with the "USAGE IS COMP-3" clause.

Link to Internet   Link to Server   Explore The Zoned-Decimal format for numeric data strings. This numeric structure is the default numeric for COBOL and may be explicitly defined with the "USAGE IS DISPLAY" clause.

Link to Internet   Link to Server   Explore The ASCII and EBCDIC Translation Tables. These tables are provided for individuals that need to better understand the bit structures and differences of the encoding formats.

Link to Internet   Link to Server   Explore The File Status Return Codes to interpret the results of accessing VSAM data sets and/or QSAM files.

Table of Contents Previous Section Next Section Internet Access Required

The following links will require an internet connect.

This suite of programs and documentation is available to download for review and evaluation purposes. Other uses will require a SimoTime Software License. Link to an Evaluation zPAK Option that includes the program members, documentation and control files.

A good place to start is The SimoTime Home Page for access to white papers, program examples and product information. This link requires an Internet Connection

Explore The Micro Focus Web Site for more information about products (including Micro Focus COBOL) and services available from Micro Focus. This link requires an Internet Connection.

Table of Contents Previous Section Next Section Glossary of Terms

Link to Internet   Link to Server   Explore the Glossary of Terms for a list of terms and definitions used in this suite of documents and white papers.

Table of Contents Previous Section Next Section Comments, Suggestions or Feedback

This document was created and is maintained by SimoTime Technologies and Services. If you have any questions, suggestions, comments or feedback please use the following contact information.

1. Send an e-mail to our helpdesk.
1.1. helpdesk@simotime.com.
2. Our telephone numbers are as follows.
2.1. 1 415 763-9430 office-helpdesk
2.2. 1 415 827-7045 mobile

 

We appreciate hearing from you.

Table of Contents Previous Section Next Section Company Overview

SimoTime Technologies was founded in 1987 and 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. Our customers include small businesses using Internet technologies to corporations using very large mainframe systems.

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. We specialize in preparing applications and the associated data that are currently residing on a single platform to be distributed across a variety of platforms.

Preparing the application programs will require the transfer of source members that will be compiled and deployed on the target platform. The data will need to be transferred between the systems and may need to be converted and validated at various stages within the process. SimoTime has the technology, services and experience to assist in the application and data management tasks involved with doing business in a multi-system environment.

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
Program Generation for Numeric Data, Zoned Decimal, Packed and Binary
Copyright © 1987-2022
SimoTime Technologies and Services
All Rights Reserved
When technology complements business
http://www.simotime.com