208
® IBM Software Group © September 2013 IBM Corporation Jon Sayles Jon Sayles RDz Technical Enablement RDz Technical Enablement [email protected] Introduction to Rational Developer for System Introduction to Rational Developer for System z z For ISPF Developers - For ISPF Developers - Assembler Version Assembler Version

® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement [email protected] Introduction to Rational Developer for System

Embed Size (px)

Citation preview

Page 1: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

®

IBM Software Group

© September 2013IBM Corporation

Jon SaylesJon Sayles

RDz Technical EnablementRDz Technical Enablement

[email protected]

Introduction to Rational Developer for System z Introduction to Rational Developer for System z For ISPF Developers - For ISPF Developers -

Assembler VersionAssembler Version

Page 2: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

2

IBM Trademarks and Copyrights

© Copyright IBM Corporation 2007, 2008, 2009, 2010. All rights reserved.

The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials 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 the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates.

This information is based on current IBM product plans and strategy, which are subject to change by IBM without notice. Product release dates and/or capabilities referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way.

IBM, the IBM logo, the on-demand business logo, Rational, the Rational logo, and other IBM Rational products and services are trademarks or registered trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others.

Page 3: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

3

Course Topics

Course Name: Rational Developer for System z

Course Description: Learn how to use Rational Developer for System z to do z/OS traditional development, maintenance, support and for Enterprise Modernization of z/OS applications

Pre-requisites: Some experience developing Assembler applications using z/OS is expected.

Course Length: ~5days depending on topics selected

Topics (Agenda) Getting Started - installing and configuring RDz - and the course materials, and using Eclipse The RDz Workbench and introduction to Eclipse

– Code analysis tools– Editing

Working with remote system resources:– Connecting to a mainframe– Data management – Accessing and editing files– Remote program Assembling

z/OS Application Development– Creating MVS Subprojects– Creating and customizing project properties

Debugging z/OS Applications– Debugging Batch Applications– Setting Debug Tool for Online Applications

Working with File Manager– Creating test data– Editing complex file-types

Working with mainframe ABENDs using Fault Analyzer– Creating Fault History views– Analyzing and solving mainframe ABENDs

Creating and modifying BMS Maps using the BMS Map Editor Optional session on using RDz for Web Service creation and consumption

Page 4: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

4

Course Contributing Authors

Thanks to the following individuals, for assisting with this course: John Ehrman/IBM Assembler Product Owner Zvi Weiss, Certified IT Specialist, Rational Software for System z Kevin McMillin, Dillards Vijay U Sankar/IBM Larry England/IBM

Page 5: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

5

Table of Contents

Learning from these slides Course assumptions RDz Workbench and Graphical Development overview Editing and Syntax Checking Source Files Appendices

Page 6: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

6

Using this PowerPoint

There are two types of slides in this PowerPoint:1. Workshop slides – which indicate that you are to "do something" using RDz (instructions

will be on the slide)

The in the slide heading.

2. All the other slides contain conceptual learning material

Some of the slides in this PowerPoint contain additional explanations and/or program code that you can use in workshops. To view a PowerPoint slide note:1. Move your mouse-pointer over the bottom of the slide border until the cursor becomes a

north-south facing pointer 2. Left-click and holding the left mouse-button down, drag the bottom border of the slide

upwards until you see the text in the note

Page 7: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

7

Course Assumptions

You know ISPF and have used it for at least two years

You have:No experience with Eclipse or RDzSome experience with PC tools

You have used MS-Windows applications for at least one yearRDz installed and running on your workstation at version 8.0.3 or later

Note that all ISPF discussion assumes IBM-installed ISPF product defaults for functionalityAnd does not include panel or command customization

Page 8: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

8

UNIT

Topics:

RDz for ISPF DevelopersRDz for ISPF Developers

The RDz Workbench – Terms and ConceptsThe RDz Workbench – Terms and Concepts Editing Assembler Programs Editing With Keystroke Shortcuts Find and Replace Dialog Creating New Programs From Scratch Miscellaneous Features – Hex edit, Content Assist Execution (control flow) and Data Flow Analysis Working with Copybooks and Property Files Appendix – ISPF / LPEX Editor Comparison

Page 9: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

9

Topic objectives

After completing this topic, you should be able to:Describe the essential RDz terms and vocabulary – as they relate back to ISPF:

View Perspective Menus

– Context menu– Toolbar menus

Work with Views: Define "view" Maximize/Minimize/Open/Close/resize different workbench views

Work with Perspectives: Define "perspective" Switch perspectives Reset (to their installation defaults)

Work with a graphical mouseAccess the help system

Page 10: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

10

MVS ResourcesMVS Resources

• z/OS Datasetsz/OS Datasets• JESJES• TSOTSO• CICS RegionCICS Region• IMS RegionIMS Region• SCMSCM• CLISTs/REXXCLISTs/REXX

What is Rational Developer for System z (RDz)?

RDz Listener Started Task

Security/AuthorizationSecurity/AuthorizationRACF/ACF-2/Top SecretRACF/ACF-2/Top Secret

RDz interacts with z/OS resources through a host-installed listener

… and interacts through JDBC drivers to data sources

RDz Client Software

Data ResourcesData Resources• DB2 Data ObjectsDB2 Data Objects• IMS DatabasesIMS Databases

JDBC

RDz also interacts with data sources (DB2 tables/views, IMS database segments)

through efficient JDBC access

Eclipse-based IDE that breaks the barriers of the green-screen platform Runs on Windows and Linux Integration point for z/OS Application Development tools

See Slide notes on SSL/Encryption and Linux client support

Page 11: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

11

Why use RDz For Traditional TSO/ISPF Development?

Developer ProductivityDeveloper Productivity RDz has an enormous assortment of tools that:

Emulate the functionality of ISPF – for fast on-ramping of veteran TSO developers Complement the functionality of ISPF – to automate, streamline and simplify the

tasks of everyday z/OS maintenance, production support and development Integrate with tools within and outside of the IBM solution set – which allow

you to tap into your site-specific trusted and mature development processes, and access high-end functionality from IBM and OEM solution providers running on Eclipse

Code QualityCode Quality RDz also has tools that improve:

Code maintainability Production application run-time efficiency

Development Environment ModernizationDevelopment Environment Modernization RDz has technology that appeals to both veteran TSO programmers and -

especially to the next-generation of z/OS developers, who are used to modern development tools

RDz is the new 3270 – and a single platform for: z/OS traditional development Java/J2EE and C++ development z/OS application modernization

Page 12: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

1212

z/OS Development, Maintenance and Production Application Support

Access Datasets/Source Files

Program Analysis

EnterpriseModernization

Source Development

CICSWeb Services

IMS SoapIMS Web 2.0

Source Navigation• Windows (Standard) Navigation• ISPF PF-keys + extensible Hot-keys• Outline View• Hover• Open Declaration / Arrow keys• Open copybooks

• Windows metaphor• Edit/Browse/View• “Favorites” – “Most recently used”

ISPF and RDz Source Editing• PF-Keys• Hexedit• Prefix Area Commands• Command Line Commands• Colorized statement support• Local History• PC Source editing functionality• Code refactoring• Wizard-driven DB2 Stored Procedure generation• Comment/Un-comment multiple lines• Access to 3270 Emulation within Eclipse• All development options “preference-enabled”

Generate:• WSDL• WSBIND file• XSD files• Deployment manifest• Stub modules• Test and Deploy WSDL• Use Cases:• Bottom Up• Top Down• Meet in the middle

Generate • XML/WSDL• COBOL/PLI converters• Manifest filesUse Cases:• Bottom Up• Top down (PL/I only)• Meet in the middle

SCM:• IBM: Team Concert, SCLM, ClearCase• CA: Endevor, Panvalet, Librarian,• Serena: Changeman• ISPW

RDz Functional Taxonomy – a Partial ListRDz Functional Taxonomy – a Partial List

Submitting/Managing Jobs• Submit and Locate Job• Integration with JES• Job Organization options (Filters)• Show JCL• Cancel/Purge

Windows Screen Real Estate• Size-able views• Multi-window development• Source Filters• Collapse/Expand paragraphs/sections

• SCM functional integration• PDS Support• Migrate/Recall Support• Local and Remote file support• Tooling support in single or across multiple LPARs

• Source and PDS Search• QSAM Data File Search• Browse Load Module• Search Load Library• Use of Regular Expressions

Program Logic tools • Control Flow Analysis• Data Flow Analysis• Where used/Where Referenced

Content Assist• COBOL, PL/I, Assembler• SQL: Embedded, Interactive• CICS statements

Dataset Management CICSService Flows• 3270 "screen scraping"• Aggregate transactions• Automate processes• Expose as web services

Syntax Check and Build• Real-time validation• Local and Remote Syntax Checking• Integration with z/OS Build Process

Test and Debug• Integration with PD Tools/Debug Tool• Integration with Xpeditor and CA-Intertest

Editing Data Sources• QSAM File Editor• DB2 Table Editor• IMS Segment Editor• VSAM File Editing with File Manager• Integration with File-Aid Plug-ins

• Allocate/ Rename/Delete• Create GDG Model• Create VSAM Dataset• Search• Compress

Code Quality• Code Review• Source Format• File Compare• All of the above functionality

Copy Files• Within an LPAR• Across LPARs• LPAR PC

Functional Integration with z/OS REXX/CLIST/3rd Party Tools:• Menu Manager• HATS• Eclipse Plug-in Integration RDz Product Integration

Languages• COBOL, PL/I, Assembler, Java, C/C++• JCL/CLIST/REXX• SQL• BMS/MFS• WSDL, HTML, XML• 4GLs supported with Eclipse Tooling

Page 13: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

13

Crossing the Chasm – From ISPFISPF to RDz

On ISPF the development paradigm consists of: Typing Familiarity with ISPF:

Panels Commands

Page 14: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

14

Crossing the Chasm – From ISPFISPF to RDzRDz Using RDz the development paradigm changes to:

Using a Graphical/Windowed IDE

…with cutting-edge tools – that scale to the complexity of your z/OS development tasks

An RDz Debug session with:

- Monitored expressions

- Dynamic data update

- Breakpoints

- Access to source tools

- Program analysis

- Flow diagram

- Navigation

- Real-time access to

Edit and Browse:- DB2 table values

- IMS Database values

- VSAM files

- QSAM files

Page 15: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

15

Crossing the Chasm – From ISPF to RDzRDz To become productive using RDz you will need to:

1. Get the hang of using a mouse for navigation 2. Understand the differences in development tool terms and concepts

3. Familiarize yourself with the RDz workbench organization – Menus, "Views" and "Perspectives"

4. Translate your existing development techniques to use RDz and learn some new ones

RDz is notnot "rocket science" but mastering it takes practice, and hands-on application

A short list of RDz benefits includes: Improved productivity – see IBM IDE Efficiency Benchmarks:

http://www-949.ibm.com/software/rational/cafe/docs/DOC-3420?approved=true

Lowered development costs through LPAR workload reduction Addition of new professional skills (Web Service development, Eclipse-based

IDE experience, model-driven development, JCA development, etc.) Better job satisfaction

Page 16: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

16

Launching Rational Developer for System z

When you launch RDz from your desktop it prompts you for a "workspace" A "workspace" is the highest-level folder on your workstation that contains:

Files that are in local z/OS projects

Meta-data ("data about data") – examples:– Your development preferences and settings

– Your z/OS connection information

C:\rdzwksp5C:\rdzwksp5

WorkstationWorkstationHard-drive Hard-drive

ISPF Option 0

Datasets stored on your PC

C:\rdzwksp5

Page 17: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

17

The RDz "Workbench" – Graphical IDE Elements – Menus and ViewsR

Dz

Work

ben

ch

Lots of tabbed Views

Menus and toolbars

Scro

llbars fo

r navig

atio

n

Page 18: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

18

ISPF Menus

- Primary Option Menu

- Individual Panel Menus

In ISPF you use menus to navigate from option to option, and from panel to panel

Your initial impression of RDz might be that virtually everything is brand-spanking new. But that's not the case.

For example, in ISPF you use menus:

Page 19: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

19

RDz Menus

And in RDz you use menus and toolbars

A Toolbar is simply a shortcut to menu functions enabled by Left-clicking on an icon

Standard Menu

Toolbar

Page 20: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

20

RDz Menus – the Context Menu

RDz also makes use of Context Menus to simplify development tasksThe context-menu is accessed by: 1. Selecting something 2. Pressing the right-mouse button

Right-mouse "Context" menu

As opposed to primarily navigation, RDz's menus provide direct access to development functionality and individual tools in the workbench

Page 21: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

21

RDz ViewsViews and PerspectivesRDz is organized as a collection of tabbedtabbed and resize-able resize-able windows called “Views”“Views”

ViewsViews display information or provide access to: - z/OS datasets

- Local projects

- Source editors

- Syntax errors

- Dataset editors

- Analysis tools

- Debug monitors

- DB2 tables

- SQL statement

results

Outline ViewOutline View

Assembler Editor ViewAssembler Editor View

RemoteRemoteSystemsSystems

ViewView

z/OS z/OS ProjectsProjects

ViewViewViewsViews

Page 22: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

22

RDz Views and PerspectivesPerspectivesTabbedTabbed and resize-able resize-able ViewsViews

Outline ViewOutline View

Assembler Editor ViewAssembler Editor View

RemoteRemoteSystemsSystems

ViewViewz/OS z/OS ProjectsProjects

A Perspective is a "collection of Views related to/organized around common tasks" – such as z/OS development, Debugging, DB2/SQL/Stored Procedure development and testing, etc.

OutlineOutlineViewView

Page 23: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

23

ISPF Panels as z/OS "Views and Perspectives"

Browse (=1)

a "view"

DSList (=3.4)

a "view"

In a sense, RDz's Views and Perspectives are simply a graphical way of organizing functionality you've been working with for years

• Think of an ISPF panel as a "View"• Think of ISPF itself as a "Perspective"

Page 24: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

24

The Benefits of an Efficient IDE (Workbench)

Instead of maneuvering through panels to access functionality and working sequentially, in RDz the functionality you need is available in concurrent views

Access Access DatasetsDatasets+ Dataset + Dataset

ManagementManagement

Access Jobs Access Jobs (Outlist facility)(Outlist facility)

Edit a programEdit a program

Dataset StatisticsDataset Statistics

Page 25: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

25

Review – Terms and Vocabulary

On z/OSOn z/OS TSO or ISPF is equivalent to an RDz "Perspective" Each ISPF panel or ISPF option/dialog is equivalent to an RDz "View"

You can also think of a perspective as an ISPF menu panel such as =3 (Utilities) You use menus and commands to navigate to and from ISPF panels/views

Using RDzUsing RDz There are different Perspectives for different kinds of development work:

z/OS Project development work (browse/edit/compile) – z/OS Perspective Debugging – Debug Perspective DB2 and SQL work – Data Perspective

Perspectives contain one-to-many "Views" Each View is specific to one specific function:

Edit Properties Access to z/OS

Views can be: Opened/closed/resized/maximized and minimized

RDz menus are primarily used to access development tools and functions

Page 26: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

26

Primer – Keyboard vs. Mouse DevelopmentKeyboard vs. Mouse DevelopmentYou will use different development techniques with RDz:

Type statements using the Editor,

Navigate through wizards, through your source files, and do other development activities with your mouse.

If you’re new to mouse development consider the following:

Left-mouse buttonSelect some thing - Click – to set focus to or to select a field - Select a file in the Editor

Scroll-bar manipulation

Double-click a file to open it in the Editor

Open a Workbench menu (at the top)

Select (Left-mouse), hold, drag and drop a resource – used primarily for: - Opening Split-Screen views in the editor - Dragging and dropping files - CICS/BMS and IMS/MFS screen painting

Right-mouse buttonOpens a “context menucontext menu” - From a program in the Editor Area - Open a Declaration or Copybook - Syntax Check - Rename/factor - Copy/Paste/Move/Delete code

Scrolling wheelUsed to scroll up/down inside source files - Fast and convenient

Page 27: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

27

Workshop – Becoming Familiar with the RDz Graphical Tools

This workshop will start you down the road to RDz mastery – in the areas of GUI editing, Workbench navigation, and Eclipse tooling.

You will: Explore graphical COBOL development techniques:

Manipulate tabs Navigate the workbench Explore menus Edit a program Syntax check a program

Recall that you will "do" or perform the tasks in the workshops on all slides that have

this symbol in the slide header

Before starting, you must have the

sample workspace unzipped onto your C:\ root drive

Version 8.5 Custom

Workspace

Page 28: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

28

Before We BeginBefore We Begin – Product Functionality and Source Code Location

In this first introductory tutorial you will learn how to navigate the RDz Workbench, analyze and edit source using programs

