Making SPUFI work with different terminal CCSIDs

In some cases, a terminal CCSID might be different from the SPUFI CCSID. If the terminal CCSID cannot be changed to the SPUFI CCSID, consider creating additional SPUFI packages and plans that specify the terminal CCSID encoding.

About this task

You can then use the SPUFI default panels to use the plans with the special CCSID encoding instead of the Db2-supplied plans (DSNESPCS, DSNESPRR, and DSNESPUR).

Procedure

To make SPUFI work with different terminal CCSIDs, use the following example:

Suppose that when you install Db2, you create the SPUFI plans and packages using ENCODING(EBCDIC), and the default subsystem CCSID for EBCDIC data, as specified on installation panel DSNTIPF in the EBCDIC CCSID field. Most of the people in your organization use this CCSID as their terminal CCSID, so they do not encounter errors. However, a large group of Db2 application programmers code in the C language and prefer CCSID 1047 as their terminal CCSID. You can prevent this group from corrupting Db2 data and receiving errors by completing the following tasks:
  1. Bind SPUFI packages and plans specifically for users who require a terminal CCSID setting of 1047.

    For example, your commands might look like the following commands:

    Begin general-use programming interface information.
    BIND PACKAGE(TIAP1047) MEMBER(DSNTIAP) -
         ACTION(REPLACE) ISOLATION(CS) ENCODING(1047) -
         LIBRARY('prefix.SDSNDBRM')
    BIND PACKAGE(SPCS1047) MEMBER(DSNESM68) -
         ACTION(REPLACE) ISOLATION(CS) ENCODING(1047) -
         LIBRARY('prefix.SDSNDBRM')
    BIND PLAN(SPCS1047) -
         PKLIST(SPCS1047.DSNESM68 -
                TIAP1047,DSNTIAP) -
         ISOLATION(CS) ENCODING(1047) ACTION(REPLACE)
    BIND PACKAGE(SPRR1047) MEMBER(DSNESM68) -
         ACTION(REPLACE) ISOLATION(RR) ENCODING(1047) -
         LIBRARY('prefix.SDSNDBRM')
    BIND PLAN(SPRR1047) -
         PKLIST(SPRR1047.DSNESM68 -
                TIAP1047,DSNTIAP) -
         ISOLATION(RR) ENCODING(1047) ACTION(REPLACE)
    BIND PACKAGE(SPUR1047) MEMBER(DSNESM68) -
         ACTION(REPLACE) ISOLATION(UR) ENCODING(1047) -
         LIBRARY('prefix.SDSNDBRM')
    BIND PLAN(SPUR1047) -
         PKLIST(SPUR1047.DSNESM68 -
                TIAP1047,DSNTIAP) -
         ISOLATION(UR) ENCODING(1047) ACTION(REPLACE)
    
    End general-use programming interface information.
  2. Grant access to the new packages and plans to the target user group.
  3. Instruct users who use terminal CCSID 1047 to specify the following settings in the SPUFI default panels:
    • In panel DSNESP02, specify YES for CHANGE PLAN NAMES.
    • In panel DSNESP07, specify SPCS1047 in the CS ISOLATION PLAN field, SPRR1047 in the RR ISOLATION PLAN field, and SPUR1047 in the UR ISOLATION PLAN field.

    The programmers who require CCSID 1047 can now use SPUFI without receiving an error message.