ims 15 application enhancements - ims ug october 2017 dallas

36
© 2014 IBM Corporation © 2012 IBM Corporation IMS Version 15 © 2017 IBM Corporation IMS 15 Application Enhancements

Upload: ibm-ims

Post on 23-Jan-2018

167 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: IMS 15 application enhancements - IMS UG October 2017 Dallas

© 2014 IBM Corporation

© 2012 IBM Corporation

IMS Version 15

© 2017 IBM Corporation

IMS 15 Application Enhancements

Page 2: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application: 298

IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion. Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described

for our products remains at our sole discretion.

IBM, the IBM logo, ibm.com, z Systems, IMS, and z/OS are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. If these and other IBM trademarked terms are marked

on their first occurrence in this information with a trademark symbol (® or ™), these symbols indicate U.S. registered or common law trademarks owned by IBM at the time this information was published. Such trademarks may also be

registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at

“Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml

Other company, product, or service names may be trademarks or service marks of others.

THE INFORMATION CONTAINED IN THIS PRESENTATION IS PROVIDED FOR INFORMATIONAL PURPOSES ONLY. WHILE EFFORTS WERE MADE TO VERIFY THE COMPLETENESS AND ACCURACY OF THE INFORMATION

CONTAINED IN THIS PRESENTATION, IT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. IN ADDITION, THIS INFORMATION IS BASED ON IBM’S CURRENT PRODUCT PLANS AND STRATEGY,

WHICH ARE SUBJECT TO CHANGE BY IBM WITHOUT NOTICE. IBM SHALL NOT BE RESPONSIBLE FOR ANY DAMAGES ARISING OUT OF THE USE OF, OR OTHERWISE RELATED TO, THIS PRESENTATION OR ANY OTHER

DOCUMENTATION. NOTHING CONTAINED IN THIS PRESENTATION IS INTENDED TO, NOR SHALL HAVE THE EFFECT OF, CREATING ANY WARRANTIES OR REPRESENTATIONS FROM IBM (OR ITS SUPPLIERS OR

LICENSORS), OR ALTERING THE TERMS AND CONDITIONS OF ANY AGREEMENT OR LICENSE GOVERNING THE USE OF IBM PRODUCTS OR SOFTWARE.

© Copyright International Business Machines Corporation 2017. All rights reserved.U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with

IBM Corp.

Trademarks, copyrights, and disclaimers

Page 3: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

Topics

� New Program Creation User Exit

� Dynamic Program Refresh

� IMS Java Enhancements

� IMS Enterprise Suite/z/OS Connect

– Explorer for Development

– WLM Mobile/Cloud Workload Pricing

– IMS Service Provider

– IMS application call APIs

299

Page 4: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

Program Creation User Exit

� Current IMS Versions a BMP or JBP program resource must be defined to an IMS system before it can be scheduled

– IMS requires the program directory (PDIR) be defined to the system

• Run an IMS SYSGEN defining the program with a stage-1 APPLCTN macro

• Use the IMS type-2 DRD “CREATE PGM” command

– If the PDIR is not defined before program execution -> U0428 ABEND

� IMS 15 the PGMCREAT (Program Creation) type user exit can dynamically create the PDIR runtime control block

– Creation of the program resource can be postponed until the program is to be scheduled by an IMS BMP or JBP

• Can also create one runtime database control block (DDIR)

– Dynamic Resource Definition (DRD) must be configured and enabled

– PSB for the created program must be in ACBLIB or in the IMS Catalog

– Provides function similar to the output destination creation exit, DFSINSX0

300

Page 5: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

IMS System Definitions

� Dynamic resource definition must be configured and enabled by specifying MODBLKS=DYN in the DFSDFxx or DFSCGxxx PROCLIB member

� Define the exit(s) in the USER_EXITS section of DFSDFxxx PROCLIB member

� User exit can be enabled by one of the following:

– Restart the IMS System

– Use type-2 REFRESH USEREXIT command to load a new copy of the exit

• REFRESH USEREXIT TYPE(PGMCREAT) MEMBER(PX0)

