Coming from a distributed world and using ISPF terminals or green screens, I was always concerned about starting a CICS application development from scratch, creating or modifying CICS resources, undoing changes, or writing a CICS snippet without assistance. I kept wondering, what if it breaks existing configuration or code?
Then I heard about IBM Z extensions within VS Code: Zowe Explorer, IBM CICS for Zowe Explorer, IBM Z Open Editor, and IBM Z Open Debug. All of these extensions make CICS development, configuration and debugging much easier!
I Started using IBM CICS for Zowe Explorer and realised the experience was still not complete:
No proper documentation, was forced to context switch, it was not well integrated with modern workflows and tools, could not insert code snippets, was forced to refresh the logs..
Recently, IBM CICS TS team has started contributing to these Open Source extensions, improving the developer experience for Mainframe and CICS developers who are keen on using VS Code.
Making the experience smooth, in-context, integrated with modern workflows and tooling, with better code editing and log integration.
We are going to see how to install IBM Z Open Editor extension and also see some of the cool features which CICS team is contributing to:
Installing and Using IBM Z Open Editor :
I have already installed Zowe explorer extension, IBM CICS for Zowe explorer extension in VS Code. In VS Code’s primary side bar we see CICS, Data Sets, UNIX System Services(USS) and jobs view.
When we open and try to edit the program, we see many feature and functionalities missing such as missing program outline and syntax highlighting, expansion of resources in editor window. To achieve all this we need another powerful extension that is IBM Z Open Editor extension to improve the overall developer experience.
Let’s see how we can install the extension, how to configure ZAPP files to view or expand copybooks and other resources remaining in context.
CICS View
In the CICS View, we can see region resources like Programs, Transactions, Local Files, Tasks, Libraries, Pipelines, TCP/IP Services, URI Maps, and Web Services. This view allows us to inspect resources, check their attributes, load a new program copy, view and inquire about programs linked to a transaction, enable or disable resources, view running tasks, purge tasks, and perform many other operations with each CICS resource listed.
CICS Resource Inspector
When developing CICS applications, we need to check if a resource is enabled or disabled, open or closed, what type of resource it is, which data set it is linked to, and what attributes are associated with it, along with their values. You can do all of this from either the editor group or the command palette.
Selecting resources in CICS tree
When developing CICS applications, if you want to view only specific resources in the CICS tree, you can do this by adjusting the IBM CICS for Zowe Explorer settings. Simply deselect the resources you don’t need in the CICS: resources settings.
Inserting CICS Code Snippet (From editor group and Command palette)
The IBM Z Open Editor offers a great set of features, one of which is inserting code snippets. You simply enter the beginning of an API, and it will show you a list of all supported APIs. You can scroll through, select an API, and insert it into your code. This feature can be accessed either from the editor group or the command palette.
Conclusion
This blog post explores the enhanced IBM Z extensions for VS Code that simplify CICS development and configuration. Key improvements include the integration of CICS View for resource management, advanced resource inspection, customisable resource selection in the CICS tree, and seamless code snippet insertion. These tools enhance the developer experience by providing smooth, in-context interactions and integration with modern workflows and tooling, making it easier for mainframe and CICS developers to work efficiently.