Installing Optional Features

#### Search Results

Search

# Installing Optional Features

This section covers the following topics:

- Printing from Natural to Entire Output Management Directly

- Natural Advanced Facilities

- Report Format Conversion - Additional Requirements

- 3GL Interface Installation and Verification

- Re-Routing VTAM Output to Entire Output Management

## Printing from Natural to Entire Output Management Directly

Instead of printing output from Natural programs in a spooling system, you can route it to an Entire Output Management container file (SYS2) in which the trigger data are to be stored, and from which the output can be distributed, bundled or separated. On the Entire Output Management side, NAT reports are handled exactly the same as NAF reports (same report identification attributes, same spool attributes except that the source type is 10 for NAT, and 11 for NAF).

In order to create NAT reports, `NOMPUT`, `NOMADA` and `NOMCOMPR` must be linked with Natural (`NOMADA` has to be assembled the same as for NAF) and `LFILE 206` must specify the appropriate Entire Output Management system file. The report data are written into the trigger container file, which has to be defined and activated (otherwise active reports will not be created); see Trigger Container File.

To install the access method, you have to link the following modules to your Natural nucleus:

    NATAM12
    NOMADA
    NOMCOMPR
    NOMPUT

Include the modules in your operating-system environment as described under Using NOMPUT.

#### Example - Writing Data to Entire Output Management, where Printer 2 is Defined as NOM Printer:

Start Natural with the profile parameter `PRINT=(2,AM=NOM)`.

Then execute the following program:

    DEFINE PRINTER (2) OUTPUT 'NOM'
       PROFILE 'PROF'
       FORMS 'FORM'
       NAME 'LISTNAME'
       DISP 'D'
       CLASS 'X'
       COPIES 3

    WRITE (2) 'HELLO, THIS IS PRINTER 2.'
    CLOSE PRINTER (2)
    END

Your output will be written directly to the defined Entire Output Management container file, without using any spooling system.

## Natural Advanced Facilities

This section is only relevant if you use Natural Advanced Facilities. It covers the following topics:

- Printing from Natural Advanced Facilities to Entire Output Management

- Printing from Entire Output Management to Natural Advanced Facilities

### Printing from Natural Advanced Facilities to Entire Output Management

Instead of printing output from Natural programs in the Natural Advanced Facilities (NAF) spool file (FSPOOL), you can route it to an Entire Output Management file (SYS2), from which it can be distributed, bundled or separated.

Here you can define whether the NAF/NOM interface is active and from which Natural Advanced Facilities environments output is to be processed. A separate Entire Output Management container file can be assigned to each FSPOOL file. However, you can also assign the same container file to all FSPOOL files.

To define default parameters for Natural Advanced Facilities for printing to Entire Output Management, see Natural Advanced Facilities Defaults in the System Administration documentation.

### Printing from Entire Output Management to Natural Advanced Facilities

To print from Entire Output Management to Natural Advanced Facilities:

- Natural Advanced Facilities must be installed in the Natural nuclei used by the monitor and for batch printing.

- The necessary Natural Advanced Facilities modules must be linked.

- The parameter modules must define printers 3 and 4 as type `NAF`, as well as specifying any site-specific parameters such as `NAFSIZE`, `NAFUPF` and `FSPOOL`.

For further information, see the Natural Advanced Facilities documentation.

## Report Format Conversion - Additional Requirements

If report format conversion - as described under Converting the Report Format in the Concepts and Facilities documentation - is intended, the utilities Ghostscript and Enscript have to be installed. The corresponding commands - `gs` and `enscript` respectively - must reside on any open systems machine where the conversions will be executed. Entire System Server has to be installed there as well, and each conversion node must be defined as a UNIX node in Entire Output Management (8.1/13 menu, can be deactivated).

On UNIX systems, both packages are in most cases already installed.

On Windows, it is recommended that the entire "gnuwin32" package be installed. You can find download pages at:

- `http://sourceforge.net/projects/ghostscript/`

- `http://sourceforge.net/projects/gnuwin32/`

The following utilities all of which, except Ghostscript, are GNU software, will be used:

