Enabling Universal Encoding Support (UES) for Your Adabas Nucleus

Prior to Adabas Version 7, Entire Net-Work converted all data for mainframe Adabas when necessary from ASCII to EBCDIC. Starting with Version 7, Adabas is delivered with its own data conversion capability called universal encoding support (UES). Entire Net-Work detects when it is connected to a target database that converts data and passes the data through to Adabas without converting it.

To ensure UES processing is handled properly, perform the following steps.

  1. The Adabas database must include the correct libraries and have appropriate zaps applied.

    For information about UES, read Universal Encoding Support (UES) as well as ADADEF Utility: Define a Database and ADACMP Utility: Compress-Decompress Data.

    A sample startup job for a UES-enabled nucleus is provided in member ADANUCU of the ADAvrs.JOBS data set. For more information, read JCL Required for UES Support (z/VSE).

  2. Ensure that UES support has been activated in the Adabas link routines. Verify that the load modules for all Adabas 8 link routines have been linked with LNKUES and the default (or updated) translation tables and that the LGBLSET SVCNO parameter has been set. For Adabas 8, UES is enabled by default for all link routines. For information on altering UES enablement in the link routines read appropriate sections of Installing Adabas With TP Monitors, starting with the section UES-Enabled Link Routines.

    UES-enabled databases can be connected to machines with different architectures through Com-plete, Software AG internal product software (APS), or through Entire Net-Work (WCP). Connections through Com-plete or Software AG internal product software (APS) use the Adabas Com-plete link routines; connections through Entire Net-Work use the Adabas batch link routines.

    Effective with Adabas Version 8.3, only APS version 3.3.1 fix pack 19 and above are supported on z/VSE. Users should note that, with APS version 3.3.1 fix pack 19, a new system parameter TCPIP has been introduced. Users should add parameter TCPIP=NO to the APS reader files in use for all UES-enabled Adabas nucleus jobs.

Note:
The use of UES-enabled link routines and a UES-enabled nucleus is transparent to applications, including applications that do not require universal encoding translation support. Therefore, it is not necessary to disable UES if it is already enabled.

This document covers the following topics:


Installing UES Support for the Adabas Nucleus

The following LIBR sublibraries are distributed with Adabas for UES support:

SAGLIB.ADAvrsCS

SAGLIB.APSvrsnn
SAGLIB.APSvrs