<SECTION=USER_EXITS><SECTION=USER_EXITS><SECTION=USER_EXITS><SECTION=USER_EXITS>EXITDEF=(TYPE=PGMCREAT,EXITDEF=(TYPE=PGMCREAT,EXITDEF=(TYPE=PGMCREAT,EXITDEF=(TYPE=PGMCREAT,EXITS=(exitnme1,DFSPGCX0))EXITS=(exitnme1,DFSPGCX0))EXITS=(exitnme1,DFSPGCX0))EXITS=(exitnme1,DFSPGCX0))

301

Page 6: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

IMS Query Command

� Sample Type-2 Commands

• QUERY USEREXIT TYPE(PGMCREAT) SHOW(CALLS,RTIME)

ExitType ModName MbrName CC Calls RefreshTime

PGMCREAT DFSDFPX0 IMS1 0 1 2013-04-22 10:20:41.12

• REFRESH USEREXIT TYPE(PGMCREAT)

ExitType ModName MbrName CC

PGMCREAT DFSDFPX0 IMS1 0

• QUERY DB NAME(PSSH1VA) SHOW(DEFNTYPE)

DBName MbrName CC DEFNTYPE

PSSH1VA IMS1 0 PGMCREAT

• QUERY PGM NAME(BMP255) SHOW(DEFNTYPE)

PgmName MbrName CC DEFNTYPE

BMP255 IMS1 0 PGMCREAT

302

Page 7: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

Documentation Changes

• New application ABEND Codes

• U0421 if BMP type mismatch

• U0423 if USERX service failure

• U0424 if CREATEPGM bit is not set in the exit routine

• U0425 if program creation failure

• U0426 if DB creation failure

� Log record changes

– X’22’ log record is written

• Indicates the PGMCREAT user exit created the resource

� If you request an invalid option in the exit, IMS ignores the request and continues normal processing

303

Page 8: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

Dynamic Program Refresh Enhancements

� Dynamic program refresh support enhanced

– The UPD PGM START(REFRESH) command now supports refresh for:

• DFSMPLxx preloaded programs running in MPP and IFP regions

– MPP support is for programs preloaded by DFSMPLxx and scheduled in PWFI regions or in regions with WFI=YES transactions

• Programs scheduled in Fast Path IFP regions

– The refreshed program is loaded on the next schedule of the program

� Benefit

– No need to terminate an active region to refresh an application program

• MPP and IFP regions remain available to process other programs

– Reduces operational considerations for implementing program modifications

– Speeds up and simplifies rollout of application program changes

304

Page 9: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

Dynamic Program Refresh Restrictions

� Subprograms are not supported

� FastPath Utilities are not supported

� Programs running in non-(P)WFI regions or non-IFP regions are not supported

305

Page 10: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

IMS Java Enhancements

� Challenge

– Java applications storage constrained by the 31 bit Java Virtual Machine (JVM)

– Application can change IMS managed JVM environment variables

– Java Virtual Machine usage statistics

� Solution

– IMS APAR PI64142 Java Dependent Regions (JMP/JBP)

• Provide Java applications heap storage relief with a 64-bit JVM

• IMS APAR PI64241Universal Driver support for 64-bit JVM

– IMS APAR PI68127 Java Dependent Regions (JMP/JBP)

• Support definition of Java environment variables within IMS DR JCL

– IMS APAR/PTF PI51753/UI34117 and APAR/PTF PI30848/UI34793

• Tracking of JVM usage statistics

� Business Value

– Customers can deploy Java applications without regard to storage constraints.

– Better security controls greater flexibility in configuring their Java environments

Target Market:

All IMS Java users

Page 11: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

JVM 64-bit Solution

� New parameter for IMS JMP and JBP dependent regions

– JVM=31 loads a 31 bit LE environment and loads a 31 bit JVM

• Default value

– JVM=64 loads a 64 bit LE environment and loads a 64 bit JVM

� New DFSJVM64 (AMODE=64) load module in IMS.SDFSJLIB

– Needed with JVM=64

� New message and abend code

– DFS529E AN INVALID VALUE IS SPECIFIED ON THE JVM EXEC PARAMETER

– U0529 AN INVALID VALUE IS SPECIFIED ON THE JVM EXEC PARAMETER

� Update ENVIRON=DFSJVMEV