`ghostscript`
`enscript`
`file`
`find`
`sed`
`pdftk` (optional)

The package `pdftk` is used if a report or a printer requires a mask file which is to be overlaid to the original report. It is available for UNIX and Windows systems.

The existence of the utilites will be checked using the execution path. This means that the path of both utilities has to be added to the current execution path (environment variable `PATH`).

If the module names are different from `gs` and `enscript`, two additional environment variables are required. The following environment variables of the user ID which is used in the UNIX node definition of Entire Ouptut Management can be defined:

- If Ghostscript is not invoked with `gs`, define the environment variable `GSMOD`. In the following example, Ghostscript 9.06 for Windows has been installed. `GSMOD` contains: `gswin64c.exe`

- If Enscript is not invoked with `enscript`, enter the correct name in the environment variable `ENMOD` in a similar way.

Note
The above-mentioned UNIX utilities are invoked by Entire Ouptut Management, but are not part of it; they are third-party products which we neither deliver nor provides support for.

## 3GL Interface Installation and Verification

- 3GL Interface Defaults (1 and 2)

- SYSERR - Display Short Messages

- Report Definition - General Attributes and 3GL ID (3)

- Using NOMPUT

This section describes how to define a 3GL interface and how to test it with the supplied sample programs.

1. Load a container file (SYS2) with no records. The output will be stored in this file.

2. Define the 3GL interface defaults, as described under 3GL Interface Maintenance in the System Administration documentation:

   #### 3GL Interface Defaults (1)

          11:40:31             **** Entire Output Management ****            05/05/2024
         UserId XYZ                - 3GL Interface Defaults -

         3GL Interface 104

           active ..................... Y
           Time Limit ................. __
           Description ................ User-defined Spool (3GL Interface 104)_______

         NOM container file
           DBID ....................... 1__
           FNR ........................ 138

         Identifying Attributes
           Prompt                 Offset  Length  Order  Generic (*)
            1040________________    1__     8__     1_      Y
            1041________________    9__     8__     2_      N
            1042________________    17_     8__     3_      N
            ____________________    ___     ___     __      _

         File identification
            1043_______________     33_     8__

   #### 3GL Interface Defaults (2)

          11:45:54             **** Entire Output Management ****            05/05/2024
         UserId XYZ                - 3GL Interface Defaults -

         3GL Interface 104

           active ..................... Y
           Description ................ User-defined Spool (3GL Interface 104)_________

         Attributes
           Prompt                 Offset  Length
            1045________________    25_     8__
            1044________________    41_     50_
            ____________________    ___     ___
            ____________________    ___     ___
            ____________________    ___     ___
            ____________________    ___     ___
            ____________________    ___     ___
            ____________________    ___     ___
            ____________________    ___     ___
            ____________________    ___     ___

3. In the SYSERR utility, enter the prompt texts under the defined numbers (library SYSNOMU). If both the English and the German version of Entire Output Management are used, you have to enter the texts for both languages.

   #### SYSERR - Display Short Messages

        11:55:13              ***** NATURAL SYSERR Utility *****              05/05/2024
                                  - Display Short Messages -

        Number        Short Message (English)
        ------------  -----------------------------------------------------------------

        SYSNOMU0001   User Id
        SYSNOMU0002   Name
        SYSNOMU0003   First Name
        SYSNOMU0004   Birth date
        SYSNOMU1040   User ID
        SYSNOMU1041   Terminal ID
        SYSNOMU1042   Program
        SYSNOMU1043   List-Name
        SYSNOMU1044   Description
        SYSNOMU1045   List ID
        SYSNOMU1234   testprompt