The program source you work on could reside on: Your PC – in a "Local Project" An IBM mainframe – in libraries or sequential datasets Your mainframe – in libraries or managed by your SCM

It does not matter where your source code is It does not matter where your source code is stored, the RDz features, functions and stored, the RDz features, functions and techniques you will learn work the same waytechniques you will learn work the same way

Eventually you will work exclusively with program source that resides on your mainframe.

However, in this class you may use program source code that resides on your local workstation, or on a mainframe.

LocalFilesAnd

Datasets

Wheredoesmy

sourcelive?

Page 29: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

29

Workshops For This Section

Time to try out the techniques shown using RDz and sample programs

You will need to have downloaded and unzipped the Custom Workspace onto your C:\ drive

This workspace contains:All of the sample programs, copybooks, JCL, etc.Starter Property Group files – for doing certain development techniquesConnections to the IBM mainframe for:

MVS Files DB2

A sample Filter and Saved Search QuerySample Snippets – for code reuse

Page 30: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

30

Workshop – Launch RDz and Select the Custom Workspace

From your desktop or the Windows startstart menu launch RDz When you are prompted for a Workspace use the Browse…

function to find: C:\rdzwksp85

RDz v9 and v8.5 users

Page 31: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

31

Workshop – Launch RDz and Select the Custom Workspace – v9

RDz opens in what is called the: z/OS Projectsz/OS Projects Perspective

If after RDz opens, you notice a "Welcome Screen", most you likely did not unzip the custom workspace correctly. To correct this: 1. Close RDz. 2. Unzip your custom workspace directly onto the c:\ root drive. 3. Re-open RDz

Page 32: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

32

Workshop – Launch RDz and Select the Custom Workspace – RDz Enterprise – v8.5

If you are using RDz Enterprise – which was delivered on or after version 8.5 – you will see an Enterprise Projects view and an Enterprise Development perspective

This course material is based on "z/OS Projects" – and so, if you are using RDz Enterprise,

please translate all content that references: z/OS Projects to Enterprise Projects throughout the course - in all workshops and in the Powerpoint slide materials

The "Enterprise Projects" view is functionally equivalent to the "z/OS Projects" view.

And the "Enterprise Development" perspective is the same as the "z/OS Projects" perspective.

Page 33: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

33

The RDz "Workbench" – Project Organization You will work with a variety of COBOL resources: programs, copybooks, compile listings, executables, data files and so forth. Using RDz you store, organize and manage the resources associated with your projects in Projects

RDzRDz resources are organized into - Project(s)

- Folders – and sub-folders

- Files

You can think of the RDz resource topology as similarsimilar to ISPF libraries:

Note – that this analogy is not perfect, just close enough for now

Projects

Folders

Files

RDz Workspace folder Project sub-Folder cobol Sub-folder – under the Project folder File – organized inside the cobol folder, etc.

Page 34: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

34

Left-right slider bar

Navigate in the RDz Graphical Workbench

Double-click ASAM1.asmASAM1.asm and using your mouse:

- Move the slider bars: Up and down Right and left

Get comfortable moving the slider bars to navigate in the source file

- Left-click the up and down scrolling arrows: To scroll one line at a time through the source file

The Assembler Editor

These scrolling techniques are similar to pressing PF8/PF7/PF10/PF11 in ISPF

Up-d

ow

n s

lider

barRecall that – if you're using

RDz v8.5.1 substitute "Enterprise Projects" for

z/OS Projects throughout the workshop instructions

Page 35: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

35

You might wish to see more program source at a glance in the Workbench.

There are many ways to do this, but we'll start with:

-- Move your mouse-cursor over the right-hand border of the editor window

It will turn into an East-West facing pointer

When this happens:- Left-click, and holding the left-mouse button down, drag to the right or left and resize the viewresize the view

You can also select the bottom window border. Left-click and hold + drag to make the window's height larger

Resize a Window in the RDz Graphical Workbench

As time permits, spend a few minutes working with mouse scrolling and As time permits, spend a few minutes working with mouse scrolling and window-sizing graphical development techniqueswindow-sizing graphical development techniques

As time permits, spend a few minutes working with mouse scrolling and As time permits, spend a few minutes working with mouse scrolling and window-sizing graphical development techniqueswindow-sizing graphical development techniques

This window resizing technique is similar to setting your host emulator screen size (24X80, 32X80, etc.)

Page 36: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

36

Workshop Review

What have you done so far?1. (Before starting the workshops) – Unzipped a file onto your PC, that

contained a custom workspace. 2. Launched RDz3. Opened a program into the "Assembler editor"4. Navigated up & down, right & left using

1. The scroll bars

2. The single-line-at-a-time arrows5. Resized your editor window by dragging the window frame, making it:

1. Wider (width)

2. Deeper (height)

Page 37: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

37

Workshop Review

Practice makes perfect: Close the editor on ASAM1.asm

If you made any changes do NOTNOT save them

Open IASBU10.asmOpen IASBU10.asm in the editor

Use the scroll bars to scroll up and down/right and left

Use the up and down scrolling arrows

Resize the editor window, make it: Wider Deeper (taller)

Close the editor – and do NOTNOT save changes

Close a view by clicking the Red X

Page 38: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

38

Manipulating Views – Part II

It's often useful to maximize and restore views for various development tasks.

Steps: To maximize a view:

Double-click in the middle of the view tab

You can also click the Maximize icon in the top-right hand corner of the view

To restore a view back to its original size: Double-click (again) in the middle of the

tab

Or click Restore– Small icon in the right-hand corner of

the editor

Page 39: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

39

Manipulating Views – Maximize and Restore

From RDzClass:1. Double-click ASAM2.asmASAM2.asm and load it into the editor2. Double-click the editor tab to maximize the editor view3. Scroll up and down a few times in the editor4. Double-click the editor tab to restore the editor5. Close the editor don't save any source changes

(if you happened to make any)6. Load ASAM3.asmASAM3.asm into the editor7. Maximize the editor view8. Scroll up and down a few times9. Restore the editor view10.Close the editor - by clicking the X in the tab

Page 40: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

40

Optional Workshop – Eclipse Edit Navigation With Your Own Code

If you can connect to your own mainframe and can access your source code; Open a file, Navigate, Go full-screen, Restore the editor and Close.

If you can't connect to your own mainframe, and time permits try the following:

Repeat the workshops on navigation and view manipulation from this section but using the TAND004.asm program

Note: Source colorization Check out the Outline view by clicking a label in the Outline view and

seeing what happens in the source editor

Page 41: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

41

Workshop - Resetting your Perspective

When you're first getting used to a new toolset, it's easy to do things inadvertently. For instance, you could close views, or resize them – making the views too small or too big

An easy fix to restore your workbench to the installation defaults is to access the WindowWindow menu and either: ResetReset your perspective to the RDz installation defaults …or… Open (ShowShow) views you may have closed accidentally

Let's try it (do the following):

Close a few of the views Now:

1. Click the WindowWindow menu

2. Click:

– Reset Perspective…– At the prompt, click OKOK

Note that from the Window menu you can also open other perspectives and open specific workbench views (the Show ViewShow View option)

Page 42: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

42

Workshop – Practice Opening/Closing Views

Up to now we've used just a few views, but RDz has lots of useful functionality – all of it accessed through views. And even though we're not going to learn about every available view, we should know how to open a specific view if we need to.

Do the following:Do the following: Close the Remote Systems view

Close the Properties view

Reopen Reopen (Show) (Show) a view:a view:1. Left-click the Window menu2. Click:

Show View >

Remote Systems

Repeat the above steps to re-open the Properties view

Page 43: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

43

Workshop – Working With More Than One Program at a Time

From RDzClass and the asm directory:1. Double-click ASAM1.asm – to load it into the editor 2. Double-click ASAM2.asm – to load it into the editor

3. Double-click the ASAM1.asm tabtab – to maximize the editor

With both programs open in maximized view:4. Left-click and hold the left mouse buttonLeft-click and hold the left mouse button down over the ASAM2.asm tab

as you drag your mouse to the right

5. When your mouse moves over the blue scroll-bar it will turn into a

bold right-facing pointer. Release the mouse button

Page 44: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

44

Workshop - Working With More Than One Program at a Time

You should now be in multi-screen edit on two different programs To Restore the editing view to a normal frame view: Double-click over the tab again

Notes 1. this may have seemed like a lot of individual steps, but once you've done it a few times, it will be easy

2. These are multiple "physical" windows – you have carte' blanche to work with your source:

- Browse- Edit

All of RDz's tools are available in either view

Practice makes perfect

Please open both DATEVAL and DEBUG1

Create a split-screen view. Restore the view to a single edit screen

Note – by "Normal frame view we mean including the other RDz Workbench views

Page 45: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

45

Split-Screen

It's also common to work with a single program in split screen modeIn ISPF you split screen and load the same program into Browse or View mode (=1)

In RDz it's simple to work in independent edit sessions on the same file – Press: Ctrl+2Ctrl+2

Edit session 1 – on ASAM1Edit session 1 – on ASAM1 Split-screen Edit – on ASAM1Split-screen Edit – on ASAM1

Page 46: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

46

Split-Screen

From z/OS Projects:From z/OS Projects: Double-click ASAM1.asmDouble-click ASAM1.asm – to load it into the editor Press Ctrl+2Ctrl+2 (Hold down the Ctrl key and simultaneously press the 2 key on your PC) Double-click the tab to maximize the view of both source files

Note that unlike ISPF (which only allows you to browse the same source a split-screen session) using RDz you are in full edit mode

To close the view, click the X in the right-hand corner of the split-screen

Practice:

Open DYNQUERY.asm and split-screen. Close the split-screen. Close the file. Repeat with IAAT591.asm. Split screen, Maximize/Restore the views, close the split-screen, etc

Page 47: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

47

Horizontal Split of Two Different Programs

Using the Context (Right-Mouse) menu, you can edit in horizontal split screen

Horizontal Split Screen is Horizontal Split Screen is more useful for editing more useful for editing

listing and data fileslisting and data files

Page 48: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

48

Split-Screen Q&A

Q. What about F9 …or… is there a a hot-key combination I can use to swap between split screens?A. Most of the time you'll just click your mouse into the "other" split screen to set

focus, however you can press: Alt+Shift+Right-arrow key to swap from the left screen to the right – and

Alt+Shift+Left-arrow key to swap from the right screen to the left

Q. Remind me again – how do I close Split-Screens?A. If you're editing the same program, click the red-X in the top right hand corner If you're editing two different programs close the view tab

Q. Can I split screens horizontally?A. Yes – here's how:

Splitting one program's source horizontally:1. Press Ctrl+2 to split the source view2. Right-click inside the program and from the Context Menu

select: Horizontal split

Page 49: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

49

Open Declaration (F3)

RDz provides a quick navigation technique called "Open Declaration"

To use this technique: Click your mouse into the variable name Either:

Press F3 …or… Right-click and select Open Declaration

Considerations: This technique works for COBOL, PL/I

and Assembler You can open a variable or label or

Macro declaration If the declaration is in a copybook,