– LIBPATH must specify 64 bit JVM

� Requires IBM 64 bit JVM 7.0.0 or higher

307

Page 12: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

Configuring the JVM using JCL & a Shell-like syntax

� Runtime

– IMS Java JMP and JBP dependent regions

� Current

� Application can change IMS managed JVM environment variables

� JVMOPMAS= and ENVIRON=

� A separation of responsibility is not possible.

� Solution

– BPXBATCH utility to launch JVM

– Support definition of Java environment variables within IMS DR JCL

– //stdenv dd statement

– allows for the concatenation of multiple files to create a Shell-like script to replace JVMOPMAS and ENVIRON.

� Benefit

– Better security controls

– Greater flexibility in configuring their Java environments.

308

Page 13: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

//JAVA EXEC PROC=DFSJMPS,

// RGN=….

//STDENV DD DSN=hlq1.IMSCONF(IMS1OPT)

DD DSN=hlq2.IMSCONF(IMS1ENV)

DD DSN=hlq2.IMSCONF(IMS1MAIN)

export APP_HOME=/imsapp

LIBPATH="$LIBPATH":"${APP_HOME}"/native

export LIBPATH="$LIBPATH":

CLASSPATH="$CLASSPATH":"${APP_HOME}"/classes

export LIBPATH="$LIBPATH":

export CLASSPATH="$CLASSPATH":

# Use this variable to supply

arguments to main:

JZOS_MAIN_ARGS=“gofast"

Moved from ENVIRON=DFSJVMxx

-Xoptionsfile

309

Configuring the JVM using JCL & a Shell-like syntax

Page 14: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

# IMS1OPT file

# -X IBM JVM runtime options

-Xshareclasses:name=imsjvm

*-Xmaxf0.8

*-Xss256k

*-Xmx64M

*-Xms1M

# -D Java system properties

-Djava.class.path=SamplesPath/samples.jar:>

Appl1Path/myapp1.jar:App2Pathmyapp2.class:>

ImsjavaPath/imsudb.jar:ImsjavaPath/imsutm.jar

IMS1OPT file example

Page 15: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

JVM statistics for memory usage

• Challenge• There is no easy way to capture statistics about the usage of memory by a

persistent Java virtual machine in an IMS JVM enabled dependent region

• Solution• IMS APAR/PTF PI51753/UI34117 and APAR/PTF PI30848/UI34793

• Provide optional SMF records that can be used for application charge back

•SMF type 29, subtype 02 records

• Parameters in DFSJVMEV,DFSMBR,DFSJMP,DFSJBP,IMSBATCH

• JLEOPT=N

• SMFINTERVAL=6000

• Business Value

• An IMS SMF record provides a way to capture JVM statistics

Target Market:IMS Java customers who need capture statistics about the usage of memory by

a persistent Java virtual machine (JVM)

27

Page 16: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

IMS Enterprise Suite

� Challenge

– IMS Mobile Feature distribution

– IMS SOAP Gateway customized SOAP headers

– IMS Explorer for Development Enhancements

� Solution

– IMS APAR PI70432

• IMS Service Provider included in z/OS Connect EE V2.0.5 +

– IMS IMS SOAP Gateway 3.2

• Customized SOAP headers for synchronous callout

• Dynamic destination routing for synchronous callout

• ICAL specifies the XML converter.

– IMS Explorer for Development 3.2.1.12

� Business Value

– Simplifies the installation and getting started process for Mobile

– Customer application control of SOAP

– Better transport security controls

Target Market:

All IMS Enterprise Suite users

Page 17: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

Changes

� IMS Enterprise Suite for z/OS V3.2.1 (5655-TDA).

– No further enhancements will be delivered for IMS Mobile Feature Pack for z/OS

Connect (FMID JAHF32A)

– No further enhancements will be made to the IMS Java Message Service API (FMID

JAHF322)

– Java Message Service (JMS) API (FMID JAHF322) will no longer be

packaged with the IMS Enterprise Suite

• Obtain the JMS API either through the Java EE installation or through the publicly available Maven repository.

� The following changes apply to IMS Enterprise Suite for Distributed Systems:

– IMS Explorer for Development 3.2.1 is the last release to include a Windows 32-bit