Start of instruction setTo install these libraries:

  1. Create a z/VSE sublibrary for the code pages.

    * $$ JOB JNM=CRUESL,CLASS=0,DISP=D,LDEST=(,xxxxxx)
    * $$ LST CLASS=A,DISP=D
    // JOB LIBRDEF
    // ASSGN SYS005,DISK,VOL=vvvvvv,SHR
    // DLBL DDECSOJ,'SAG.ADABAS.LIB',2099/365,SD
    // EXTENT SYS005,vvvvvv,1,0,ssss,tttt
    // EXEC LIBR
    DEFINE L=DDECSOJ R=Y
    /*
    /&
    * $$ EOJ
  2. Create a z/VSE sublibrary for APS.

    * $$ JOB JNM=CRUAPS,CLASS=0,DISP=D,LDEST=(,xxxxxx)
    * $$ LST CLASS=A,DISP=D
    // JOB LIBRDEF
    // ASSGN SYS005,DISK,VOL=vvvvvv,SHR
    // DLBL DDECSOJ,'SAG.APS.LIB',2099/365,SD
    // EXTENT SYS005,vvvvvv,1,0,ssss,tttt
    // EXEC LIBR
    DEFINE L=APSvrsnn R=Y 
    DEFINE L=APSvrs      R=Y
    /*
    /&
    * $$ EOJ 
  3. Restore the UES code pages sublibrary to this file. Refer to the Software AG Product Delivery Report for the file positions on the distribution tape.

    * $$ JOB JNM=RESTECS,DISP=D,CLASS=0,LDEST=(,xxxxxx)
    * $$ LST DISP=D,CLASS=A
    // JOB RESTECS
    // ASSGN SYS005,DISK,VOL=vvvvvv,SHR
    // DLBL ADALIB,'SAG.ADABAS.LIB',2099/365,SD
    // EXTENT SYS005,vvvvvv,1,0,ssss,tttt
    // ASSGN SYS006,cuu
    // MTC REW,SYS006
    // EXEC LIBR,PARM='MSHP'
    RESTORE SUBLIB=SAGLIB.ADAvrsCS:ADALIB.DDECSOJ -
    TAPE=SYS006 -
    LIST=YES -
    REPLACE=YES
    /*
    // MTC REW,SYS006
    // ASSGN SYS006,UA
    /&
    * $$ EOJ
  4. Restore the APS sublibraries. Refer to the Software AG Product Delivery Report for the file positions on the distribution tape.

    * $$ JOB JNM=RESTAPS,DISP=D,CLASS=0,LDEST=(,xxxxxx)
              * $$ LST DISP=D,CLASS=A
              // JOB RESTAPS
              // ASSGN SYS005,DISK,VOL=vvvvvv,SHR
              // DLBL APSLIB,'SAG.APS.LIB',2099/365,SD
              // EXTENT SYS005,vvvvvv,1,0,ssss,tttt
              // ASSGN SYS006,cuu
              // MTC REW,SYS006
              // EXEC LIBR,PARM='MSHP'
              RESTORE SUBLIB=SAGLIB.APSvrsnn:ADALIB.APSvrsnn -
              TAPE=SYS006 -
              LIST=YES -
              REPLACE=YES
               /*
              // MTC REW,SYS006
              // ASSGN SYS006,UA
              /&
              * $$ EOJ 
  5. Repeat the previous step for SAGLIB.APSvrs.

  6. Modify the Adabas startup JCL, adding the UES environment section after the ADARUN parameters:

    ADARUN .....
    ADARUN ....
    /*
    TCPIP=NO   
    ENVIRONMENT_VARIABLES=/DDECSOJ/ADAvrs/ENVVARS.P
    /*
    /&
    * $$ EOJ

    Note:
    TCPIP=NO must always be specified in the APS parameter list, regardless of the ADARUN TCPIP parameter setting.

    Reference the library where the libraries were restored in your Adabas startup procedure:

    // ASSGN SYS005,DISK,VOL=vvvvvv,SHR
    // DLBL DDECSOJ,SAG.ADABAS.LIB,2099/365,SD
    // EXTENT SYS005,vvvvvv,1,0,ssss,tttt

    And add the libraries to the LIBDEF chain:(be sure SAGLIB.APSvrsnn is referenced before SAGLIB.APSvrs):

    // DLBL APSLIB,SAG.APS.LIB,2099/365,SD
    // EXTENT SYS006,vvvvvv,1,0,ssss,tttt
    // LIBDEF PHASE,SEARCH=(SAGLIB.USRLIB,SAGLIB.ADAvrs... X
    SAGLIB.AOSvrs,SAGLIB.ADEvrs,SAGLIB.ACFvrs,...X
    DDECSOJ.DDECSOJ, X
    APSLIB.APSvrsnn,APSLIB.APSvrs)
    // LIBDEF OBJ,SEARCH=(SAGLIB.USRLIB,SAGLIB.ADAvrs... X
    SAGLIB.AOSvrs,SAGLIB.ADEvrs,SAGLIB.ACFvrs, X
    DDECSOJ.APSvrsnn,DDECSOJ.APSvrs)
    // LIBDEF SOURCE,SEARCH=(SAGLIB.USRLIB,SAGLIB.ADAvrs,... X
    SAGLIB.AOSvrs,SAGLIB.ADEvrs,SAGLIB.ACFvrs, X
    APSLIB.APSvrsnn,APSLIB.APSvrs)
    // LIBDEF PHASE,CATALOG=SAGLIB.USRLIB

    If you are running UES with TCP/IP support, set up the LIBDEF chain as follows (setup of the WCPvrs and WTCvrs libraries referenced in this chain is described in your Entire Net-Work documentation):

    // DLBL APSLIB,SAG.APS.LIB,2099/365,SD
    // EXTENT SYS006,vvvvvv,1,0,ssss,tttt
    // LIBDEF PHASE,SEARCH=(SAGLIB.USRLIB,SAGLIB.ADAvrs... X
    SAGLIB.AOSvrs,SAGLIB.ADEvrs,SAGLIB.ACFvrs,...X
    SAGLIB.WCPvrs,SAGLIB.WTCvrs,... X
    DDECSOJ.DDECSOJ, X
    APSLIB.APSvrsnn,APSLIB.APSvrs)
    // LIBDEF OBJ,SEARCH=(SAGLIB.USRLIB,SAGLIB.ADAvrs... X
    SAGLIB.AOSvrs,SAGLIB.ADEvrs,SAGLIB.ACFvrs, X
    SAGLIB.WCPvrs,SAGLIB.WTCvrs,... X
    DDECSOJ.APSvrsnn,DDECSOJ.APSvrs)
    // LIBDEF SOURCE,SEARCH=(SAGLIB.USRLIB,SAGLIB.ADAvrs,... X
    SAGLIB.AOSvrs,SAGLIB.ADEvrs,SAGLIB.ACFvrs, X
    APSLIB.APSvrsnn,APSLIB.APSvrs)
    
  7. Modify the ENVVARS.P file, adding the following line in the APSvrs library:

    * This member contains Environment Variables used by APS and
    * APS-based applications.
    *
    ECSOBJDIR=FILE://DDECSOJ/DDECSOJ
  8. Run the ADADEF utility setting UES=YES:

    * $$ JOB JNM=ADADEF,CLASS=0,DISP=D,LDEST=(,xxxxxx)
    * $$ LST CLASS=A,DISP=D
    // JOB ADADEF EXECUTE THE ADABAS VERSION 7 UTILITY ***DEF***
    // OPTION LOG,PARTDUMP
    *
    // EXEC PROC=ADALIB
    *
    // EXEC PROC=ADAFIL
    *
    // EXEC ADARUN,SIZE=ADARUN
    *
    ADARUN PROG=ADADEF,MODE=SINGLE,SVC=svc,DEVICE=dddd,DBID=nnnn
    /*
    ADADEF MODIFY UES=YES
    /*
    /&
    * $$ EOJ
  9. Start the database.

    You should see the following message:

    ENTIRE CONVERSION SERVICES INITIALIZED