4. Create a default report for your 3GL interface. Enter an asterisk (*) for the identifying attribute that you defined with Generic=Y in the definition. For further information, see Report Identification for 3GL Interface in the User's Guide.

   #### Report Definition - General Attributes

          12:12:40             **** Entire Output Management ****            05/05/2024
         User ID XYZ       - Report Definition >General Attributes -

         Report
            Name .............. USR104-DEFAULT___
            Description ....... Default definition for 3GL interface 104__________
            Type .............. D

         Keywords ............. _______________ _______________ _______________
         Master Owner ......... MRS_____
         Store in NOM DB ...... N
         Archive directly ..... N

         Retention              Report     Archive   Revive
            Number ............ 1__        ____      ___
            Unit .............. A          _         _
            Calendar .......... ________             ________
            Action ............ P

   #### Report Definition - 3GL Identification (3)

          15:13:43             **** Entire Output Management ****            05/05/2024
         User ID XYZ        - Report Definition >3GL Identification -

         Report
            Name .............. USR100-DEFAULT___
         3GL Interface 100 Attributes

         and
                                 ______________________________________________________
                                 ______________________________________________________
                                 ______________________________________________________
                                 ______________________________________________________
                                 ______________________________________________________
                                 ______________________________________________________
                                 ______________________________________________________
                                 ______________________________________________________
                                 ______________________________________________________
                                 ______________________________________________________

5. Enter the database ID and file number of your container file in the module NOMADA. These are simply defaults which can be overwritten in the 3GL program.

6. SHUTDOWN and START the Monitor.

7. Modify the supplied member ASMNOM and assemble the module NOMADA.

   To execute the COBOL example, continue with Step 13 below.

8. Modify the supplied module NOMEX3GL. `O§ATTR` must contain the spool attributes (identifying attributes, file identification and other attributes) as defined in the interface. `N$SRCTYP` must contain the interface number at OPEN. `N$DBID` and `N$FNR` must contain the database ID and file number respectively.

9. Assemble the module NOMEX3GL.

10. Modify the member LNKEX3GL and link the sample program.

11. Modify the member RUNEX3GL and run the sample program.

12. Check the Monitor Log to see whether a report has been created.

13. Modify the supplied module NOMEX3CO. `NOMPUT-ATTRIBUTES` must contain the spool attributes as defined in the interface. In the subsection `BA-INITIALISE`, the interface number must be assigned to the field `NOMPUT-CB-SOURCE-TYPE`, the database number to the field `NOMPUT-CB-CONT-DBID`, and the file number of the container file to field `NOMPUT-CB-CONT-FNR`.

14. Modify the member COBNOM and compile the module NOMEX3CO.

15. Modify the member LNKEX3CO and link the sample program.

16. Modify the member RUNEX3CO and run the sample program.

17. Check the Monitor Log to see whether a report has been created.

### Using NOMPUT

#### Installing an Entire Output Management Logical Printer in Natural Advanced Facilities

1. The delivered module NOMADA is assembled with the following parameters and will be valid for use with Natural and Natural Advanced Facilities. If you want to use NOMPUT with Natural, proceed with Step 4. If you are using 3GL languages, adapt the parameters to suit your requirements:

   Parameter | Explanation
   --- | ---
   `AUTOET=0` | Do not perform ETs.
   `CICS=YES/NO` | CICS environment required / not required (see below).
   `NATURAL=NO` | Natural/Adabas not required.
   `NATVERS=vr` | Version of Natural.
   `NOMDBID=0` | Database ID of Entire Output Management container file.
   `NOMFNR=0` | File number of Entire Output Management container file.

   NOMADA is the interface between NOMPUT and Adabas, and it can be used by:

   - 3GL batch programs, in which case `CICS=NO` must be set;

   - 3GL programs running under CICS, in which case `CICS=YES` must be set.

2. Assemble NOMADA using Entire Output Management, Natural and Adabas source libraries as steplibs; for example, see z/OS sample job `ASMNOM`:

3. INCLUDE the modules NOMPUT and NOMADA to the nucleus where NAFNUC is included (usually the shared nucleus):

4. For printing from Natural Advanced Facilities, define the Natural Advanced Facilities printers as follows:

   `NTPRINT(m-n),AM=NAF`

5. Define a logical printer in Natural Advanced Facilities with type `NOM`.

6. Edit the Natural Advanced Facilities defaults in Entire Output Management to link the Natural Advanced Facilities spool file and Entire Output Management container file and activate the Natural Advanced Facilities interface with "Y".

7. Direct the output of your Natural program to Entire Output Management using:

   `DEFINE PRINTER (n) OUTPUT logical-NAF-printername`