install option

– No further enhancements will be delivered for IMS Data Provider for Microsoft.NET

V3.2

313

Page 18: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

IMS Explorer Versions

314

� Version 3.2.1.12 fix– SQL parser incorrectly showed SQL syntax errors when the SELECT

statement includes a JOIN operator.

� Version 3.2.1.11 fixes

– The secondary index syntax in the generated DLIDatabaseView is incorrect

when the XDFLD alias is different from the XDFLD name

– In the Data Source Explorer view, PARENT decoration is incorrectly set to

null when the TABLE (SENSEG) alias is different from the TABLE name.

– Submitting IMS DDL statements failed with the following error: "-198: The operand of a statement contains all blanks or is an empty string." due to an

incorrect version of IMS Universal JDBC driver that was included.

� Version 3.2.1.10

– DBD is mapped with a COBOL copybook

• numeric-edited data fields processed as fields of data type CHAR.

– IMS Explorer is unable to access tables or segments

• IMS catalog PCB DFSCAT00 when using the catalog PSB DFSCP001

• This issue has been resolved.

Page 19: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

WLM Mobile/Cloud Workload Pricing

� Challenge Addressed

– Difficult to track and report the CPU Time for these Mobile/Cloud workloads

� Solution

– Use Workload Manager (WLM) Classification Rules to simplify cloud/mobile workload reporting

� Business Value

– Provide data for processing cloud/mobile workloads on IMS.

– IBM z Systems Workload Pricing for Cloud and Mobile Workload

• Can reduce the cost of growth for new workloads

Target Market:

IMS Mobile/Cloud users who need to

track IMS CPU processing

Page 20: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

WLM Mobile/Cloud Workload Pricing

� Customers must be able to identify mobile/cloud transaction using:

– Client Transaction Name (CTN):

• IMS OTMA TPIPE name (Specified in Interaction Profile)

– CM0 Generated Client ID GMPxxxxx

– CM1 IMS Connect Port Number

– Connection Type (CT):

• IMS Connect port number (Specified in Connection Profile)

– LUNAME:

• VTAM LU cannot classify mobile/cloud requests

– Use LTERM override (Specified in Interaction Profile)

• Note Application Program logic maybe impacted

316

Page 21: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

Mobile workflow processing points

LPAR Az/OS

IMS DB

IMS CTL

T

C

P

I

P

LPAR B

XCF

IMS Connect

XCF

XCF

OTMA

IMS Connect

9999

5555

XC

F XCF

S D

Y I

S S

P T

L R

E I

X B

U

T

E

R

9999

5555

Client Transaction Name (CTN):

TPIPE CM1=5555

Connection Type (CT):

PORT=5555

LUNAME:

MYMOBILE

Connection Profile

Mobile Connection Type=5555

WebSphere

Application Server

for z/OS

Liberty Profile

IMS

Service Provider

z/OS Connect EE

LPAR C

CT/CTN= 5555

LUNAME=MYMOBILE

IMS Connect generate a

unique client ID

Page 22: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application: 318

Sub-Capacity Reporting Tool (SCRT).

Page 23: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

IMS Service Provider

� z/OS Connect EE V3 Server

� Use IMS Explorer to create and test services that run on z/OS® Connect EE V2 only.

� For z/OS Connect EE V3, use the z/OS Connect EE API toolkit

319

API

Request

WebSphere

Liberty Profile

TCP/IP

IMS

Service Provider

z/OS Connect IMS

Connect

O

T

M

A

IMS Transaction

Manager

IMS

application

DB2

IMS

DB

IMS

applicationIMS

application

Page 24: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

z/OS Connect EE V3 –Server-API Toolkit-API EditorIMS Explorer for Development

320

Page 25: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

.sar file is created from a copybook using the

Eclipse-based API toolkit service project editor

Connect to IMSCreate the service definition

Page 26: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

Configure the connection to IMS through ims-connections.xmland ims-interactions.xml in the IMS service registry.

Use the API toolkit to configure the server.xml file.

Connect to IMSTopology

Page 27: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

What’s New – Large Data Structures

� zOS Connect EE V3

– Supports large data structures (>32K IMS standard segmentation)

