What are the instructions/documentation on installing, configuring and using IDMS Server on the mainframe and providing ODBC and JDBC access?
Release: All supported releases.
Component: IDMS Server.
IDMS Server allows access to an IDMS database using SQL so the SQL Option must be installed as well. Access can be from Windows or Unix systems using ODBC or JDBC protocols. For information on using IDMS Server, see IDMS Server.
Mainframe Configuration
Make sure that the IDMS Server entry is enabled in RHDCPINT. This line must be un-commented and RHDCPINT re-linked.
#DEFPINT SERVER CA IDMS SERVER
For mainframe configuration information, see Configure IDMS Server on the Mainframe.
SYSGEN
The default port for the IDMS Server listener is 3709. The example in the documentation uses port 3781. Use the TSO command NETSTAT to see if any of these ports are in use.
//TSOBATCH EXEC PGM=IKJEFT01
//SYSTSOUT DD SYSOUT=*
//SYSTSPRT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSTSIN DD *
NETSTAT CONN (PORT 3709
NETSTAT CONN (PORT 3781
/*
Run the SYSGEN in batch to add the TCP/IP entity, TCP/IP line and terminals, see sample JCL below. Refer to documentation section TCP/IP Support for details of the TCP/IP entity. Change the system number to the number of the CV:
//SYSGEN EXEC PGM=RHDCSGEN,REGION=4M
//STEPLIB DD DISP=SHR,DSN=IDMS.R19.DBA.LOADLIB
// DD DISP=SHR,DSN=IDMS.R19.CUSTOM.LOADLIB
// DD DISP=SHR,DSN=IDMS.R19.CAGJLOAD
//SYSCTL DD DISP=SHR,DSN=IDMS.R19.SYSCTL
//SYSLST DD SYSOUT=*
//SYSPCH DD SYSOUT=*
//SYSIDMS DD *
ECHO=ONDMCL=GLBLDMCL
//SYSIPT DD *
SIGNON DICTIONARY SYSTEM.
SET OPT FOR SESSION DEF ON NO LIST INP 1 THRU 72.
MODIFY SYSTEM xx.
ADD TCP/IP
DEFAULT STATUS IS ON
DEFAULT TCP_NODELAY OPTION IS OFF
DEFAULT STACK IS DEFAULT
MAXIMUM NUMBER OF SOCKETS IS DEFAULT
MAXIMUM NUMBER OF SOCKETS PER TASK IS DEFAULT
PLUGIN MODULE IS RHDCD1IP
SERVICES FILE IS OFF.
ADD LINE TCPIP
TYPE IS SOCKET
MODULE RHDCD1IP.
ADD PTERM TCPJSRV
TYPE IS LISTENER
PORT IS 3781
TASK IS RHDCNP3J
MODE IS SYSTEM
PARM IS 'TASK=IDMSJSRV'.
ADD LTERM TCLJSRV
PTERM IS TCPJSRV.
ADD PTERM TCP0001
TYPE IS BULK
REPEAT COUNT IS 99.
ADD LTERM TCL0001
PTERM IS TCP0001.
GENERATE.
/*
RHDCNP3J security
Security for task RHDCNP3J must be disabled. Add the following lines to the RHDCSRTT module then assemble and link it. The module source is in the CUSTOM.SRCLIB.
#SECRTT TYPE=OCCURRENCE, X
RESNAME='RHDCNP3J', X
RESTYPE=TASK, X
SECBY=OFF
The JCL to assemble and link RHDCSRTT is in CAGJSAMP member RHDCSRTT, or see below:
//RHDCSRTT EXEC HLASMCL
//C.SYSLIB DD DISP=SHR,DSN=<SYSTEM.MACLIB>
// DD DISP=SHR,DSN=<SYSTEM.MODGEN>
// DD DISP=SHR,DSN=<CAIDMS.CAGJMAC>
// DD DISP=SHR,DSN=<CA.COMMON.SERVICE.MACLIB>
//C.SYSIN DD *
* YOUR RHDCSRTT SOURCE CODE GOES HERE
/*
//*
//L.SYSLMOD DD DISP=SHR,DSN=<YOUR.CUSTOM.LOADLIB>
//L.SYSIN DD *
SETOPT PARM(REUS(REFR))
ORDER RHDCSRTT
ENTRY SRTTEP1
NAME RHDCSRTT(R)
/*
STARTUP JCL
The IDMS CV startup JCL also needs to have a SYSTCPD dataset defined:
//SYSTCPD DD DISP=SHR,DSN=VTAM.TCPIP.TCPIP.DATA
See documentation section Configure Your IDMS System to Use TCP/IP.
Verifying Mainframe Configuration
Once the CV is cycled with the correct definitions, verify the SRTT with:
DCMT D SRTT
At startup, the following messages should appear:
DC390015 V19 OPENING LINE TCPIP
DC088071 V19 T0 Initialization TCP/IP environment started.
DC088024 V19 T0 Starting checking status of TCP/IP stack TCPxxxx
DC088025 V19 T0 Status of TCP/IP stack TCPxxxx is active
DC088072 V19 T0 Initialization TCP/IP environment completed. TCP/IP is active.
DC013004 V19 T0 ATTACHING DRIVER FOR LINE TCPIP
DC088001 V19 T25 Line TCPIP Pterm TCPJSRV listener initiated on port 03716
DCMT D TCPIP should show it as active.
DCMT D LINE TCPIP should show the line as INSRV.
TCPJSRV should match the port number defined on the line with the startup message shown above.
TCPJSRV TCPJSRV LIST InSrv 03716
Download Latest version of the ODBC and JDBC drivers
The latest published PTF for IDMS Server contains the latest version of the ODBC and JDBC drivers. Currently as of August 15, 2024, it is PTF LU12591.
Testing with IDMSJCF tool
Once the above is verified, test it with the IDMSJCF tool, which comes with IDMS Server on Windows. It comes as a jar file which can be run directly from the shortcut in the IDMS Server menu.
In Windows:
Get the port number from the line, DCMT D LINE TCPIP.
Get the host name from the SYSTCPD dataset in the startup JCL.
The default dictionary of APPLDICT is used in this example.
Include the appropriate SQL definitions in the default dictionary associated with the URL. The SQL definitions reside in the catalog area of the dictionary.
Once it's connected, verify access to the IDMS SQL tables from the IDMS mainframe databases. In the JCF Demo App panel, enter the command:
SELECT * FROM SYSTEM.TABLE
Press the Execute button to run the command and receive the output.
ODBC Configuration
For ODBC configuration information, see Configure IDMS Server on Windows.
JDBC
To use JDBC on Windows or Unix, there is nothing to configure on the client side.
The JDBC driver supports Type 4 connections which communicate directly to IDMS using TCP/IP. See the explanation in section Components. Code a Java program that uses JDBC to access the IDMS database. The program logic would be in the JDBC program. See the documentation section JDBC Programmer Reference. There are also some Sample Programs available.