Output of this type is stored in the specified Entire Output Management container file. Note that container files must be located on the local system where Entire Output Management runs; remote container files accessed via Network are not possible.

## Re-Routing VTAM Output to Entire Output Management

It is possible to re-route output from a VTAM application to Entire Output Management. This applies, for example, to reports generated by a user in a VTAM application (for example, Com-plete or CICS) which are written to VTAM printers. These reports can be the results of hardcopy requests, print requests, a Natural Advanced Facilities report, etc.

For this purpose, the VTAM virtual-printer application `NOMVPRNT` is provided, which simulates a VTAM printer. `NOMVPRNT` can run as a started task, or as a sub-task under Entire System Server. The output can be re-routed either to the JES spool or to the Entire Output Management container file. In Entire Output Management, the output will be processed according to the corresponding report definitions.

To use this feature, you have to make the following definitions:

- Definitions in VTAM

- Definitions in Entire Output Management

- Running NOMVPRNT Under Control of Entire System Server

### Definitions in VTAM

In VTAM, you define each virtual printer as follows:

`printer-name APPL AUTH=NVPACE,EAS=1,PARSESS=NO,DLOGMOD=DSC2K,SESSLIM=YES`

The following startup parameters have to specified for `NOMVPRNT`:

Parameter | Explanation
--- | ---
`PRINTER=printer-name` | Specify an entry for each printer whose printouts are to be handled by Entire Output Management.
`STORE=DB/SP` | Specify the destination of the re-routed output: `STORE=DB` - Output is written to the Entire Output Management container file. `STORE=SP` - Output is written to the JES spool.
`NOM-DBID=nnnnn` | If `STORE=DB`, specify the database ID of the container file. If `STORE=SP`, specify the database ID of the Entire System Server node for Entire Output Management.
`NOM-FNR=nnnnn` | Only applicable with `STORE=DB`: Specify the file number of the container file.
`NOM-CLASS=c` | Only applicable with `STORE=SP`: Specify the JES class which is to be handled by the Entire Output Management monitor.
`NOM-USER=uuuuuuuu` | Only applicable with `STORE=SP`: Specify the user ID to be used by Entire System Server. For this Entire System Server node, you specify the startup parameter `STDUSER=uuuuuuuu`.
`ADA-SVC=nnn` | Specify the number of the Adabas SVC. The default value is `249`.
`SNAP=YES/NO` | For tracing, specify `YES`. The default is `NO`.
`WTOTRACE=YES/NO` | For tracing, specify `YES`. The default is `NO`.

Under z/OS, the DD-card `NOMPSPRM` points to the startup parameters.

If `NOMVPRNT` runs under control of Entire System Server (see below), this DD-card can be omitted.

#### Sample JCL - z/OS:

    //EXEC  PGM=NOMVMAIN,TIME=1440
    //STEPLIB  DD DSN=nom.load,DISP=SHR
    //         DD DSN=adabas.loadlib,DISP=SHR
    //NOMPSPRM DD DSN=parm-file,DISP=SHR
    //NOMPRSNP DD SYSOUT=X

### Definitions in Entire Output Management

- Output to JES Spool
- Output to Container File

#### Output to JES Spool

If the output is to be re-routed to the JES spool, the JES report definitions in Entire Output Management apply.

The following report definitions are required:

- On the Report Definition > General Attributes screen, the field Store in NOM DB must be set to "Y". This ensures that the report can be viewed even if the spool file in JES is deleted.

- On the Report Definition > JES Identification screen, the printer-name must be specified in the Writer field.

#### Output to Container File

If the output is to be re-routed to Entire Output Management container file, the following definitions are required:

- System defaults:
  On the 3GL Interface Defaults screen, set the field active to "Y", and in the fields NOM Container File DBID/FNR, specify the same database ID and file number as in the VTAM startup parameters (see above).

  See Example A below.

- Report definition for each report:
  On the Report Definition > 3GL Identification screen (which is invoked by pressing PF7 on the Report Definition > General Attributes screen, and then PF8 and then selecting the desired 3GL interface), specify the printer name (`NOMPRTnn`) in the 3GL Interface nnn Attributes field.

  See Example B below.