• IMS applications must invoke the supplied sample COBOL utilities BAQGETS and BAQSETS instead of interacting with the IMS message

queue directly

Large IMS data structure support is automatically enabled when the IMS service provider detects that an IMS service, created by using z/OS® Connect EE API toolkit, is based on an input or

output transaction message that consists of a single segment whose data structure has a maximum length that exceeds 32 KB.

ICAL TRANB

Page 28: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

� z/OS Connect EE V3 allows IMS applications to be the API requester

What’s New - Calling an External API

Page 29: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

� Step 1 – Configure a communication stub

– Only needs to be done, one time per subsystem

� Step 2 - Generate API requester archive from swagger

– Generate .ARA file, and API client code

The 5 steps

• ibm.biz/zosconnect-configure-comms-stub

• ibm.biz/zosconnect-generate-ara

Page 30: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:© 2017 IBM Corporation

326

Step1 Configuring IMS

• IMS.IMSZ.PROCLIB(MPRLEOPT)

POSIX(ON),

ENVAR("BAQURI=HTTP://ZSERVER.IBM.COM",

"BAQPORT=7777")

• IMS Dependent Region JCL

• //STEPLIB DD DSN=IMS.IMSZ.SDFSRESL,DISP=SHR

// DD DSN=IMS.IMSZ.PGMLIB,DISP=SHR

// DD DSN=IMS.IMSZ.PGMPDSE,DISP=SHR

// DD DSN=ZOSCON.V3R0.SBAQLIB,DISP=SHR

Page 31: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:© 2017 IBM Corporation

327

Step 2 API requester code generation for z applications

API Description via Open API DocRequest and

Response copybooks Request and

Response copybooks

API infocopybookAPI info

copybook

GenerateGenerate

*Request and Response data structure

01 REQUEST

COPY API00Q01

01 RESPONSE

COPY API00P01

01 API-INFO

COPY API00I01

77 COMM-STUB-PGM-NAME PIC X(8)VALUE

‘BAQCSTUB’

*Set request data

MOVE input-value TO REQUEST-DATA

SET BAQ-REQUEST-PTR TO ADDRESS OF REQUEST

SET BAQ-RESPONSE-PTR TO ADDRESS OF RESPONSE

* One simple call to invoke API

Call COMM-STUB-PGM-NAME

using API-INFO …

BAQ-REQUEST-PTR …

BAQ-RESPONSE-PTR …

* Display response data

DISPLAY “Output: “ RESPONSE-DATA

IMS / BATCH / COBOL / PLI app

Configuration file (ARA)

Configuration file (ARA)

Command-line Build

toolkit

z developer does not need to write complex code to parse JSON messages nor to handle HTTP calls

Page 32: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

� Step 3 – Configure the HTTP(S) endpoint

– Connection between zOS Connect EE and the external API

� Step 4 – Deploy the API requester (.ara) archive

– Deploy the API requester archive to the APIRequester directory

The 5 steps …

• ibm.biz/zosconnect-configure-endpoint-connection

Page 33: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:© 2017 IBM Corporation

329

Step 3 Configuring server.xml

<featureManager> <feature>zosconnect:apiRequester-

1.0</feature> </featureManager>

<zosconnect_endpointConnection id=“an-api"

host="https://hostname" port=“NNNN"/>

<zosconnect_apiRequesters

location="/var/zosconnect/servers/zosconnect/resources/zosco

nnect/apirs">

<apiRequster name="apiRequesterY" connectionRef=“an-api"/>

</zosconnect_apiRequesters>

Page 34: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:© 2017 IBM Corporation

330

Step 4 Deploy the API requester archive file to z/OS Connect EE

Copy the anapi.ara file to z/OS Connect EE’s dropinsfolder for API requester

anapi.ara

Page 35: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:

� Step 5 – Update the IMS application

– Add the API generated client code to your existing application and use it to

make the external API call

The 5 steps …

• ibm.biz/zosconnect-configure-requester-zos-application

Done !!!

Page 36: IMS 15 application enhancements - IMS UG October 2017 Dallas

IMS Version 14 IMS Version 15

Application:© 2017 IBM Corporation

332

Step 5 Code application

Code application with the generated artifacts and use the communication stub to call the API