RDz will open the copybook (providing the workspace's SYSLIB Property Group value is correct. We will be covering how to setup Property Groups in a subsequent module).

Page 50: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

50

Workshop Review

What have you done so far?1. Launched RDz and closed the Welcome tabs to access the z/OS Projects perspective2. Created a new project – populated with example Assembler programs3. Opened a program into the "Assembler editor"4. Navigated up & down, right & left using

1. The scroll bars

2. The single-line-at-a-time arrows5. Resized your editor window by dragging the window frame, making it:

1. Wider (width)

2. Deeper (height)

6. Maximized views and Restored them back to normal size in the Workbench

7. Reset your z/OS Projects perspective to the RDz default

8. Opened views that might have been closed accidentally

9. Split-screen, and edited two programs at once

10. Split-screen, and been in Edit on the same program

11. Used Open Declaration to navigate to a variable, label or Macro

Page 51: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

51

GUI-Navigation Workshop – 1 of 4

Customize the Outline View's behavior, to show a few new RDz features:

From RDzClass – open TAED002.asm From the Outline View menu

Click the tiny downward-pointing triangle Select (left-click):

Link With Editor

Navigate through the program by clicking various labels and macros in the Outline view

From the Outline view Select TSTSR Right-click and select: Filter references

(what did that do)?

Click your mouse inside the source and press Ctrl+W(what did that do)?

Try this technique – of Filtering from the Outline view on a few other labels Don't forget that Ctrl+W shows (expands) all of the code in the file

Page 52: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

52

GUI-Navigation Workshop – 2 of 4

Review of GUI editing techniques: From within TAED002.asmTAED002.asm

Use the scroll bars to slide up and down, right and left Stretch the editor frames to see more/less code:

Down and up Side to side

Stretch the Outline view frame up

Maximize the view of TAED002TAED002 Press Ctrl+2 – to open a split-screen view the program Scroll up and down in either side of the split-screen view Make a change in either split-screen, and note that the

change appears in the other screen Close the split-screen view Double-click to Restore the normal RDz workbench view Close TAED002 – do not save your code changes

Stretch the Outline view to expose more of your labels and Macros

Page 53: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

53

GUI-Navigation Workshop – 3 of 4

Let's try a few more new things… Open TAED002AA.asm From the Outline view

Click the Sort icon Does Outline view navigation still work?

– Try clicking a few labels/Macros

From the downward pointing triangle, downward pointing triangle, click: Show Categories Show Categories

Try navigating throughout the program using this Outline mode

Close TAED002A

If you have access to your own Assembler programs, and if time permits try some of these GUI navigation techniques on your own code.

Page 54: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

54

GUI-Navigation Workshop – 4 of 4

Open Declaration Open TESTDBG.asm Find STRT_MSG Click your mouse in the field Right-click and select:

Open Declaration …or you can just press F3

What happened?

Return to the top of the file using the slider bar in the editor, and repeat Open Declaration with: SUMMSK PLIST

OPTIONAL workshop: After you "Open Declaration" – from the menu toolbar (at the top of

the RDz workbench) click the yellow left-pointing arrow to return to your editing start-position

In the next section you'll learn how to set Bookmarks which are also easy back & forth navigation (Bookmarks are similar to ISPF labels)

Editor Slide Bar

Page 55: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

55

Real time Syntax Checking – for Branch Statements

The Assembler editor will detect branch statements to labels that are not found in the file.

See Slide Notes on Real Time Syntax checking and Assembler statements

Page 56: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

56

Workshop – Real time Syntax Checking for Branch Statements

Open DATEVAL.asm From the (right-click) Context menu, select Filter view > Branch instructions and labels

Note the visual effect on the code

Misspell a label Arrow down, or move your

cursor off the line And note the message

Try this with another label

Close and do not save any changes to the code

Page 57: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

57

Source Compare – 1 of 2

It's often necessary to compare two different releases of the same program source. RDz makes this easy to do.

Select two source files: Select the different .ASM files – note that they could be in the same or in a different

project Hold the Ctrl key to

click (select) more than one file

Right-click – select: Compare With > Each Other

Notes: You can compare and edit in either file These files can be in the same or in different

libraries. They can be on one or multiple LPARs You can compare files within column

boundaries From Window > Preferences LPEX Editor > Compare Specify:

Column Restricted Search Start and End boundaries

Page 58: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

58

Source Compare – 2 of 2 Results are displayed in side-by-side windows (Maximized for best viewing). Notes:

Lines changed and new lines from either source file shown in different shadesLines changed and new lines from either source file shown in different shades Can click on the right-hand column border to navigate – and/or use the toolbar Can click on the right-hand column border to navigate – and/or use the toolbar

Delta (source difference) navigation and Copy toolbar

Page 59: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

59

Workshop – Workshop – Source Compare

From RDzClass:1. Select both: SUB1.asm and SUB2.asmSUB1.asm and SUB2.asm

(use the Ctrl key + left mouse button to do this)

2. Right-click and select: Compare With > Each Other

3. Experiment with the source compare features: Follow the Next and Previous difference icons Note:

– Changed lines– Added/Deleted lines (in either source file)

Try Copy Current Change – from Right to Left and from Left to Right

Close all files

Page 60: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

60

Organizing your tasks – Bookmarks View

What's a Bookmark?What's a Bookmark? Bookmarks are hyperlinked annotations that allow

you to quickly find specific lines in a file Reminders, sort of: electronic sticky pad notes

Create a Bookmark as follows: (From inside an edit session) Double-click, or Right

click over the left-hand border, next to the line you want the Bookmark on

- Select: Add Bookmark…

- (optionally) Overtype the name of the Bookmark

- Click OK– A small vertical book icon appears in the border

(on both the left and right hand borders of the file)

To clear a Bookmark: Right-click over an existing Bookmark Select Remove Bookmark

To see and to use your Bookmarks:

From the Window Menu Select Show View Bookmarks

Five Bookmarks in the Bookmarks viewFive Bookmarks in the Bookmarks view

See Slide NotesSee Slide Notes

Page 61: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

61

Workshop – Bookmarks for Navigation and Annotations

1. Open TAND004.asm in the editor2. Open Declaration on WORKAREA (the label is down near the bottom)3. Slide up to the top (imagine if this was a 20,000 line assembler

program) – and you weren't at the top or bottom 4. Now, set a bookmark on the WORKAREA

reference near the top of the program5. Again Open Declaration6. Return to the Bookmark by clicking on the small green

bookmark reference on the top right of the editor

7. Set one other Bookmark in TAND004 and close the file8. Open ASAM2.asmASAM2.asm, and set a few Bookmarks9. From the Window menu, select Show View > Bookmarks10. Double-click a Bookmark – what happens?11. If you have access to your mainframe, open a source file

and set a Bookmark, then close the file. Use the Bookmark to reopen the file.

12. From the Bookmarks view: Right-click and Select All Delete all of the Bookmarks

Close the Bookmarks view

Page 62: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

62

Local History – 1 of 3

RDz provides historical versions of your saved source file changes This allows you to:

Return a source file to a previous version

Compare a source file with a previous version

To compare versions: From any file open in the

editor Right-click Select: Compare With Local History…

To replace versions: From any file open in the

editor Right-click Select: Replace With Local History…

Page 63: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

63

Local History – Source Programs – 2 of 3

From the Compare screen Double-click the

Revision time

This is down at the bottom of the screen

This loads the selected version

into a file compare frame

Verify the version's changes

Click Replace… or …Cancel

Page 64: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

64

Local History Preferences – 3 of 3

You can specify how long RDz maintains Local History filesFrom Window > Preferences Expand General Expand Workspace Select Local History

Click OK to save

Page 65: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

65

Workshop - Workshop - Local History

1. Open TAND004TAND004.asm2. Add one new statement

3. Modify one existing statement

4. Delete a statement

5. Save your changes and close the file

6. Re-open TAND004TAND004.asm

7. Right-click in the editor

Select: Replace With >

Local History…

8. Double-click one of the Revisions

9. Note the file comparison

10. Select Replace

11. Note what happened to your changes

Close all files currently open in the editor

Do not save any changes

Right-click … Close All

Page 66: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

66

The Right-Mouse (Context Menu) as "What's available help"

As you begin your work with RDz, you may wonder how to do something, where to find an option, etc.

By pressing the Right-mouse button, RDz will show you –

in the context of what is selected – what functionality or operations are available

Context Menu options available when you've selected a PDS

Page 67: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

67

The RDz Product Help and Documentation

RDz has a rich and easy-to-use help system, with: A global encyclopedia of topics (Help Contents) Search Index List of hot-keys (Key Assist…) List of web resources Links to product and help

update processes About (shows installed

version and release levels along with information on eclipse plug-ins)

Page 68: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

68

The RDz User Group – an Online Community for RDz Developers

Quarterly web-conferenced meetings No-charge technical 90-minute meetings/sessions/presentations Speakers from:

RDz developer community Business partners IBM

Topics include: New release updates Tips & Techniques Meeting themes:

SOA Business Rules Integration points Advanced analysis Etc

Q&A with IBM

https://www.ibm.com/developerworks/mydeveloperworks/groups/service/html/communityview?communityUuid=22eac60d-8bab-44e2-a5b8-a4fe1c1aecad

Page 69: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

69

Internet-based Learning – The IBM Education AssistantIBM Education Assistant

Complementing the RDz Distance Learning, you might want to check out the IBM Education Assistant: http://publib.boulder.ibm.com/infocenter/ieduasst/rtnv1r0/index.jsp

From this site you will find annotated learning modules on specific product features

RD

z V

ers

ion-s

peci

fic

Links

Page 70: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

70

Optional Topics and Workshops For This Section If you have time, and are comfortable with the material covered, or if you

are part of an RDz "Tools Team" and need deeper content - please read through the next series of slides – and try out the techniques shown using RDz and sample programs in your RDzClass project.

Also – if you have access to RDz installed on your mainframe and time permits, please try out the techniques shown using your own application source.

Page 71: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

71

Optional Workshop – Eclipse Edit Navigation With Your Own Code

If you can connect to your own mainframe and can access your source code; Open a file, Navigate, Go full-screen, Restore the editor and Close.

If you can't connect to your own mainframe, and if time permits try the following:

Repeat the workshops on navigation and view manipulation from this section but using the TAND004.asmTAND004.asm program

Note: Source colorization

Check out the Outline view by clicking a label in the Outline view

Page 72: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

72

Optional Workshop – Eclipse Edit Navigation With Your Own CodeIf you can connect to your own mainframe and can access your source code;

Open a file, Split-Screen, close Split-Screen. Open two or more programs side-by-side in the editor.

If you can't connect to your own mainframe, and time permits try the following: From RDzClass: Open DATEVAL.asm – and split screen, navigate, change a value in one

edit view, and find that changed value in the other. Open ASAM1.asm, ASAM2.asm and ASAM3.asm

Maximize edit, and view the programs side-by-side. Optionally Split-Screen in one of the programs.

Page 73: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

73

Optional Topic – Horizontal Split of Two Different Programs

Using the Context (Right-Mouse) menu, you can edit in horizontal split screen

Horizontal Split Screen is Horizontal Split Screen is more useful for editing more useful for editing

listing and data fileslisting and data files

Page 74: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

74

Optional Topic Optional Topic – – File Compare (Explanation of Toolbar Functionality)

Besides being able edit in either side of the File Compare window (and save changes) the toolbar provides the following actions

Page 75: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

75

Optional Workshop Optional Workshop – – Check out the RDz product and external help facilities

From the Help menu, try out various options:From Help Contents – check out what's new in the latest releaseFrom About IBM Rational Developer for System z – find out what version

you're runningSearch on a few topics:

Endevor File System Mapping Property Group

Discover Context-Sensitive Help:Click the z/OS File System Mapping viewRight-click inside the entries in the view and select: Add Data Set

MappingClick on the Context Sensitive question mark (lower left-hand corner)

Page 76: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

76

Optional Topic – Another Code Annotation Feature – Tasks

What's a Task? Tasks are annotations like Bookmarks. Except Task carry additional information about what

you're looking to do. Besides merely tagging lines, Tasks allow you to: Set a priority to the annotation Specify whether the task has been completed

Enable as follows (from an edit session)

Right click in the left-hand border, next to the line you want the Task on- Select: Add Task…

- (optionally) Overtype or add text in the Task Description

- Select a task Priority

- Check if the task is complete

See Slide NotesSee Slide Notes

Page 77: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

77

Optional Topic – The Task View

To see your Tasks in the Tasks View Open the Windows Menu Select Show View > Other > (type ) tasks

From this View you can:- Navigate to specific Tasks- Check/un-Check Task completion- Sort your Tasks- Select and work with multiple Tasks

Select two or more Tasks Right-click Context Menu options

SORTSORT

Page 78: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

78

Optional Workshop – the Tasks View

Open three different assembler programs in the editor and do the following: Set (create) one or two Tasks in each program (overtype the default text on at least

one Task) (While still in edit on one of your programs): Navigate to the different Tasks using the green

rectangle in the right-hand border of the editor Open the Tasks View – and:

Modify the Task Description Set certain Tasks status to complete Navigate to the Task lines Sort the list by Priority Sort the list by Complete/not complete

OPTIONAL – OPTIONAL – If time permits: If you can connect to your mainframe, open a program and set a task in the code Close the program Reopen the program by clicking the Task in the Tasks view Select all of the Task information – Copy the Tasks and paste into rows of an Excel

spreadsheet – also: Delete the Completed tasks Delete the remainder of your Tasks – en masse (using the Context Menu)

Page 79: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

79

Optional Topic – Named Marks

Another way of supporting ISPF Labels is through the use of Named Marks This allows you to:

Set various named marks throughout your source code

Navigate back to the named marks with minimal effort (like ISPF labels but easier)

Marks are a two step process:

From the editor: Select a line in which to set a Mark From the Edit menu

Name a Mark…– Mark > Name a Mark…

– Find Other > Find Mark

Mark names are case-sensitive

Note that Marks do not: Persist after you've closed your

editing session Become part of your source code

Page 80: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

80

Optional Workshop – Named Marks Open ASAM1.asm Scroll down inside this source file and set three named Marks

From the Edit menu: Mark > Name a Mark… Type the name (keep it short – and remember, Marks are case-sensitive)

Now find the three named Marks From the Edit menu:

Find Other > Find Mark

Kind of a pain to keep hitting for Find Other > Find Mark, isn't it? Try this: From Window > Preferences > LPEX Editor > User Key Actions

Key: a-m– Lowercase "a"

Action: nameMark Click: Set Key: a-t

– Lowercase "a"

Action: findMark Click: Set Click: Apply, then OK

Repeat the above steps, but instead of using the Edit menu for Find Mark, try using: Alt+T

Page 81: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

81

Optional Topic – RDz as a "GUI File Transfer" Tool When RDz is installed and working in your shop,

you can drag & drop source datasets and files between: PC and mainframe Mainframe and PC Mainframe and mainframe (from one LPAR to another) PC and PC

Note that by "your PC" we mean "any networked drive"

Optional Workshop – if you have a connection to a mainframe

Steps (assuming the RDz mainframe components have been successfully installed and configured on your host system): Connect to a mainframe (see next section for how to) From your PC drag & drop files to a mainframe source library

(see next section for how to) From the mainframe:

Open a library Select a few PDS members Drag & Drop them to one of your RDzClass folders Select an entire PDS (library) Drag & Drop the library to the RDzClass folder

– What happened?

LocalFilesAnd

Datasets

TransferTransferSourceSourceFilesFiles

Page 82: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

82

Advanced Topic – Getting to other views from Maximize

In Maximized (full-screen edit) mode, all of the cool and useful RDz views are available as miniaturized icons in the sidebars Mouse over the icons – to determine the view they represent Click the icon – and the view "pops-up"

You can use the view while it's visible Click back in the source –

to return to full-screen edit mode and "hide" (minimize) the view

Note that the placement (location) of the minimized view icons in the sidebars can change from release to release

Page 83: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

83

Advanced Workshop – Hover, Hyper-links and the Back Arrow

Open TESTDBG.asm

Press and hold down the CtrlCtrl Key

Mouse-over some variables - or label names ... note how they turn into hyper-links - Hmmmmmmmmmm.......... what could this mean

Left-clickLeft-click on a hyper-linked identifier.

Yep - Left-click takes you to the field/label's declaration

Yep - even if that declaration is inside a copybook or Macro file (provided you've opened the copybook/macro file from the mainframe)

Anyhow - the behavior is pretty cool Hyper-links inside Assembler source code – what's next built-in local source History selection capability?

SFLAG Hold down CtrlLeft-mouse click

To return to your starting edit point

Page 84: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

84

OptionalOptional Topic/Workshop – One Click Hover + Open Declaration Topic/Workshop – One Click Hover + Open Declaration

By holding down the Ctrl key when you hover over a variable or label name, RDz hyper-links the reference to its declaration - allowing you to Left-Click and go directly to the declaration (variable or paragraph/section). Net?- Less typing - Less mouse manipulation- More productivity

Optional Workshop – Note, this workshop requires you to have: 1. A working mainframe connection, 2. The class files uploaded to your mainframe ID and 3. Correct Remote "Property Groups" for this class and your connection. If you have any concerns that you are not setup for this see your instructor.

From <YourID>.TEST.ASM: Open TAED002 From the Command Line, do an ISPF Find on: TSTSTR2

We'll cover ISPF Prefix Area and Command Line editing in the next section of the course Hold down the Ctrl key Move your mouse over the TSTSTR2 reference and Left-click when it turns into a

hyper-link What happened?

If the copybook that contained the TSTSTR2 label did not open in the editor ask your instructor for assistance

TSTSTR2

Page 85: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

85

OptionalOptional Topic/Workshop – Hyperlinked Program Documentation Topic/Workshop – Hyperlinked Program Documentation

The Ctrl key turns anything into a legitimate hyperlink – including: internet URLS, and files stored on a networked drive. Think; Program documentation process models, etc.

Workshop Open TAED002.asm Hold down the Ctrl key Click the file:/// link Optionally drag to create a multi-windowed view of the program and documentation side-by-side

Question: What would happen if you changed the file:/// link to an http link? For example: http://www.ibm.com

Page 86: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

86

Section Review

What have you done so far? Learned some of the RDz terms and concepts – and how they contrast and compare with ISPF:

Workspace Perspective View Menu Editor

Understood the central role of your mouse (both left or "selection" button, and the right or "context-menu" button in doing RDz development

Launched RDz and closed the Welcome tabs to access the z/OS Projects perspective Created a new project – populated with example HLASM programs Opened a program into the "HLASM editor" Navigated up & down, right & left using Scroll bars Resized your editor window Maximized views and Restored them back to normal size Reset your z/OS Projects perspective to the RDz default Opened views that might have been closed accidentally Worked in Split-screen mode Learned a few other RDz editing techniques, utilizing:

Outline view Bookmarks Task list Local History Remote Error List File Compare

Page 87: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

®

IBM Software Group

© 2012 IBM Corporation

Part II – Editing Your Program SourcePart II – Editing Your Program Source

Page 88: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

88

UNIT

Topics:

RDz for ISPF DevelopersRDz for ISPF Developers

The RDz Workbench – Terms and Concepts Editing Assembler ProgramsEditing Assembler Programs Editing With Keystroke Shortcuts Find and Replace Dialog Creating New Programs From Scratch Miscellaneous Features – Hex edit, Content Assist Execution (control flow) and Data Flow Analysis Working with Copybooks and Property Files Appendix – ISPF / LPEX Editor Comparison

Page 89: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

89

Editing – Agenda

Selecting an Edit Profile Program source Navigation Editing programs ala' ISPF

PF Keys ISPF Line Commands ISPF Prefix Commands

Common program editing techniques Data Flow analysis Procedural logic (Paragraph Flow) analysis

Other common ISPF techniques Find (exclude/not exclude) Creating new programs scratch

Working with programs that contain EBCDIC (binary) data embedded in the source file

Working with RDz Property Files Introduction only. This topic is covered in-depth, in a subsequent module

Page 90: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

90

Selecting an Editor

The RDz product installation default editor is the LPEX editor, LPEX (LLPEX (Live P Parser EX EXtensible Editor))

A powerful PC-style editor with language-sensitive tools and features Contains ISPF emulation – activated by changing the LPEX editor profile (next slide)

Page 91: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

91

Selecting ISPF as your LPEX Editor ProfileProfile

The LPEX editor provides a number of different editor profiles you can use for development An editor profile provides emulation of an editor product you

may have used with different software:

ispf, vi, emacs, etc.

From RDz Preferences… you can change editor profiles at any time during your work Like all preferences, your editor profile decision is

saved in your Workspace: If you create a new or use a different workspace, you will

need to return to Preferences to customize your Editor Profile

See Slide Notes – on RDz's See Slide Notes – on RDz's ISPF Edit EmulationISPF Edit Emulation

You can go to Preferences… from within the Editor

Page 92: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

92

Workshop – Workshop – Changing You Editor Profile – to ISPF

From Window Preferences

Click: LPEX EditorLPEX Editor And in the Editor profile list

– Select: ispfispf Click: OKOK

Set ispf as your editor profile

Page 93: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

93

WorkshopWorkshop – – Command Line Location – v 8.5.1

If you are using RDz client v8.5.1v8.5.1 – you can set your command to the top – or bottom

From Window Preferences >

LPEX Editor >

– Controls Select top or bottom: Click: OKOK

- Change the command line to top

- Open an Assembler program from RDzClass

Note Note - in this course the - in this course the command line is screen command line is screen captured at the bottom – captured at the bottom –

but that makes no but that makes no difference to the RDz difference to the RDz functionality or the functionality or the workshop directionsworkshop directions

Page 94: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

94

Filters in preferences and other places

You can use the filtering areas of many RDz tools to streamline access to target features From Window > Preferences type the following into

the filter area and press Enter editor HLASM Sql

… note the effect these filters have on the Preferences shown

From Window > Show view > Other… type the following into the filter area and press Enter rem ta cics z/

Filter

Page 95: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

95

Other HLASM Preferences

1. Access HLASM preferences: From Window > Preferences

LPEX Editor

System z LPEX Editor

HLASM Parser

Try the following: Change the tabs setting Add auto comment…

Works with the Auto comment Preference A topic covered later in this module

Click OK Edit any Assembler program

– Try your new tabs– Modify a line– Press Ctrl/S (save)

Page 96: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

96

Other HLASM Editing Preferences (Margin options)

From: Window Preferences LPEX Editor System LPEX Editor HLASM Parser Click margins

Note the default options

Note that most developers use the default ("out of the box") Margin options

Page 97: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

97

Assembler Editing Behavior – when Margins are set

Normally while editing, text shifts to the right, when margin editing is enabled, text w ithin each margin area shifts , w ithout shifting the text in the next margin area.

Margin editing a lso a ffec ts the keys Enter, Ctrl+S (Split), C trl+J (Jo in), Ctrl+V (Paste)

Split L ine:

Jo in L ine :

Split line here

Lines joined – continuation removed

Enter, Alt+S (Split), Alt+J (Join), Ctrl+V (Paste)

Page 98: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

98

Setting Nesting Colorization

Nesting enables RDz to colorize Assembler (HLASM) statements, providing unambiguous flagging of statements that are nest beyond a level of complexity considered your shop's standard.

Page 99: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

99

Workshop – Workshop – Nesting Colorization

Do the following: Open ASSEM123.asm in the editor From the Context menu, select Preferences… From HLASM Parser > Nesting

Check: Show nesting Set: Number of levels to: 6

Click OK – to save your preferences Scroll through the code and note the effect

When you are finished with this lab, return to When you are finished with this lab, return to Preferences and Preferences and uncheckuncheck Show Nesting before Show Nesting before

continuing with the course.continuing with the course.

Page 100: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

100

HLASM Editor (Assembler Syntax Errors) Preferences

Customize the level and quality of Syntax Error detection by the editor

Uncheck when you have lots of custom macros

(not found due to mapping issues) that are appearing as errors in the source

Page 101: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

101

Workshop – Workshop – Syntax Errors

Do the following: Open HLASMEX.asm in the editor From the Context menu, select:

Filter > – Branch instructions and labels

Modify a few of the branching statements: Misspell the labels Note the error messages

From the Context menu, select Preferences… From HLASM Parser > Syntax Errors

Un-Check: Issue syntax errors for missing… Click OK – to save your preferences Note the effect on your mistyped branch statements Return to preferences and set syntax checking back on Click OK – note that the syntax errors are flagged Close the file – and do NOT save our changes

Page 102: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

102

HLASM Editor (Task Tags) Preferences

Task tags – allow you to pre-create annotations as comments in your source code, that filter lines, and also act like ISPF labels (for navigation purposes)

Page 103: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

103

Workshop – Workshop – Task Tags – 1 of 2 Do the following:

Open HLASMEX.asm in the editor From the Context menu, select Preferences… From HLASM Parser > Task Tags Add the Task Tags shown in the screen capture

Note – make them all upper case Click OK – to save your preferences Type one of each Task Tags into the HLASMEX source in

a comment

Save your changes and note the effect (a Task is created)

Close HLASMEX

Note: In order to permanently remove these Task Tags you can either: Remove the Task Tag Comment Remove the Task Tag from

Preferences

Page 104: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

104

Workshop – Workshop – Task Tags – 2 of 2

Open the Tasks view Window > Show view > Other… Tasks

Re-open HLASMEX.asm Use the Task view to navigate in the source

From the Context Menu, select: Filter >

– Comment task tags Press Ctrl+W (Show All)

Close HLASMEX

Page 105: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

105

Changing Colors to Green Screen "look and feel" – Overall Appearance You might also wish to customize your editor view colors – to closely match those you use on

ISPF. This is easy to do, and the steps are shown on the next slide. Note that the screen captures throughout the rest of this course are RDz default, not customized

Page 106: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

106

Changing Colors to Green Screen "look and feel" – Assembler Statements Along with the LPEX Editor Appearance options, you can also customize your Assembler code

colors within individual statements, from: LPEX Editor > Parsers > Parser Styles

Page 107: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

107

(Optional Workshop) Changing Editor Colors First – open any file in the editor (StartApp.cbl will do)

Next, from: Window > PreferencesWindow > Preferences LPEX Editor AppearanceAppearance Set customized attributes. After each operation, click: ApplyApply and look at your

editor view Palette: Black parserMessage – click: ForegroundForeground, and from the Color Palette, select Red

then click: ApplyApply on the Color Palette

Page 108: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

108

(Optional Workshop) Changing Editor Colors From: LPEX Editor > Parsers > Parser Style

Set some more customized attributes. Set some more customized attributes. After each operation, click: ApplyApply and look at your editor view

Ensure that Document parser is set to: tpfhlasm+

Set the following Style attributes- Line Comment

Blue

- Statement Name/Label

White

Click OKOK If you don't like your changes, there's a "Restore Defaults" button you can click that

returns the editor to the install colors

Page 109: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

109

The RDz Editor – Using the ISPF Profile

The RDz editor view changes, when you use the ISPF profile: New function keys are enabled, the "prefix area" appears, etc.

NoteNote – same: Scrollbars Status line – showing:

Current line Columns

Command line Colorized source

New:New: Prefix area - for ISPF prefix commands PF-key assignment The command line now

works with some

ISPF commands

Note: ISPFISPF command line commands are NOTNOT case sensitiveCommand line

PrefixArea

Status line

VerticalScroll

Bar

Page 110: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

110

Workshop – ISPF PF-Keys and Navigation OptionsWorkshop – ISPF PF-Keys and Navigation Options F1 – Help F5 – Repeat Find F6 – Repeat Change F7 – Page Up F8 – Page Down

With ADA01.asm loaded into the editor, do the following: Press F1 – Note that this opens RDz Help in a separate view, and the first time you do this it will take a few seconds Press F8 – several times to page down in the source file Press F7 – several times to page back up in the file Double-click on the Editor tab – to maximize the size of the Editor window

Press F8 Press F8 and F7 F7 again Note that the # of lines scrolled has changed, according to your window size Press and hold the F8 key downPress and hold the F8 key down – to zoom downwards in the source file

On the command line, type the ISPF command shown. Press <Enter> after each command: Top Bottom Top Bottom

Note:Note: There is no Max/PF8 or Max/PF7 option. Instead, use: Top, Bottom – or as you learned in the previous section: PgUp, PgDn and the Scrollbars

Page 111: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

111

"No L" Locate – More Navigation Options

Using ISPF you locate a given line by typing Locate, Loc or: L <Line#>

Using RDz (from the command line):

Type (only) the line number Press <Enter>

Locate the following lines in ADA01.asm 22, 333, 143, 1

Press Ctrl+PgDnSee Slide NoteSee Slide Noteon use of EQU *on use of EQU *

Page 112: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

112

Summary – Options for Navigating Through Your Program Source

Top of file: Top Bottom of file: Bottom Page down: F8 Page up: F7 Page down: PgDn key Page up: PgUp key Click inside the scrolling area – on either side of the scroll bar

to Page up or Page down

Locate any line of source by typing the Line# in the command area Scroll up/down right/left using the:

Scroll bars Line-at-a-time up/down – click the arrow

Your mouse scroll-wheel

Fast and convenient for positioning/centering code on-screen

Page 113: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

113

Open-ended Review and Workshop – Navigation Options

Progress your RDz navigation skills by trying out the various scrolling and navigation techniques – and make up your own workshop.

Maximize the editor view of ADA01.asm and practice the following: Commands:Commands:

Top Bottom <Line#>

HintHint – Set your mouse cursor focus in the Command line and press the up arrow key

on your keypad to "retrieve" the previous line command This is exactly like PF12 or the ISPF RetrieveRetrieve command

Practice the ISPF and RDz paging and scrollingPractice the ISPF and RDz paging and scrolling techniques: F8 / F7 PgDn key / PgUp key Click inside the Scroll bar on either side of the indicator

Practice centering paragraphs, long statements, recordsPractice centering paragraphs, long statements, records Drag Scroll bars up and down (left-mouse button) One line at-a-time up/down scrolling:

– Click the up/down arrows – Click (set focus) inside your source file and use your mouse's scroll-wheel

One line upOne line up

Dragging Dragging scroll bar scroll bar

Page 114: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

114

Workshop ISPF Command Line Commands – Find/Repeat FindWorkshop ISPF Command Line Commands – Find/Repeat FindYou can do the essential ISPF findfind commands and its variations. Let's try out a few familiar commands and options:

With IAATS91.asm loaded into the editor, do the following:- On the command line, type an ISPF command Press <Enter> after each command:

top F STR Press F5 several times

Bottom F STR first F STR last Top F STR 1 12 F STR first 30 50 Bottom F STR 30 50 first F STR last F STR Prev Press F5 several times

Top ; F STR all x all ; f pcksum all RES

– To reset your source view

NoteNote – Because ISPF command-line commands are not case sensitive both of these examples work

NoteNote – You can "stack' ISPF line commands by separating with a semi-colon. But – you also need to type a space (a blank) between the operands and the semi-colon.

Hint:Hint: Don't forget that – with mouse focus in the Command line, you can press the UpUp arrow key to retrieve the previous command

Page 115: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

115

More ISPF Command Line Commands – Change and Repeat ChangeMore ISPF Command Line Commands – Change and Repeat ChangeYou can do the essential ISPF changechange commands and its variations. With IAATS91.asm loaded into the editor, do the following:

- On the command line, type an ISPF command Press <Enter> after each command:

toptop C pcksum pksmC pcksum pksm undoundo C pcksum pksm allC pcksum pksm all undo 12undo 12 C all pcksum pksmC all pcksum pksm undo 12undo 12 C pcksum pksm firstC pcksum pksm first undoundo C pcksum pksm lastC pcksum pksm last undoundo top ; c pcksum pksm 12 40top ; c pcksum pksm 12 40 Press F5 then Press F6Press F5 then Press F6 Continue pressing F5F5 and F6F6

for "discretionary find/change" undo 12undo 12 bottombottom

Try a few more Find / Change command combinations:

F "10" allF "10" all F "'10'" allF "'10'" all Press F5 Press F5 F mvc allF mvc all X all ; X all ; f mvc allf mvc all RESRES X all ; X all ; f pcksum all 1 12f pcksum all 1 12 RESRES X all ; f pcksum allX all ; f pcksum all c * pksmc * pksm Press F6 a few timesPress F6 a few times Bounds 20 40Bounds 20 40

– Then try a few Find/Change commands again

Take another 5-10 minutes and use F with the following Find operands: char, char, suffix, prefix, word, char, suffix, prefix, word, char, RFINDRFIND

Page 116: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

116

ISPF – Find All (Exclude) Search Within File

Common ISPF editing technique:- Exclude various source lines- find (within) excluded lines- Used extensively on giant production

source files

Command ====> F (or C) 'xxx' X

To perform this using RDz use the same command line syntax format:

1. Exclude lines (Prefix area commands)

2. Then type: F <xxxx> ALL X

This will limit the scope of the search to only the excluded source lines

Note that ALL operand is not required

Page 117: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

117

ISPF – Find All (Not Exclude) Search

Another common ISPF technique- Exclude various source lines- Find within (not) excluded lines

Command ====> F (or C) 'xxx' NX

To perform this using RDz use the same

command line syntax format:

1. Exclude lines

2. Then type: F <xxxx> ALL NX

This will limit the scope of the search to only the NOT excluded source lines

Note that the ALL operand is not required

Page 118: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

118

Workshop – ISPF Find Exclude/Not ExcludeFind Exclude/Not ExcludeFrom z/OS Projects, open IASBU10B.asm

1. From the ISPF prefix area eXclude all lines from view

2. Type the following command:

f dwork all x

3.From the command line, reset:

4. Type the following command: f dwork all nx

5. Again reset your edit session, and experiment with different find commands combined with X, NX

Close and do not save your changes

Page 119: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

119

ISPF Prefix CommandsISPF Prefix Commands

Most of the ISPF prefix area edit commands are supported with same functionality

For a complete list of supported prefix commands: Place your cursor in the prefix area Press F1 F1

ISPF Prefix area commands

ISPF Prefix area commands

Page 120: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

120

Prefix Area Commands Workshop

Using your ISPF skills, issue the following ISPF commands by entering values in the Prefix area and pressing <Enter> after each edit operation

Note: The editor line numbers will change and update as you finish each workshop step. Keep in mind that you're practicing ISPF Prefix Area commands in RDz – not programming

Load IASBU10.asm into the editor, and using the Prefix area commands:

Repeat lines 9 and 21 Block repeat lines 9 23 Block delete lines 23 25 Copy line 11 after line 19 Block copy lines 23 36 after line 48 Delete lines 50 and 56 58 Block move lines 37 38 after line 46

Close IASBU10.asm and do NOT save any of your changes

ISPF Prefix area commands

ISPF Prefix area commands

Page 121: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

121

Prefix Area Commands Workshop - continued

Again edit IASBU10.asm Do not to worry if your line #s are not exactly in synch with these workshop tasks. Just do the ISPF functions described Scroll to the top-of-file, and Insert a new blank line after line 13

Block exclude lines 30 35 Click the collapse/expand icon From the command line, type: RES

On line 1, exclude 9999 lines Click the collapse/expand icon From the command line, type: RES

In one operation, perform multiple ISPF prefix area commands For example

Please spend another 5 minutes practicing with ISPF prefix area commands and combinations that you're familiar with using your mainframe code.

Close your edit session and do NOT save your changes to IASBU10.asm

Page 122: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

122

Optional ISPF Prefix Area Commands Optional ISPF Prefix Area Commands – Example with Excludes/Expand up or Down

A common ISPF Prefix command technique is to: Exclude a number of lines (Xn (where n – is a number), or XX….XX) Show a number of the excluded lines – with an "F" or "L" prefix command

With RDz you might use this less, as you get expand/collapse functionality (plus signs). But if you need this technique, it's supported:

Optional WorkshopOptional Workshop To show n excluded lines within an excluded block:

Excludes lines, then position your cursor on the excluded marker

Type: F n … or… LL n - in the prefix area

– Where n is a number of lines to show F – shows the first n excluded lines L – shows the last n excluded lines

(OPTIONAL) Try: LC and UC (Lower-Case/Upper-Case prefix area commands) – in any Assembler program

Page 123: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

123

Advanced Topic – Customized Auto Commenting – 1 of 3

Your shop may require you to auto-comment columns 1-6, or 73-80 with information about changes you make to source lines. Typically this would be something like your initials and a date: JS010112 … etc.

Auto Commenting is available in Assembler from the Context Menu Enter the text you want Auto Commenting to add to your source code

Page 124: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

124

Advanced Topic – Modifying the Auto Comment Rule Defaults – 2 of 3

You can modify RDz's defaults for Auto Commenting Assembler, from:

Preferences > Autocomment Select HLASM and click: Edit…

Set: Comment format rules Insertion rules Default comments

Page 125: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

125

Advanced Workshop – Auto Commenting Changed Lines – 3 of 3

Open any of the Assembler programs in RDzClass From the Context menu, select: Start Flagging Changed Lines From the Language Profile, select: HLASM Type something in the Base Flag (your initials plus a Gregorian date for instance) Click OK and modify a source line Move your cursor to some other line and note the effect

Optional/Advanced WorkshopOptional/Advanced Workshop - If time permits try the following:

From Window > Preferences > Auto Comment Edit the HLASM options – Modify the Formation and Insertion rules

See screen captures below for examples Repeat the above Auto Commenting exercise, then check out what your new preferences did

Page 126: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

126

UNIT

Topics:

RDz for ISPF DevelopersRDz for ISPF Developers

The RDz Workbench – Terms and Concepts Editing Assembler Programs Editing With Keystroke ShortcutsEditing With Keystroke Shortcuts Find and Replace Dialog Creating New Programs From Scratch Miscellaneous Features – Hex edit, Content Assist Execution (control flow) and Data Flow Analysis Working with Copybooks and Property Files Appendix – ISPF / LPEX Editor Comparison

Page 127: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

127

Keyboard Editing versus Mouse-based

You're probably getting the picture that there are two distinct editing "modes" using a graphical workbench like RDz:1. Using your mouse for:

Navigation Highlighting Selection Accessing RDz tools and your keyboard for content editing

2. Using the keyboard for: Navigation Highlighting Selection Accessing RDz tools Content editing

Most developers feel as though it's worth going through the skills-transition, to master mouse-oriented development – as this pays dividends for z/OS and modern-development workflow (Services, contemporary U.I. work, etc.)

But, on the next few slides we present Hot-Key combinations available in the RDz editor for those that are ISPF power-typists, who want to ease into things gradually

Page 128: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

128

Common ISPF Key Editing Techniques – Auto ContinuationCommon ISPF Key Editing Techniques – Auto Continuation

Split and Join lines:Split and Join lines:1. Split lines:

Position Cursor Press Alt+S

Note that you can put the keyboard in Insert mode and press: Ctrl+Enter – but that will notnot make use of the auto-continuation feature

2. Join lines: Position Cursor Press Alt/J

Page 129: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

129

Common ISPF Key Editing Techniques - continuedCommon ISPF Key Editing Techniques - continuedYou're probably used to the Erase (EOF) key.

Using RDz you substitute Ctrl+DeleteCtrl+Delete

Other useful PC-key combosOther useful PC-key combos1. Select to the end-of-line

Shift+EndShift+End

2. Move your cursor to the end and beginning of a statement

Position your cursor inside a statement: Press

EndEnd HomeHome

Page 130: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

130

Workshop - Common ISPF Key Editing TechniquesCommon ISPF Key Editing TechniquesSteps: Open the IASBU10.asmIASBU10.asm program in the editor

- Select all (Ctrl+ACtrl+A) then Copy (Ctrl+CCtrl+C) all of the statements in the program

- Right-click- Right-click over the HLASMHLASM folder in z/OS Projects and select:

– New > FileNew > File

– Name your new file: IASBU10B.asmIASBU10B.asm Paste the copied Assembler in the new IASBU10B.asm file

From line 28, using Alt+S, split the current line in the middle of the comment Using the mouse Cut & Paste technique, rejoin the lines Using the RR/RR (block Repeat) – repeat the entire comment block 3 times Use Ctrl+Delete Ctrl+Delete to erase to end-of-line several of the comment lines Using the Outline view, return to the WORKAREA section Press Ctrl+Home to navigate to the top of the screen Using the command line, Find the first occurrence of: SUMFIN in the source Press F5 four more times – where did you end up? Press Ctrl+Home again Locate line 46 Press the Home and End keys a few times within the code on line 46 From the first byte (column) in line 46 press Shift+End Set your cursor focus on line 61 column 27and press Shift+Home Close IASBU10B.asm edit session – and do not save any changes you've made above

Page 131: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

131

Hot-Key Combinations

The ISPF editor actually supports an extensive collection of Hot-Key combinations: You can see the complete list of Hot-Keys at any time

during your edit session by pressing: Ctrl+Shift+L Black entries are activated Gray entries are unavailable in the current editing context

Hot-Keys are case-IN-sensitive Alt+CC Alt+cc

We will cover the essential Hot-Keys starting on the next slide: NavigationNavigation Select TextSelect Text Copy/Paste TextCopy/Paste Text Line OptionsLine Options MiscellaneousMiscellaneous

Ctrl + Shift + LCtrl + Shift + L

Page 132: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

132

Hot-Key Combinations – Source Navigation + Miscellaneous Keys

RDz Hot KeysRDz Hot Keys DescriptionDescription ISPF EquivalentISPF EquivalentCtrl+HomeCtrl+Home Top of file Max PF7Max PF7

Ctrl+EndCtrl+End Bottom of file Max PF8Max PF8

Ctrl+2Ctrl+2 Open same program in split-screen view PF2 PF2 - then open the source member

Ctrl+0 (zero)Ctrl+0 (zero) Close edit session PF3 PF3 (or CAN on the command line)

Ctrl+SCtrl+S Save edit session SaveSave

Ctrl+PCtrl+P Print current file N/A

Ctrl+TCtrl+T Make current line top line in the editor PF7/PF8 PF7/PF8 with CSR as your paging option

PgUpPgUp Page up one physical page of source at a time PF7PF7

PgDnPgDn Page down one page of source at a time PF8PF8

PF7/PF8PF7/PF8 Page up/down one page of source at a time PF7/PF8PF7/PF8

Up/Down – Up/Down –

Right/Left ArrowsRight/Left ArrowsScroll one character at a time through your source:Up/Down – Right/Left

Up/Down/Right/Left ArrowsUp/Down/Right/Left Arrows

Ctrl+PgDnCtrl+PgDn Page Right PF11PF11

Ctrl+PgUpCtrl+PgUp Page Left PF10PF10

Ctrl+LCtrl+L Open Line Number feature N/A

Ctrl+WCtrl+W Show all filtered lines RESRES

Shift+F10Shift+F10 Show the Context (popup) menu N/A

Ctrl+Shift+LCtrl+Shift+L Show the list of all Hot-Key Combinations N/A

Alt+SAlt+S Split Line – Auto-continue Text Split – but does not do Auto-Continue

Alt+JAlt+J Join Line – Auto-continue Text Join – but does no do Auto-Continue

EscapeEscape Cursor jumps to the command line N/A

Page 133: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

133

Workshop – Source File Navigation and Hot-Key CombinationsLoad CICSASM2.asm into the editor. CICSASM2.asm into the editor. Press the following Hot-Key combinations.

(Optional)(Optional) Type or write down what happens after you press the Hot-Key combination

Ctrl+L - Ctrl+L - Type: 77 77 and Press: Enter Enter ________________________________________ Ctrl+T ________________________________________Ctrl+T ________________________________________ Ctrl+2 ________________________________________Ctrl+2 ________________________________________ Ctrl+0 ________________________________________Ctrl+0 ________________________________________ Ctrl+End ________________________________________Ctrl+End ________________________________________ Ctrl+Home ________________________________________Ctrl+Home ________________________________________ Ctrl+Shift+L ________________________________________Ctrl+Shift+L ________________________________________ PF8 ________________________________________PF8 ________________________________________ PF7 ________________________________________PF7 ________________________________________ PgDn ________________________________________PgDn ________________________________________ PgUp ________________________________________PgUp ________________________________________ Ctrl+PgUp ________________________________________Ctrl+PgUp ________________________________________ Ctrl+PgDn ________________________________________Ctrl+PgDn ________________________________________ Ctrl+W ________________________________________Ctrl+W ________________________________________ Ctrl+F10 ________________________________________Ctrl+F10 ________________________________________ Down Arrow - Down Arrow - Continually press the down arrow ______________________ ______________________ Up Arrow - Up Arrow - Continually press the up arrow ___________________________ ___________________________

Page 134: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

134

Hot-Key Combinations – Line and Statement Editing Options

RDz Hot KeysRDz Hot Keys DescriptionDescription ISPF EquivalentISPF EquivalentCtrl+FCtrl+F Opens Find/Replace Dialog Find/Change ISPF CommandsFind/Change ISPF Commands

Ctrl+ZCtrl+Z Undo last change UNDO UNDO (if Recovery On)

Ctrl+YCtrl+Y Redo last change N/A

Shift+Down ArrowShift+Down Arrow Select text from the current cursor position downward in the source file

Prefix Area Command: CC … CC PF7Prefix Area Command: CC … CC PF7

Shift+Up ArrowShift+Up Arrow Select text from the current cursor position upward in the source file Prefix Area Command: CC … CC PF7Prefix Area Command: CC … CC PF7

Ctrl+Shift+Right ArrowCtrl+Shift+Right Arrow Open same program in split-screen view PF2 PF2 + navigate to source member

Shift+EndShift+End Select text from cursor position to end of line N/A

Shift+HomeShift+Home Select text from cursor position to beginning of line N/A

Ctrl+ACtrl+A Select all text in the source file Prefix Area Command: C99999Prefix Area Command: C99999

Alt+UAlt+U Unselect selected text N/A

Ctrl+CCtrl+C Copy currently selected source lines Prefix Area Command: C Prefix Area Command: C or CC CC

Ctrl+XCtrl+X Cut currently selected source lines Prefix Area Command: M Prefix Area Command: M or MM MM

Ctrl+VCtrl+V Paste currently copied source lines Prefix Area Command: A Prefix Area Command: A or B B

Ctrl+JCtrl+J Find previous edit change N/A

Ctrl+RightCtrl+Right Locates cursor at the beginning of the next word N/A

Ctrl+BackspaceCtrl+Backspace Delete Current line Prefix Area Command: DPrefix Area Command: D

Ctrl+DCtrl+D Repeat Current line Prefix Area Command: RPrefix Area Command: R

Ctrl+/ or Ctrl+\Ctrl+/ or Ctrl+\ Comment or Uncomment current line N/A

Ctrl+EnterCtrl+Enter Insert new line Prefix Area Command: TS or IPrefix Area Command: TS or I

Ctrl+DeleteCtrl+Delete Delete (Truncate) to end of line Erase (EOF) keyErase (EOF) key

F5 F5 and F6 F6 Find and Repeat Find, Change and Repeat Change PF5 / PF6PF5 / PF6

Page 135: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

135

Workshop – Line and Statement Editing Hot-Key CombinationsRe-Load CICSASM2.asm CICSASM2.asm into the editor. into the editor. Press the following Hot-Key combinations.

(Optional)(Optional) Type or write down what happens after you press the Hot-Key combination Ctrl+A Ctrl+A ________________________________________ Alt+U ________________________________________Alt+U ________________________________________ Ctrl+Backspace ________________________________________Ctrl+Backspace ________________________________________ Ctrl+Z ________________________________________Ctrl+Z ________________________________________ Ctrl+Y ________________________________________Ctrl+Y ________________________________________ Ctrl+D ________________________________________Ctrl+D ________________________________________ Shift+Right arrow ________________________________________ Shift+Right arrow ________________________________________ (Repeat with Shift+Left Arrow) Shift+Down arrow ________________________________________ Shift+Down arrow ________________________________________ (Repeat with Shift+Up Arrow) (With your mouse cursor at the beginning of a line) Shift+End _______________________________Shift+End _______________________________ (With your mouse cursor at the END of a line) Shift+Home _______________________________Shift+Home _______________________________ Ctrl+X ________________________________________Ctrl+X ________________________________________ Ctrl+Home ________________________________________Ctrl+Home ________________________________________ Ctrl+V ________________________________________Ctrl+V ________________________________________ Ctrl+End ________________________________________Ctrl+End ________________________________________ Ctrl+J ________________________________________Ctrl+J ________________________________________ (With your mouse cursor in the middle of a line) Ctrl+Delete _______________________________Ctrl+Delete _______________________________ (Multiple times) Ctrl+Shift+Right arrow _______________________________Ctrl+Shift+Right arrow _______________________________ (Holding these keys down) Ctrl+Right arrow _______________________________Ctrl+Right arrow _______________________________ (Holding these keys down) Ctrl+Left arrow _______________________________Ctrl+Left arrow _______________________________

If time permits, spend some time working with the combination of the Navigation and Line and Statement Editing Hot-Keys

Page 136: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

136

You can copy a block of text in RDz's LPEX editor by doing the following: Press ALT+R – or use the Context menu to Select rectangle editing Mark the Block Press ALT+C to paste the block

Workshop: Open LABINAR1.asm – and scroll to the DATA AREAS Press ALT+R and block copy these comments

Paste the block – using ALT+C here….

Optional Workshop – Block (column-wise) Editing

Page 137: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

137

UNIT

Topics:

RDz for ISPF DevelopersRDz for ISPF Developers

The RDz Workbench – Terms and Concepts Editing Assembler Programs ISPF Prefix Area Commands Editing With Keystroke Shortcuts Find and Replace DialogFind and Replace Dialog Creating New Programs From Scratch Miscellaneous Features – Hex edit, Content Assist Execution (control flow) and Data Flow Analysis Working with Copybooks and Property Files Appendix – ISPF / LPEX Editor Comparison

Page 138: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

138

Find/Replace Dialog – 1 of 2Besides the ISPF Find/Change

command, there are other ways to search and replace text

Standard find:From anywhere inside your source, press:

Ctrl+FCtrl+F …or… Ctrl+fCtrl+f

Brings up the following dialog with find options

1. Enter Find and/or Replace value

2. Check one or more search refinement options

3. Press a Find button (covered on the next slide)

Find option checkboxescheckboxes: Case sensitive – case sensitive search Whole word – finds your text delimited by spaces or dashes Regular expression – powerful search meta-language – for complex search Wrap – if starting mid-way through source, continue find from the top Select found text – shows and selects found element Peek: Shows specified number of lines of source after the found element Restrict search to columns – search between start and end columns only

See NotesSee NotesSee NotesSee Notes

Page 139: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

139

Find/Replace Dialog – 2 of 4 – Options

NextNext– Find forward in the source

– Does notnot find text inside copy or include files

– Ctrl+nCtrl+n – finds next

PreviousPrevious– Find upwards (back) in the source from your current cursor position

AllAll– Finds all lines within the source

– Additionally will excludeexclude or filter all source not matching your Find string

Provides an intermediate set of lines to AND your search with

– Press Ctrl+WCtrl+W to "show all" excluded lines …and/or to close the find dialog box

– Clicking anywhere in the main body of your source file also closes the Find dialog

– Click the pluses in the left-hand border to show filtered source

ReplaceReplace– Adheres to source columns

– If replace would push text past column 73 you will receive a warning

ReplaceReplace all– Changes "found" values to the replacement values throughout file

Note that whatever you enter the Find/Replace dialog persists This can be useful to do repeated searches within multiple files

Page 140: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

140

Workshop Workshop Find/Replace Dialog

Load ADA01.asmADA01.asm into the editor Do a Ctrl+FCtrl+F

Search for AAllll DSDS Note that this found

several statements with variables that contain DS (BADSEL)

Why?Why?

Restrict the column search to between 10 and 12 FFind All: All: DSDS (again) Expand some of the plus-signs and un-filter the code Press: Ctrl+W Ctrl+W … What does that do?What does that do?

Customizing Search Customizing Search From the Context Menu, select: PreferencesFrom the Context Menu, select: Preferences

Locate:

- LPEX Editor- LPEX Editor

- Find Text- Find TextCheck:

Select found textSelect found text

Incremental find dialogIncremental find dialog

ClickClick OKOK

Re-run the above Searches then close ADA01Re-run the above Searches then close ADA01

Page 141: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

141

Workshop Workshop Find/Replace Dialog – continued

Experiment with the Find/Replace options and option buttons covered on the previous Find/Replace Dialog slides. After each search press Ctrl/W. Here are some suggestions… Open IASBU10A.asm and Find AllOpen IASBU10A.asm and Find All

MVCMVC CICSCICS DWODWO

– Check Whole word – and rerun the DWO search

Try experimenting with your own searches, using these Find/Replace options: Case sensitive Whole word Select found text RReplace Repplace All Prevvious NNext NNext (combined with)

RReplace (This is like PF5/PF6)

Change Peek to 1 – and repeat one of the best searches What does this do, and can you see uses for this topic?

When you are finished, close your editor session and do notnot save changes

Page 142: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

142

Optional Topics and Workshops For This Section

If you have time, and are comfortable with the material covered, please read through the slides – and/or try out the techniques shown using RDz and sample programs.

The development techniques covered in these slides can make your standard z/OS Maintenance, Production Support and Development tasks much easier, and make you more productive. So at some point – perhaps after class please consider returning to these optional topics to build out your RDz skills.

Also – if you have access to RDz installed on your mainframe and time permits, please try out the techniques shown using your own application source.

Page 143: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

143

Optional Workshop - Optional Workshop - Find/Replace Dialog – AND'd Searching Results

Problem – find all occurrences in a program that contain BOTH the Assembler DS Op Code and a label

Solution/Steps: Open ADA02.ASM Find DSDS ALL With the set of "found"

MOVE statements in the editor, again: Find CL29CL29 Continue to press NextNext

Optional practice workshop:

In ADA01.asm, using the above process find all DS declarations that are CL of any length

When you click All – the lines from your program source showing in the editor represent a temporary "Results Set"

Click the Next button – to search through this Result Set

This allows for And'd" search techniques - Show me all lines in my source that have this AND that

Page 144: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

144

OPTIONAL Workshop – Using Regular Expressions

Open ADA01.asm

Press Ctrl+F To open the Find/Replace dialog

Check Regular expression

Enter the following find expression:

MVC|MVI

Click: AllAll

Repeat the above, and do a logical "OR" search for: chkday|datedchkday|dated

Note that the single pipe separator || is a logical "OR" operator

Page 145: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

145

Optional Topic – Using Regular Expressions to Search for Hex Values

You can use regular expressions to search for EBCDIC Hexadecimal Values, embedded in a program or in copybook source: Regular Expressions are an ASCII search mechanism Use ASCII/EBCDIC comparison charts to map to the EBCDIC value you're

looking for ASCII - 1a EBCDIC – 3F

A typical conversion table URL: http://www.flounder.com/ebcdictoascii1.htm

Regular Expression: [\x1a]

Hex Edit of line

ASCII EBCDIC

See Slide Notes for URLs to useful Regular Expression tutorials online

Note that the EBCDIC Note that the EBCDIC Hex Edit line only Hex Edit line only

appears if you open a appears if you open a file from z/OSfile from z/OS

Page 146: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

146

A few more examples: Find all non-display (binary or hex) values in TESTPROG.asm: [^\x20-\x7E]

If you are opening this file from the mainframe – you can see the EBCDIC hexadecimal characters on the bottom (line 4) of the Hex Edit display.

Find all lines that reference any of three wildcard strings: pat-records*|records-writ*|error-fo*

(Logical AND search) Find all lines with BNEBNE and with chkdaychkday in the program ADA01.asmADA01.asm

(BNE.*chkday) Increase PeekPeek to 1, Click AllAll again

(Combined AND/OR search in ADA01.) Find all lines with MVI +(BNE AND'd with chkday)

MVI|BNE.*chkday

OPTIONAL Workshop – Using Regular Expressions – continued

Page 147: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

147

Optional Topic – Using Regular Expressions to change all within columns

You can use regular expressions to substitute for ISPF picture string editing.Example – change all characters in columns 73 80 to blanks (spaces)

Regular Expression Start column: 73 End column: 80 Find: Type a period . Replace: Type a space

Page 148: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

148

OptionalOptional Topic – Another Useful Search Mechanism Using the Search menu, you can

search on a variable (or any partial selected text) in a program with: Search

Text > File The results are hyperlinked – for easy

navigation, and can be: Copied/pasted to a requirements

document Changed

Replace Selected…Replace All…

Searched Again to provide the capability of AND-ing multiple search patterns

Page 149: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

149

OptionalOptional Topic – Highlight Found Text

Some ISPF developers prefer to highlight all found text occurrences.

This can be accomplished from: Preferences > LPEX Editor > System z LPEX Editor > Find Text

Use Ctrl+FCtrl+F (Find) to search and highlight text in your source

To remove highlighted entries, type: clearMatchesclearMatches on the editor command line

Page 150: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

150

Optional Topic – Supporting Optional Topic – Supporting the the ISPF "ONLY" Command – 1 of 2ISPF provides a "one-command"

find all – "ONLY"

ISPF ONLY does the following:

Top ; x all ; F 'xxx' allTop ; x all ; F 'xxx' all

The RDz ONLY emulation is:1. Select the variable (or text pattern) 2. Right-click > Filter view > References

… Or from the Context Menu and:Selected > Filter

… Or from the Outline view

Page 151: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

151

Optional Topic – Supporting the Optional Topic – Supporting the ISPF "ONLY" Command – 2 of 2

Note that you can create a custom "User Key Action" – for filterSelection – so that ONLY is more closely emulated.

Preferences > LPEX Editor >

User Key Actions

Define a custom Key for filterSelectionfilterSelection

In this example, Alt+F9 (a-f9) is set to:

filterSelectionfilterSelection

Page 152: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

152

It's common practice in ISPF to use the CREATE/REPLACE <member name>

While not offering the exact TSO command-line syntax, this is the RDz way: Open up the PDS member to be copied from Find/Select and Copy program source lines

Right-click over the target PDS and select: New > Create Member…

Double-click to open the new member in the editor Find the right line to insert the copied lines

Optional Topic – ISPF Create/Replace Commands

To Replace rather than Create (after copying the source lines) 1. Open an existing PDS member 2. Select the lines in the PDS member 3. Right-click and select Paste

Page 153: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

153

UNIT

Topics:

RDz for ISPF DevelopersRDz for ISPF Developers

The RDz Workbench – Terms and Concepts Editing Assembler Programs ISPF Prefix Area Commands Editing With Keystroke Shortcuts Find and Replace Dialog Creating New Programs From Scratch Creating New Programs From Scratch • Miscellaneous Features – Hex edit, Content Assist Filter view• Execution (control flow) and Data Flow Analysis• Working with Copybooks and Property Files• Appendix – ISPF / LPEX Editor Comparison

Page 154: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

154

Creating New Programs Using Copy/Paste

Instead of using pre-defined templates, you may be used to "cannibalizing" pre-existing programs, by creating a new PDS member from an existing program, then editing OUT the code you don't need for your new development work.

+ Pluses:+ Fast– Minuses:- Must clean-up PDS member fragments- More difficult with SCM (instead of PDS)- Most useful if copying either the entire program or one long contiguous block of code

There are two development patterns that you will want to employ to do this with RDz1. Create a new empty file – saved as <newFileName>.asm2. Open a second (existing) Assembler program and 3. Copy all of the existing program into the new file.asm…or…1. Create a new empty file – saved as <newFileName>.asm2. Open a second (existing) Assembler program and 3. Copy/Paste only specific portions of the existing program into the new file.asm

Both have their uses, so let's have a look at how to proceed with them

Page 155: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

155

Creating New Programs Using Copy/Paste – Copy Entire Program

Steps:

1. Open an existing program source in the editor: IASBU10.asm- Select all (Ctrl+ACtrl+A) then Copy (Ctrl+CCtrl+C) all of the statements in the program

2.2. Right-clickRight-click over the asmasm folder in z/OS Projects and select:

– New > FileNew > File

– Name your new file: IASBU09.asmIASBU09.asm3. Click your mouse-pointer into the new file in the top-left hand corner (column 1,

row 1) and press Ctrl+VCtrl+V to paste the program statements you copied in step 14. Save the file (Ctrl+SCtrl+S)

5. Close both programs

Repeat the above process:– Copy TAND004.asm to program to: TAND005.asm

Page 156: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

156

Creating New Programs Using Copy/Paste Code Blocks

Often it's easier to create new programs from non-contiguous blocks of code, cannibalized from an existing program. Example – grab specific labels, EQUATES, Macros, not part of COPY or INCLUDE, or a

lengthy computation, etc.

This is easily done combining mouse-based copy/paste with the previous new program technique or (even better) starting from a Template:1. Open an existing to-be-copied program in the editor (we'll call this: From-Program)2. Start from a program template, or create a new empty program as before (we'll call this: To-Program)3. Maximize your Editors 4. Find and Select copy source within: From-Program 5. Paste the copied source into the appropriate area of: To-Program6. Scroll down and find the next piece of code to copy in From-Program – repeat steps 5 & 6

Page 157: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

157

New Program File for Workshops

Steps: From this PowerPoint's Slide Notes:

Select all (Ctrl+ACtrl+A) then Copy (Ctrl+CCtrl+C) all of the statements in the program– If you don't remember how to access Slide Notes return to slide#5 in this PowerPoint

From z/OS Projects Right-clickRight-click over the HLASMHLASM folder

and select: – New >New >

FileFile

– Name the file: IASBU10A.asmIASBU10A.asm

Click your mouse-pointer into the new file in the top-left hand corner (column 1, row 1) and press Ctrl+VCtrl+V to paste the program statements you copied in step 1

Save the file (Ctrl+SCtrl+S)

Page 158: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

158

UNIT

Topics:

RDz for ISPF DevelopersRDz for ISPF Developers

The RDz Workbench – Terms and Concepts Editing Assembler Programs ISPF Prefix Area Commands Editing With Keystroke Shortcuts Find and Replace Dialog Creating New Programs From Scratch Miscellaneous Features – Hex edit, PF1 PoP help, Miscellaneous Features – Hex edit, PF1 PoP help, Content Assist, FiltersContent Assist, Filters Execution (control flow) and Data Flow Analysis Working with Copybooks and Property Files Appendix – ISPF / LPEX Editor Comparison

Page 159: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

159

Working With Source Code Containing Hexadecimal Values

Many mainframe application programs, especially online IMS and CICS programs that interact with screens contain EBCDIC binary or Hex values embedded in the source Most often in copybooks Although not limited to copybooks.

Example: MVC '.',OUTNAMMVC '.',OUTNAM On the mainframe – the character-set is EBCDIC – ergo, no issue On workstations – because RDz's ISPF and LPEX editors expect ASCII source the

file transfer technology must translate EBCDIC to ASCII – which most of the time is no problem except for in the case of source containing Hexadecimal values

What's the solution?RDz "wraps" or encloses the EBCDIC hex characters on the way down from z/OS

– and displays them as empty squares in the editor

Current state: RDz version 8.0.3 and above – supports all hex values except : X'0D' X'0A'

If your file contains X'0D' or '0A' the file will be opened in read-only mode (which is common for copybook use) – and the 0D/0A gets temporarily converted to '3F' in ASCII

Embedded HEX characters do not affect any fields surrounding them in source files

You can edit hex values by entering Hex edit mode (next slide)

Page 160: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

160

Working With Source Code Containing Hex Values – continued To view source lines that contain embedded Hex characters:

Select the source line Right-click and select:

Source > Hex edit line

This Hex line view shows the text, and different source encodings (essentially, ASCII vs. EBCDIC character set)

The bottom line (Source encoding Cp037) shows EBCDIC values

To edit an EBCDIC hex value (like the 3F shown in the screen capture): Make your change in HEX (overtype the value) Press <Enter> before clicking your mouse out of the Hex line editor

Page 161: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

161

Content Assist (Ctrl+Spacebar)Content Assist allows you to code statements by selecting

values from a list after typing partial text and pressing: Ctrl+Spacebar

The process: Partially type a:

Assembler keyword Label or variable

Move your cursor immediatelyimmediately at the end of the text you wish to use Content Assist to complete

"immediately" = the very next byte after the text

Press Ctrl + SpacebarCtrl + Spacebar Select the completion identifier from the list – which is sorted

alphabetically within type

Benefits: Makes coding faster & easier Reduces typos and syntax errors Particularly helpful with less-than-meaningful and long variable

names and labels

Different Content Assist options

Page 162: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

162

UNIT

Topics:

RDz for ISPF DevelopersRDz for ISPF Developers

The RDz Workbench – Terms and Concepts Editing Assembler Programs ISPF Prefix Area Commands Editing With Keystroke Shortcuts Find and Replace Dialog Creating New Programs From Scratch Miscellaneous Features – Hex edit, Content Assist Control Flow and Data Flow AnalysisControl Flow and Data Flow Analysis Working with Copybooks and Property Files Appendix – ISPF / LPEX Editor Comparison

Page 163: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

163

Control Flow Analysis

Often you will need to discover a program's control flow by tracing through Branch instructions and Labels

This is a straightforward process with RDz1. Right-click and select:

Filter view >

Branch instructions and labels

Page 164: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

164

Control Flow Analysis

You can combine this with Outline view navigation

Page 165: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

165

Application-Wide Control Flow Analysis – using Rational Asset Analyzer (RAA)

If you need to view a "bigger picture" of the control flow among different Assembler modules in an application you can utilize IBM's Rational Asset Analyzer (RAA) – which integrates with RDz, and can materialize different levels of: Transaction

Flow Diagrams

Batch Job Diagrams

Call/Calling (Run unit) Diagrams

Additional Assembler program semantic info is available in RAA

Page 166: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

166

Data Flow Analysis – Technique

Data Flow research is a complex analysis process that involves iterative searching and building of mental "dependency maps" for variables that are modified or referenced through statements within one or more programs

On the mainframe, you either: Utilize listing files/XREF entries – or – Using ISPF you access option 3.4, or =3.14 and issue a series of manual text FIND

operations – saving or writing down interim results.

This is: Typing-intensive Error-prone With lots of time spent loading programs into the editor in split-screen, etc.

Using RDz you: Find your starting Search variable Pin the Search View and double-click each found-reference

This is: Not typing-intensive Less error-prone

With RDz, all Search results are: Fixed Hyperlinked – available from a mouse click

Page 167: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

167

Data Flow Analysis – RDz

Using RDz you will do the following:

From your starting variable:1. Select the field and search (using a menu) for all occurrences

2. "Pin" the search results

3. Double-click each result line – which co-locates the line in the editor

4. Analyze the statements operation

5. If another variable is indicated as being part of the Data Flow, return to Step 1 and search on the next variable

We'll do a workshop on this, using a new program…

Page 168: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

168

Workshop – Data Analysis Data Analysis Open IAATS91.asm in the editor

From the command line, type: F PCKSUMF PCKSUM and press <Enter>1. In the Editor source, Double-click Double-click (to select) PCKSUM2. From the SearchSearch menu,

select, Text > Text >

FileFile

This will launch a search for PCKSUM throughout your program, and save the search results in a new persistent view

3. From the SearchSearch View, click: Pin the Search View – This keeps the view intact, when you launch additional searches

Page 169: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

169

Workshop – Data Analysis Data Analysis – continued 4. Double-click each line in the Search View – the source code will synchronize in the Editor

5. Analyze each Assembler statement. If the operation would alter the value of some other variable (through an MVC or CLC instruction) return to Step 1 on the previous slide, and search on the next variable in data flow Double-click to select another variable - in this example, double-click: PCKA Pull down the SearchSearch Menu, and select, Text > File From the (new) Search results click: Pin the Search View

Page 170: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

170

Workshop – Data Analysis Data Analysis – continued Again analyze each Assembler statement in the pinned Search view. If the operation would alter the value of some other variable return to Step 1 and search on the next variable in

data flow Double-click to select another variable From the Search Menu select, Text > File From the (new) Search results click: Pin the Search View Analyze the next variable's usage and continue

If the operations for an Assembler variable do not modify the contents of storage, return to a previously pinned view, and double-click the next line

Additional pinned Search Viewsfor other variables

Page 171: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

171

Optional Workshop – Data Analysis Data Analysis – continued

You can move (Drag & Drop) the Search results views to different Workbench areas

Or you can DetachDetach the views for optimized use of "screen real estate" in your analysis

Page 172: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

172

Data Flow Analysis – Review

Data Flow analysis is an iterative complex process, that involves expanding the scope of searching, as new variables in the data flow are discovered

On the mainframe, you either: Utilize listing files/XREF entries – or Using ISPF you access option 3.4, or =3.14 and issue a series of manual text

FIND operations – saving or writing down interim results. This is: Typing-intensive and error-prone With lots of time spent loading programs into the editor in split-screen, etc.

Using RDz you:1. Find your starting Search variable

2. Pin the Search View and double-click each reference

There are static analysis tools from IBM that are dedicated to providing this information, through ultra-quick and simple techniques (ask your instructor about Rational Asset Analyzer)

Page 173: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

173

Review – Benefits of Windowed Workbench Development

ProductivityProductivityParallel work(Far) better use of screen "real estate"(Far) less manual typing

For navigation For development tasks

– This is primarily due to RDz "tooling"

Consistent quick, responsive PC performance

Development CPU ResourcesDevelopment CPU ResourcesMost of what you do everyday can be done locally

Conserves MIPS on development LPAR

Page 174: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

174

Final Review – "How do I" - Using RDz, be sure you know how to do the following

How do I … Change from LPEX to the ISPF editor? Save my changes when editing a program (and how do I know if I've made changes to a file)? Bring up a list of variables while typing in new Assembler statements ("code completion") Navigate to the declaration of a variable? View or edit a statement in HEX? Discover what the declaration of a variable is? See how Assembler labels are related? Replace the current version of a file I'm editing with one I saved a few hours ago? Open a file? Close a file? Split screen edit on a single program? View multiple programs and/or copybooks in split screen mode? Filter out all comments from program source, so that I can focus on the code? Go to a full-screen view of a program so that I can see more source code? Open the Context menu? Which mouse-button opens the Context menu? Change the installation default colors of my editor? Access the Find menu? Go to the top of / or bottom of file What are the commands and/or hot-keys to do this? Know what column my cursor is in, when I'm editing a program? Analyze data movement throughout variables in an Assembler program? Select multiple lines in an Assembler program and make them all comments without typing? Reset, open or switch perspectives – to access different product views for Debugging, SQL work, etc. Delete text to the end of a line (like the EOF key)? Analyze the branch structure in my Assembler program? Go directly to the declaration of a variable by pressing a PF-key (and which PF-key does this)? Reopen a View that I've closed by accident – or just generally open a View that is not currently displayed?

Page 175: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

175

Review – Answer the following (be sure you're right by trying your answer out in RDz) What does the Outline view show – and how does it work? What is a Workspace? What does Ctrl+Shift+L do inside the Editor? What is the purpose of a Property Group file? What is in the Properties view? What is the difference between the Outline and Filter views? What is in the Snippets view – and how do I open the Snippets view if it's not showing in my perspective? What does Ctrl+S do when I'm editing? What is an Assembler statement Template – and how can I customize the default Templates IBM ships? What happens when I select an HLASM reserved word and press F1 ? Just what isis a perspective? What are several ways to create a brand new Assembler program? What is a Bookmark? How do I create a bookmark and navigate to a bookmark? (how about a Task)? What's in the Context menu:

(Right-click) When I'm editing a file? (Right-click) When I've selected a file in the z/OS Projects view?

True / False: A file's extension (.asm, .cpy) is not important Content Assist does not provide code completion for file FDs – when coding OPEN/CLOSE statements You can not stack ISPF commands using the RDz editor when using the ISPF profile You can only split screens vertically – you can't split them horizontally as you would with ISPF Content Assist only works with Assembler programs, in fact, RDz's language sensitive editors only work

with Assembler.

Page 176: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

®

IBM Software Group

Rational Developer for System z – Introduction Rational Developer for System z – Introduction

AppendicesAppendices

Page 177: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

177

UNIT

Topics:

RDz IntroductionRDz Introduction

• The RDz Workbench – Terms and Concepts

• Editing Assembler Programs

Appendix – Additional RDz Knowledge TransferAppendix – Additional RDz Knowledge Transfer

Appendix – Generating a User Macro file

Appendix – ISPF/LPEX Editor Comparison

Page 178: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

178

The IBM Education Assistant

The Education Assistant has a number of detailed and useful Camtasias that show use cases for both RDz (standalone) and RDz integrated with other tools (such as Rational Team Concert) http://publib.boulder.ibm.com/infocenter/ieduasst/rtnv1r0/index.jsp

Page 179: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

179

UNIT

Topics:

RDz IntroductionRDz Introduction

• The RDz Workbench – Terms and Concepts

• Editing Assembler Programs

Appendix – Additional RDz Knowledge Transfer

Appendix – Generating a User Macro fileAppendix – Generating a User Macro file

Appendix – ISPF/LPEX Editor Comparison

Page 180: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

180

Generating a User Macro File

When the RDz/LPEX Assembler finds a Macro in your source file it will look to two separate ASCII XML files to resolve the reference before flagging it as a syntax error in your source: tpfhlasm.dat – stored in the directory pointed at by the Environment Variable: TPFSHARE A User Macro File – which you create/populate either manually, or by running an IBM-supplied utility –

which generates User Macro File from a PDS The steps necessary to generate a User Macro File include:

1. Discover where the RDz JAVA_HOME, RSE_HOME directories and where the generateHLAsmMacroFile.sh utility reside, within the RDz installation directories within z/OS Unix

2. Setup the necessary Path command to execute the utility3. Run the utility4. Copy the results of the utility (an ASCII-XML file) to your workstation

See Slide Notes for additional details

Page 181: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

181

Discover where JAVA_HOME and generateHLAsmMacroFile.shgenerateHLAsmMacroFile.sh resides

The easiest place to discover where the generateHLAsmMacroFile.sh is to find the z/OS Unix file named: RSED.ENVARS – which is typically found in a subdirectory of: /usr/lpp/rdz/

By opening this file (which should be read-only on your system) you can discover the JAVA and RSE directories

Page 182: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

182

In order to execute the generate the utility, you need to update your UNIX PATH (essentially a search path or "STEPLIB" construct)

The syntax of the statement is:

export PATH=/usr/lpp/java/J6.0:/usr/lpp/rdz/bin/IBM:.:$PATH

In order to execute the export statement:Launch the z/OS UNIX Shell

Enter and run the command

Export the UNIX Path and run generateHLAsmMacroFile.sh

Literal Prefix Directory Path #1 ConcatenateTo the existing Path

Directory Path #2Separator

:

Page 183: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

183

Run generateHLAsmMacroFile.sh

Once you've setup the Path you can execute the generateHLAsmMacroFile.sh

The syntax is as follows:

generateHLAsmMacroFile –filename {your filename} -macroPath {Your Macro Library/PDS} [-verbose] {generation message filename}

Working example:

generateHLAsmMacroFile.sh -fileName ./usermacro.dat -macroPath DDS0001.TEST.MACLIB -verbose > genusermacro.txt

Note – no curly braces in the actual statement

Enter using the same command shell as your PATH statement

Page 184: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

184

Open and Copy the Contents of the Generated User Macro File

If the statement on the previous slide runs successfully, it will create a file named: usermacro.dat – in your z/OS UNIX directory.

Open this file using a Text Editor Select and copy all statements

Page 185: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

185

Create a Local Workstation copy of the usermacro.dat file

After you've got the contents of the generated file copied: From a Local Workstation file (some file

resident on your PC) Create a New File

Name the file (we've defined it as usermacro.dat)

Open the new file with a Text Editor

Paste the copied text from the generated usermacro.dat file on z/OS UNIX

Save your file inserts (Ctrl+S)

Page 186: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

186

Specify the Local File for your User Macro File

Finally – specify the location of your User Macro File in two places: First – copy the filespec

Paste the copied filespec in the remote Property Group: Assembler Editor Options User Macro File Save your file (Ctrl+S)

From Preferences > LPEX Editor > System z LPEX Editor > HLASM Parser Paste the copied filespec in the

User Macro File: area Press OK to save your changes

Page 187: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

®

IBM Software Group

Appendix C - Code ReuseAppendix C - Code Reuse - Code Templates - Code Templates - Code Snippets - Code Snippets

Page 188: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

188

HLASM Editor (Customized Statement Templates) Preferences

Templates are used with Content Assist (Ctrl+Spacebar). They copy in a statement or - template construct - at your cursor's focal point and are time-saving tools.

Page 189: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

189

Workshop – Workshop – Content Assist and Template Proposals – 1 of 2 Do the following:

From Preferences > System z LPEX Editor > HLASM Parser > Templates Note a few of the default templates

Open ADA01.asm in the editor Insert a blank line Place your cursor in the line and press: Ctrl+SpacebarCtrl+Spacebar Type (slowly) e x ee x e - and

note how the list of proposals filters Select EXEC SQL

Scroll down and select

Close ADA01 – and do not save changes

Page 190: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

190

Re-open ADA01.asm in the editor Find the line shown

here in the source code

Right-click and select Add as new template…

Add the Template: Context: HLASM Name: SEND MAP Description: (anything you want)

Click OK

From Preferences, ensure that your new custom template shows up

Open CICSASM.asm – and anywhere in the source file insert a new line, and following the steps on the previous slide add the Send Map statement using Content Assist

Optional Workshop – Optional Workshop – Customized Templates – 2 of 2

Ctrl+Spacebar

Page 191: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

191

Code Snippets

Sometimes, instead of entire programs you might want to: Save some code temporarily for reuse – similar to the ISPF:

"CREATE" and "COPY" command line commands Create a paragraph, computation, complex conditional – that can

be re-purposed in other programs Provide a library "standard" routines – using your shop's coding

conventions Provide a library of syntactically-correct and infrequently

used/high-value statements: Job Cards Database routines Complex COBOL code: UNSTRING etc.

Snippets are the preferred way of doing this. You access them through a Snippets view, which you get to by: From Window > Show View > other… Type: snippets – and select the Snippets view

On the right are a group of custom Snippets that we have created. You will see a subset of these in your workspace.

Individual Snippets are contained in "drawers" which are the accordion menus that collapse/expand on-click.

Snippets can be Exported and Imported (for sharing)

Page 192: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

192

Using Code Snippets (ISPF "COPY" command line command)

To use an existing code Snippet follow the steps below:

1. Place your cursor at the exact focal point (position in the source) where you want a code snippet inserted

2. Find your Code Snippet in the snippet drawers

3. Double-Click the Snippet

4. If there are variables in the snippet, you can: Accept the defaultsAccept the defaults Over-ride the values before the code is Over-ride the values before the code is

insertedinserted

5. Click Insert

Page 193: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

193

Creating Code Snippets (ISPF "CREATE" command) – 1 of 2

To create a new code Snippet follow the steps below:

1. Create a new Snippet category Right-click over the Snippets view Select Customize From Customize Palette, under New

Select: New Category

Name the Category Add a description Click OK

2. Select and copy the code you wish to Snippet-ify 3. Expand the category you wish to add the Snippet to, and select Paste as Snippet…

Page 194: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

194

Creating Code Snippets (ISPF "CREATE" command) – 2 of 2

4. Rename the Snippet and give it a Description5. Optionally add Variables to be filled in by Snippet users (or they can accept the defaults)

Page 195: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

195

Using a Code Snippet for a Job Card

In ISPF you might use the ISPF command line COPY command to insert a Job Card into a JCL deck. Let's try this with RDz

From the \ jcl \ folder, open: BR14.jcl Select and Cut (Ctrl+X) the Job card From the Snippets view, double-click: JOB Card Enter a new JobName and a new MsgClass value Click OK and verify your work

Page 196: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

196

Code Reuse – Summary

Three methods of Code Reuse:Three methods of Code Reuse:1. Program Templates

Useful if creating a new COBOL or PL/I program using the New program wizard

Can include standard (not customized) minimal CICS and SQL statements

2. Snippets Most flexible and simple method of code reuse Snippet scope can be from anywhere from a keyword to an entire program Can define any number of custom variables to manage idiosyncratic

requirements Can export/import Snippets with Workspace Can include Snippets view in custom Perspective

3. Code Templates Most granular form of code reuse Integrates with Content Assist Typically used for statements – but could extend to more code (just, the

interface is a little unwieldy)

Page 197: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

®

IBM Software Group

© 2009 IBM Corporation

Appendix 3 ISPF Appendix 3 ISPF RDz Editor Cheat Sheets RDz Editor Cheat Sheets

Page 198: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

198

RDz – z/OS Comparison Concepts and Products and TSOTSO/ISPFTSO/ISPF RDz – Integrated Development EnvironmentRDz – Integrated Development EnvironmentMainframe – z/OSMainframe – z/OS PC – Windows/LinuxPC – Windows/Linux

JCLJCL JCL. If doing offloading from z/OS. Shell scripts – on AIX machinesJCL. If doing offloading from z/OS. Shell scripts – on AIX machines

Manually analyze codeManually analyze code RDz (see slides in this PowerPoint), and RAAi - RDz (see slides in this PowerPoint), and RAAi - http://www-01.ibm.com/software/awdtools/raa/

Edit Code - ISPFEdit Code - ISPF LPEX editor. Native LPEX or ISPF profileLPEX editor. Native LPEX or ISPF profile

Compile/Compiler OptionsCompile/Compiler Options Validation, Syntax Check (Local or Remote) – Compiler options under RDz Property GroupsValidation, Syntax Check (Local or Remote) – Compiler options under RDz Property Groups

Submit JobSubmit Job Edit JCL and submit job, or just use the Context menu and SubmitEdit JCL and submit job, or just use the Context menu and Submit

Unit Test – DISPLAY/READY Trace, XpeditorUnit Test – DISPLAY/READY Trace, Xpeditor Debug Perspective – for z/OS (batch and online) applications – as well as Local COBOL projectsDebug Perspective – for z/OS (batch and online) applications – as well as Local COBOL projects

Integration Test – XpeditorIntegration Test – Xpeditor IBM Debug Tool IntegrationIBM Debug Tool Integration

QA – Regression Test - WinRunnerQA – Regression Test - WinRunner Remote Systems Testing utilizing Rational Function Tester and Rational Performance TesterRemote Systems Testing utilizing Rational Function Tester and Rational Performance Tester

ABEND-AID/IBM Fault AnalyzerABEND-AID/IBM Fault Analyzer RDz – Integrated Fault Analyzer from the IBM Problem Determination ToolsRDz – Integrated Fault Analyzer from the IBM Problem Determination Tools

File-Aid/IBM File ManagerFile-Aid/IBM File Manager RDz – Integrated File Manager from the IBM Problem Determination ToolsRDz – Integrated File Manager from the IBM Problem Determination Tools

PDS (library)PDS (library) Folders - For Remote/SCM-based Projects and Local (z/OS) ProjectsFolders - For Remote/SCM-based Projects and Local (z/OS) Projects

JESJES Remote Systems View / JES functionality Remote Systems View / JES functionality

Endevor/ChangeMan – or Your SCLMEndevor/ChangeMan – or Your SCLM 3rd Party SCMs utilize RDz's CARMA feature. RTCz and SCLM utilizing the SCLM provide their 3rd Party SCMs utilize RDz's CARMA feature. RTCz and SCLM utilizing the SCLM provide their own RDz views. And there is Local History and source compare in native RDzown RDz views. And there is Local History and source compare in native RDz

ISPF Option 0ISPF Option 0 Window, PreferencesWindow, Preferences

ISPF Option 1 and Option 2ISPF Option 1 and Option 2 RDz EditorRDz Editor

ISPF Option 3.1 (Library Utilities)ISPF Option 3.1 (Library Utilities) Remote Systems view (Context Menu options)Remote Systems view (Context Menu options)

ISPF Option 3.2 (Dataset Utilities)ISPF Option 3.2 (Dataset Utilities) Remote Systems view (Context Menu options)Remote Systems view (Context Menu options)

ISPF Option 3.3 (Move and Copy)ISPF Option 3.3 (Move and Copy) Remote Systems view (Context Menu options)Remote Systems view (Context Menu options)

ISPF Option 3.4 (DSList)ISPF Option 3.4 (DSList) Project Explorer and Filters and Context Menu in Remote Systems Explorer and LPEX EditorProject Explorer and Filters and Context Menu in Remote Systems Explorer and LPEX Editor

ISPF Option 3.8 (Outlist)ISPF Option 3.8 (Outlist) Remote Systems View – JES/My JobsRemote Systems View – JES/My Jobs

ISPF Option 3.11 ISPF Option 3.11 3.15 (Extended Search) 3.15 (Extended Search) Search menu – covered in another RDz Distance Learning moduleSearch menu – covered in another RDz Distance Learning module

ISPF Option 4 (Foreground)ISPF Option 4 (Foreground) Context Menu, Run Context Menu, Run

ISPF Option 6ISPF Option 6 TSO Command Shell – with some functional limitations (e.g. cannot issue Host Execs)TSO Command Shell – with some functional limitations (e.g. cannot issue Host Execs)

ISHELLISHELL Remote Systems Explorer - USS files/filters + Context menuRemote Systems Explorer - USS files/filters + Context menu

OMVSOMVS USS Command ShellUSS Command Shell

SPUFI/QMFSPUFI/QMF Data PerspectiveData Perspective

Page 199: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

199

RDz – ISPF Comparison Chart – PF-Keys

ISPF EditorISPF Editor LPEX EditorLPEX EditorPF 1 = Help PF 1 = Help F1, Help Menu*** See slide notesF1, Help Menu*** See slide notes

PF 2 = Split: Split the session (lets you use PF 2 = Split: Split the session (lets you use two functions of TSO at the same time.) two functions of TSO at the same time.)

Ctrl/2 or Context Menu – Open New View. Note that you can open Ctrl/2 or Context Menu – Open New View. Note that you can open an unlimited number of viewsan unlimited number of views

PF 3 = End PF 3 = End Ctrl+F4, Ctrl + 0, or close the Content AreaCtrl+F4, Ctrl + 0, or close the Content Area

PF 4 = Return PF 4 = Return Ctrl+F4, or close the Content AreaCtrl+F4, or close the Content Area

PF 5 = RFind (repeat last find ) PF 5 = RFind (repeat last find ) F5 or Ctrl/F – and /<text> from LPEX commandF5 or Ctrl/F – and /<text> from LPEX command

PF = 6 RChange (repeat lst change) PF = 6 RChange (repeat lst change) F6 or Ctrl/NF6 or Ctrl/N

PF = 7 Page Backward PF = 7 Page Backward F7 or PgUp key – or slider in windowF7 or PgUp key – or slider in window

PF = 8 Page forward PF = 8 Page forward F8 or PgDn key – or slider in windowF8 or PgDn key – or slider in window

PF = 9 Switch between screens during a split PF = 9 Switch between screens during a split session; goes with PF 2 session; goes with PF 2

Mouse – or Alt + Shift + Right/Left arrowsMouse – or Alt + Shift + Right/Left arrows

PF = 10 Page left PF = 10 Page left Ctrl+PgUp or, the Home key, or slider in windowCtrl+PgUp or, the Home key, or slider in window

PF = 11 Page right PF = 11 Page right Ctrl+PgDn or, the End key, or slider in WindowCtrl+PgDn or, the End key, or slider in Window

PF 12 Retrieve PF 12 Retrieve For LPEX commands, the Up ArrowFor LPEX commands, the Up Arrow

Use ISPF Option 0 to customize PF-KeysUse ISPF Option 0 to customize PF-Keys Use Preferences to customize and extend Function key behaviorUse Preferences to customize and extend Function key behavior

The LPEX Context Menu can be accessed from the Right-mouse button – and from the Windows Menu key (on the keyboard between the right Alt & Ctrl keys)

It should be noted that with the LPEX editor, it is not necessary for most of the above functions to actually press Ctrl/Key It should be noted that with the LPEX editor, it is not necessary for most of the above functions to actually press Ctrl/Key combinations, as the functionality is available from a context menu (right-mouse)combinations, as the functionality is available from a context menu (right-mouse)

Page 200: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

200

RDz – ISPF Comparison Chart – Primary Edit CommandsISPF EditorISPF Editor LPEX EditorLPEX EditorHome key – Jump to the Command LineHome key – Jump to the Command Line Escape key – jumps to the LPEX command lineEscape key – jumps to the LPEX command line

AUTOSAVE/RECAUTOSAVE/REC Prompt for Save on exit, and Autosave (Preferences), and the asterisk – next to unsaved file Prompt for Save on exit, and Autosave (Preferences), and the asterisk – next to unsaved file namesnames

BOTtomBOTtom LPEX command:LPEX command: bottom / Ctrl+End bottom / Ctrl+End

CANcelCANcel Close Content Area w/Save no (CtrlClose Content Area w/Save no (Ctrl

CHANGE – All – NEXT, CHARS, X, ALL PREFIX, FIRST, SUFFIX, LAST, CHANGE – All – NEXT, CHARS, X, ALL PREFIX, FIRST, SUFFIX, LAST, WORD, PREV, [col-1] [col-2]WORD, PREV, [col-1] [col-2]

Supported using Change All, Next, PREV, Prefix and Suffix (with wildcards), Prev, Word, [col-1]Supported using Change All, Next, PREV, Prefix and Suffix (with wildcards), Prev, Word, [col-1][col-2], …or… Find/Replace menu (Ctrl+F), ISPF or the Search/Replace dialog:[col-2], …or… Find/Replace menu (Ctrl+F), ISPF or the Search/Replace dialog:

Copy Member NameCopy Member Name LPEX command: LPEX command: Get filenameGet filename

CREATECREATE Save file as…, or use Snippets ViewSave file as…, or use Snippets View

FIND – NEXT, CHARS, X, ALL PREFIX, FIRST, SUFFIX, LAST, WORD, FIND – NEXT, CHARS, X, ALL PREFIX, FIRST, SUFFIX, LAST, WORD, PREV, [col-1] [col-2]PREV, [col-1] [col-2]

http://www.felgall.com/tso2.htm http://www.felgall.com/tso2.htm

Supported using Supported using findTextfindText, Ctrl+F, or the Search window: Find All, Next, PREV, Prefix and Suffix , Ctrl+F, or the Search window: Find All, Next, PREV, Prefix and Suffix (with wildcards), Prev, Word, [col-1][col-2], P(with wildcards), Prev, Word, [col-1][col-2], P

Not supported: First, LastNot supported: First, Last

HEX – Displays all lines in HexadecimalHEX – Displays all lines in Hexadecimal Display one individual lines in HexDisplay one individual lines in Hex

ISPF MacrosISPF Macros Not available – but can be re-written using Java for LPEX. Also, note that with the LPEX Not available – but can be re-written using Java for LPEX. Also, note that with the LPEX functionality some of the Macro functionality may not be necessaryfunctionality some of the Macro functionality may not be necessary

LOCATELOCATE Ctrl+L, or use the Outline ViewCtrl+L, or use the Outline View

MODELMODEL Snippets and Templates (both options)Snippets and Templates (both options)

MOVE Member NameMOVE Member Name LPEX Get command, in a different way, the Snippets ViewLPEX Get command, in a different way, the Snippets View

NUMBERNUMBER LPEX command: number std (columns 73LPEX command: number std (columns 7380), or number cob80), or number cob

PRINT – from ISPF 3.4PRINT – from ISPF 3.4 LPEX command: print, or Ctrl+PLPEX command: print, or Ctrl+P

PROFILE – are the changes made to your profile PROFILE – are the changes made to your profile PreferencesPreferences

Replace Member NameReplace Member Name Snippets functionalitySnippets functionality

RESetRESet RES command, or: Ctrl+W, or expandAll, or: action showAllRES command, or: Ctrl+W, or expandAll, or: action showAll

SaveSave Ctrl/S or LPEX: save commandCtrl/S or LPEX: save command

SortSort LPEX command: sortLPEX command: sort

STATS – updates statisticsSTATS – updates statistics Windows updates file statisticsautomaticallyWindows updates file statisticsautomatically

SUBmitSUBmit LPEX command: Submit, or edit JCL/Context Menu/Submit, or use Context Menu/Submit optionLPEX command: Submit, or edit JCL/Context Menu/Submit, or use Context Menu/Submit option

TABSTABS Set margins in Preferences, LPEX Editor, TabsSet margins in Preferences, LPEX Editor, Tabs

TOPTOP LPEX command: top / Ctrl+HomeLPEX command: top / Ctrl+Home

TSO SUBTSO SUB LPEX command: submit, and edit JCL/Context Menu/Submit, or use Context Menu/Submit optionLPEX command: submit, and edit JCL/Context Menu/Submit, or use Context Menu/Submit option

UNNUMUNNUM LPEX command: unnumLPEX command: unnum

Page 201: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

201

RDz – ISPF Comparison Chart – Find Commands – Picture Strings

ISPF EditorISPF Editor LPEX EditorLPEX EditorSimple StringSimple String YY

Previous StringPrevious String Find Previous / F5Find Previous / F5

Delimited StringDelimited String YY

Text stringText string YY

Picture Strings – special charactersPicture Strings – special characters Y – with regular expressionsY – with regular expressions

P'=' – any characterP'=' – any characterCtlr+F, Ctlr+F, Regular Expression, Regular Expression, ..

P'-' – any non-blank characterP'-' – any non-blank character Ctlr+F, Ctlr+F, Regular Expression, Regular Expression, [^\s][^\s]P'.' – any non-displayable characterP'.' – any non-displayable character Ctlr+F, Ctlr+F, Regular Expression, Regular Expression, [^\x20-\x7E][^\x20-\x7E]P'#' – any numeric characterP'#' – any numeric character Ctlr+F, Ctlr+F, Regular Expression, Regular Expression, [0-9][0-9]P'-' – any non-numeric characterP'-' – any non-numeric character Ctlr+F, Ctlr+F, Regular Expression, Regular Expression, [^0-9\x20][^0-9\x20]P'@' – any alphabetic characterP'@' – any alphabetic character Ctlr+F, Ctlr+F, Regular Expression, Regular Expression, [A-Za-z][A-Za-z]P'<' – any lower-case characterP'<' – any lower-case character Ctlr+F, Ctlr+F, Regular Expression, Regular Expression, [a-z][a-z]P'>' any upper-case alphabetic characterP'>' any upper-case alphabetic character Ctlr+F, Ctlr+F, Regular Expression, Regular Expression, [A-Z][A-Z]P'$' – any special character P'$' – any special character (not (not alphanumeric)alphanumeric) Ctlr+F, Ctlr+F, Regular Expression, Regular Expression, [^A-Za-z0-9][^A-Za-z0-9]

Note: for more Regular expression searches: http://en.wikipedia.org/wiki/Regular_expression

Ctrl+F

^̂ logical NOT logical NOT \ \ special Expressionspecial Expression

\x\x HexadecimalHexadecimal

. . Dot, any single Dot, any single charactercharacter

Page 202: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

202

RDz – ISPF Comparison Chart – Prefix Area CommandsISPF EditorISPF Editor LPEX Editor – ISPF ModeLPEX Editor – ISPF Mode LPEX Editor – lpex ModeLPEX Editor – lpex Mode

A, An – AfterA, An – After A, AnA, An Context menu Context menu

B, Bn – BeforeB, Bn – Before B, BnB, Bn Context menuContext menu

COLS – show columnsCOLS – show columns Columns always shownColumns always shown Columns always shownColumns always shown

C, Cn, CC – CopyC, Cn, CC – Copy C, Cn, CCC, Cn, CC Context menuContext menu

D, Dn, DDD, Dn, DD D, Dn, DDD, Dn, DD Context menu or Ctrl+BackspaceContext menu or Ctrl+Backspace

F, Fn – First (used with eXclude)F, Fn – First (used with eXclude) F, Fn (used with eXclude)F, Fn (used with eXclude) N - Find excludes lines of codeN - Find excludes lines of code

I, In – Insert linesI, In – Insert lines I, InI, In Press <Enter>, or Press <Enter>, or

LPEX command: insertLPEX command: insert

LPEX command: addLPEX command: add

L, Ln – Last (used with eXclude)L, Ln – Last (used with eXclude) N - Find excludes lines of codeN - Find excludes lines of code N - Find excludes lines of codeN - Find excludes lines of code

M, Mn, MM – MoveM, Mn, MM – Move M, Mn, MM-Move, and Context menuM, Mn, MM-Move, and Context menu Context menuContext menu

R, Rn, RR, RRn – Repeat linesR, Rn, RR, RRn – Repeat lines R, Rn, RR, RRn, and Context menu, Ctrl+DR, Rn, RR, RRn, and Context menu, Ctrl+D Context menu – or Ctrl+DContext menu – or Ctrl+D

S, Sn – Show (used with eXclude)S, Sn – Show (used with eXclude) S, Sn – Show (used with eXclude) and S, Sn – Show (used with eXclude) and FilterFilter

FilterFilter

TABS – used with TAB OnTABS – used with TAB On Set with PreferencesSet with Preferences Set with PreferencesSet with Preferences

X, Xn, XX eXcludeX, Xn, XX eXclude X, Xn, XXX, Xn, XX FilterFilter

O, On, OO – OverlayO, On, OO – Overlay O, On, OOO, On, OO Use Rectangle Copy/PasteUse Rectangle Copy/Paste

LC, UC – Lower-case/Upper-caseLC, UC – Lower-case/Upper-case LC, UCLC, UC Use the Context menuUse the Context menu

TS, TSn – Text SplitTS, TSn – Text Split Ctrl+<Enter>Ctrl+<Enter> <Enter><Enter>

<, <n, <<N Shift Data Left<, <n, <<N Shift Data Left <, <n, <<n<, <n, <<n Use Rectangle Select – shiftUse Rectangle Select – shift

>, >n, >>n Shift Data right>, >n, >>n Shift Data right >, >n, >>n>, >n, >>n Use Rectangle Select – shiftUse Rectangle Select – shift

(, (n, ((, ((N – columns left – Used (, (n, ((, ((N – columns left – Used with COBOLwith COBOL

(, (n, ((n(, (n, ((n Use Rectangle Select – shiftUse Rectangle Select – shift

), )n, )), ))n – Columns Right), )n, )), ))n – Columns Right ), )n, ))n), )n, ))n Use Rectangle Select – shiftUse Rectangle Select – shift

Page 203: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

203

RDz – ISPF Comparison Chart – RDz – ISPF Comparison Chart – LPEXLPEX Editing Operations – 1 of 2 Editing Operations – 1 of 2LPEX EditorLPEX Editor ISPF EditorISPF EditorRefactor – Remove Noise Words: - IS, THEN, PROCEED TORefactor – Remove Noise Words: - IS, THEN, PROCEED TO N/AN/A

Multiple Line Comment/UncommentMultiple Line Comment/Uncomment N/AN/A

Virtual margins – in the editorVirtual margins – in the editor N/AN/A

Code completion (Content Assist)Code completion (Content Assist) N/AN/A

Open CopybookOpen Copybook N/AN/A

Open Declaration – of variable or PERFORM'd paragraph from anywhere in the Open Declaration – of variable or PERFORM'd paragraph from anywhere in the Procedure DivisionProcedure Division

N/AN/A

Perform HierarchyPerform Hierarchy N/AN/A

Refactor – wizard for intelligent variable name changesRefactor – wizard for intelligent variable name changes N/AN/A

Outline ViewOutline View N/AN/A

Filter View – Show only Divisions, SQL,CICS,DL/I, Code (no comments), etc.Filter View – Show only Divisions, SQL,CICS,DL/I, Code (no comments), etc. N/AN/A

COBOL, PL/I and HLASM keyword / language help COBOL, PL/I and HLASM keyword / language help N/AN/A

Show lines that have been changed during edit (before save)Show lines that have been changed during edit (before save) N/AN/A

Find and Change against multiple file typesFind and Change against multiple file types N/AN/A

Block Marking (Ctrl+Down, Ctrl+Up, Ctrl+Home, Ctrl+End)Block Marking (Ctrl+Down, Ctrl+Up, Ctrl+Home, Ctrl+End) N/AN/A

Virtual 'A' and 'B' Column lines in the source codeVirtual 'A' and 'B' Column lines in the source code N/AN/A

Allocate LikeAllocate Like N/AN/A

Remote System FiltersRemote System Filters N/AN/A

Side-by-side Compare and/or Restore from Local HistorySide-by-side Compare and/or Restore from Local History N/AN/A

Close all split screens in one operation (context menu)Close all split screens in one operation (context menu) N/AN/A

See file attributes and statistics at all times (in a View)See file attributes and statistics at all times (in a View) N/AN/A

Page 204: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

204

RDz – ISPF Comparison Chart – RDz – ISPF Comparison Chart – LPEXLPEX Editing Operations Editing OperationsLPEX EditorLPEX Editor ISPF EditorISPF EditorSee file attributes and statistics at all times (in a View)See file attributes and statistics at all times (in a View) N/AN/A

Wizard-driven approach to creating Web Services (WSDL files) from: CICS and IMS TM Wizard-driven approach to creating Web Services (WSDL files) from: CICS and IMS TM applicationsapplications

N/AN/A

Wizard-driven approach to creating, testing and deploying DB2 Stored ProceduresWizard-driven approach to creating, testing and deploying DB2 Stored Procedures N/AN/A

Copy files from one LPAR to anotherCopy files from one LPAR to another N/AN/A

Edit/Compile/Unit Test if the mainframe is offlineEdit/Compile/Unit Test if the mainframe is offline N/AN/A

Syntax error – automatically select line with problemSyntax error – automatically select line with problem N/AN/A

See 46 See 46 76 lines of source at once 76 lines of source at once N/AN/A

Templatized program developmentTemplatized program development N/AN/A

Regular expression searches – including across Filtered files of different file typesRegular expression searches – including across Filtered files of different file types N/AN/A

Keystroke recorder (useful for repetitive tasks and online testing)Keystroke recorder (useful for repetitive tasks and online testing) N/AN/A

Bookmark and Tasks (both lines of source and filtered views)Bookmark and Tasks (both lines of source and filtered views) N/AN/A

Find "Last Changed" line of source code / Ctrl+JFind "Last Changed" line of source code / Ctrl+J N/AN/A

Mark lines – including individual namesMark lines – including individual names N/AN/A

Find Marked Lines / Find named Marked LinesFind Marked Lines / Find named Marked Lines N/AN/A

Syntax errors as you typeSyntax errors as you type N/AN/A

Syntax check in the editorSyntax check in the editor N/AN/A

Page 205: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

205

© Copyright IBM Corporation 2009. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials 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 the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others.

Page 206: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

206

Optional Review Topic – RDz and Equivalent ISPF Options

ISPF Option 3for remotefiles

Additional ISPF panels as Views

ISPF Edit, View or Browse(=2 or =1)

ISPF Option 3for localfiles

ISPF 3.2

Page 207: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

207

Optional Review Topic – MoreMore RDz Workbench/Equivalent ISPF Panels

ISPF 3.8

JCL Viewed

ISPF =6

Page 208: ® IBM Software Group © September 2013 IBM Corporation Jon Sayles RDz Technical Enablement jsayles@us.ibm.com Introduction to Rational Developer for System

208

Proposed Education – for COBOL and ALC Audiences

Day 1: Eclipse: 120 – 45/75 <Break> 15 ISPF + Hot Keys: 45 – 15/30 Custom Workspace: 25 – 10/15

Custom Help JCLCheck Other custom menu functionality

HCE: 20 – 5/15 Allocate files Drag & Drop

Lunch – 45 minutes RSE: 120 – 45/75

Open/Browse Search Filters Retrieve Datasets Find member JES

<Break> 15 MVS SubProjects: 30 – 20/10 Endevor: 45 – 20/25

Homework: Day 1 Review

Day 2 COBOL Review Advanced Editing Tools: 60 – 20/40

Ctrl + F Find Hex edit Content Assist Filters

COBOL Analysis & Source Format: 45 – 20/25

<Break 15> Workspace Prefs: 30 – 10/20

LPEX Preferences RSE Preferences

DB2/SQL Tools: 45 – 25/20 RSE ISPF 3.X features: 30 – 15/15 Lunch – 45 minutes Customizing RSE: 30 – 15/15

Property Groups z/OS File Mapping

File Manager: 75 – 30/45 <Break 15> Debug Tool for COBOL: 105 – 30/75

Day 2 Assembler Review Workspace Preferences: 90 – 30/60

LPEX Colors Assembler Edit Preferences Macros Custom PF Keys Assembler Code Templates

<Break 15> Advanced Editing Tools: 60 – 20/40

Ctrl + F Find Filters Content Assist

RSE ISPF 3.X features: 30 DB2/SQL Tools – Demo: 15 Lunch – 45 minutes Customizing RSE: 30 – 15/15

Property Groups z/OS File Mapping

File Manager: 75 – 30/45 <Break 15> Debug Tool for Assembler: 90