#### Example A - Define 3GL interface 105 (function 8.1.12 on the Main Menu):

       23:55:10             **** ENTIRE OUTPUT MANAGEMENT ****            2024-07-07
      UserId XYZ                - 3GL Interface Defaults -

      3GL Interface 105
        active ..................... Y
        Time Limit ................. __
        Description ................ NOMVPRNT to container________________________

      NOM container file
        DBID ....................... 9____
        FNR ........................ 246__

      Identifying Attributes
        Prompt                 Offset  Length  Order  Generic (*)
         1234________________    1__     8__     1_      N
         ____________________    ___     ___     __      _
         ____________________    ___     ___     __      _
         ____________________    ___     ___     __      _
      File identification
         *__________________     1__     8__

      Command => ___________________________________________________________________
     Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
           Help        Exit  Flip                          Attrb             Menu

#### Example B - with selected interface 105:

     User ID XYZ        - Report Definition >3GL Identification -

    Report
       Name .............. REP2112_________

    3GL Interface 105 Attributes
       ....................  NOMPRT42

### Running NOMVPRNT Under Control of Entire System Server

`NOMVPRNT` can run under control of Entire System Server as follows:

- NOMVPRNT As Subtask
- NOMVPRNT As Started Task
- NOMVPRNT As Batch Job

If `NOMVPRNT` runs under control of Entire System Server, the file which contains the startup parameters is specified in `SATENV` with the keyword `DATASET`.

All output from `NOMVPRNT` will be written into a separate `SYSOUT` file under the DD-name `NMVvrsMS`.

If `AUTO=OFF` is specified in the `SATSTART` parameter block, `NOMVPRNT` can be started and stopped from Entire Output Management, menu 8.11.

For details on the parameter blocks and startup parameters mentioned above and in the three sections below, see also Define Environment for Entire Output Management Server.

#### NOMVPRNT As Subtask

If `NOMVPRNT` is to run as a subtask, you have to specify the following System Automation Tools startup parameters.

The parameter block `SATENV` must be specified as follows:

    NMVvrs SATENV DATASET=dataset(member) [/volser]

The parameter block `SATSTART` must be specified as follows:

    SAT SATSTART PRODUCT=NMV,
                 TYPE=SUBTASK,
                 PREFIX=vrs
                 SERVSYSF=(dbid,fnr)
    *            AUTO=OFF

where vrs must be the same as specified in `SATENV`, and dbid and fnr must be the same as specified for LFILE 206.

The parameter block `NATENV` can be omitted.

#### NOMVPRNT As Started Task

If `NOMVPRNT` is to run as a started task, you have to specify the following System Automation Tools startup parameters.

The parameter block `SATENV` must be specified as follows:

    NMVvrs SATENV DATASET=dataset(member)
                  STC=started-task-name

The parameter block `SATSTART` must be specified as follows:

    SAT SATSTART PRODUCT=NMV,
                 TYPE=BATCH,
                 PREFIX=vrs
                 SERVSYSF=(dbid,fnr)
    *            AUTO=OFF

where dbid and fnr must be the same as specified for LFILE 206.

The parameter block `NATENV` can be omitted.

#### NOMVPRNT As Batch Job

If `NOMVPRNT` is to run as a batch job, you have to specify the following System Automation Tools startup parameters.

The parameter block `SATENV` must be specified as follows:

    NMVvrs SATENV DATASET=dataset(member)
                  NATSKEL=job-skeleton-name

The library `SYSNOMS` contains the job skeletons `JNMVMVS1` and `JNMVVSE1`, which you can adapt to suit your requirements.

The parameter block `SATSTART` must be specified as follows:

    SAT SATSTART PRODUCT=NMV,
                 TYPE=BATCH,
                 PREFIX=vrs
                 SERVSYSF=(dbid,fnr)
    *            AUTO=OFF

The parameter block `NATENV` can be omitted.

### On this page

- Printing from Natural to Entire Output Management Directly
- Natural Advanced Facilities
- Report Format Conversion - Additional Requirements
- 3GL Interface Installation and Verification
- Re-Routing VTAM Output to Entire Output Management