36
Compute (Bridgend) Ltd CBLi 1.60 New Features for IBM Mainframe z/OS, VSE & VM/CMS Systems 8 Merthyr Mawr Road, Bridgend, Wales UK CF31 3NH Tel: +44 (1656) 65 2222 Fax: +44 (1656) 65 2227 CBL Web Site - http://www.cbl.com This document may be downloaded from http://www.cbl.com/cblidoc.html CBL Ref: z:\hst\dist\all\CBLi_1.60_New_Features_FrontPage.html - 2009/03/09 15:22:45 -

CBLi 1.60 New Features for IBM Mainframe z/OS, VSE ... (Bridgend) Ltd CBLi 1.60 New Features for IBM Mainframe z/OS, VSE & VM/CMS Systems 8 Merthyr Mawr Road, Bridgend, Wales UK CF31

Embed Size (px)

Citation preview

Compute (Bridgend) Ltd

CBLi 1.60 New Featuresfor IBM Mainframe z/OS, VSE & VM/CMS Systems

8 Merthyr Mawr Road, Bridgend, Wales UK CF31 3NH

Tel: +44 (1656) 65 2222Fax: +44 (1656) 65 2227

CBL Web Site - http://www.cbl.com

This document may be downloaded from http://www.cbl.com/cblidoc.html

CBL Ref: z:\hst\dist\all\CBLi_1.60_New_Features_FrontPage.html - 2009/03/09 15:22:45 -

Contents CBLi 1.60 New Features.....................................................................................................................................................................1

Documentation Notes.............................................................................................................................................................1

Section 01: Important Changes.........................................................................................................................................................2MVS: List Catalog/Dataset - Trailing "*" Wildcard...................................................................................................................2MVS: List Library - Member Mask(s).......................................................................................................................................2MVS: SDE and Dynamic SQL Supported for SELCOPY Licences Only................................................................................2MVS: SDE BROWSE Record Length Display.........................................................................................................................3MVS: SDE Record Type Dynamic Refresh.............................................................................................................................3All: Maximised Windows in the CBLi Main Window................................................................................................................3

Section 02: New Facilities..................................................................................................................................................................5MVS: File Search & Update Utility..........................................................................................................................................5

FSU - File Search/Update Window..................................................................................................................................5File Search & Update Output...........................................................................................................................................5CBLi CLI FSU Command.................................................................................................................................................6FSUUNDO.......................................................................................................................................................................8

MVS: SDE Editing Techniques - Large File Edit.....................................................................................................................9Full Edit............................................................................................................................................................................9Read Only Edit.................................................................................................................................................................9Update-in-place Edit........................................................................................................................................................9KSDS Edit......................................................................................................................................................................10AUXILIARY Edit.............................................................................................................................................................10

MVS: SDE Browse/Edit Utilities Menu..................................................................................................................................10MVS: SDE CLI CREATE STRUCTURE Updated.................................................................................................................11MVS: SDE Edit Dialog...........................................................................................................................................................12

SDE Edit Dialog Window...............................................................................................................................................12SDE CLI EDITDIALOG Command.................................................................................................................................12

MVS: SDE CLI EDIT Updated...............................................................................................................................................13MVS: SDE CLI LIST MODULES...........................................................................................................................................14MVS: SDE CLI LOCATE Updated........................................................................................................................................15MVS: SDE CLI REPLACE.....................................................................................................................................................16MVS: SDE CLI RESET Updated...........................................................................................................................................17MVS: SDE CLI SAVESTRUCTURE......................................................................................................................................17MVS: SDE CLI SORT...........................................................................................................................................................17MVS: SDE CLI TEDIT...........................................................................................................................................................18MVS: SDE CLI VIEW Updated..............................................................................................................................................18MVS: SDE CLI SET/QUERY/EXTRACT AUXDSNPREFIX..................................................................................................19MVS: SDE CLI SET/QUERY/EXTRACT COMPILER...........................................................................................................19MVS: SDE CLI EXTRACT FVALUE......................................................................................................................................20MVS: SDE CLI SET/QUERY/EXTRACT LOADWARNING...................................................................................................21MVS: SDE CLI SET/QUERY/EXTRACT MAXCOBOLRC....................................................................................................21MVS: SDE CLI SET/QUERY/EXTRACT MAXPL1RC..........................................................................................................22MVS: SDE CLI SET/QUERY/EXTRACT MAXSTOR............................................................................................................23MVS: SDE CLI SET/QUERY/EXTRACT OFFSET................................................................................................................24MVS: SDE CLI SET/QUERY/EXTRACT RECINFO..............................................................................................................25MVS: SDE CLI QUERY/EXTRACT RECTYPES..................................................................................................................27MVS: SDE CLI QUERY/EXTRACT REGION........................................................................................................................27MVS: Common CBLe & SDE CLI Commands......................................................................................................................28

Section 03: Other Changes..............................................................................................................................................................31All: List Window Prefix Command Area................................................................................................................................31All: Current Time Stamp Display...........................................................................................................................................31MVS: SDE COBOL Copy Book "01" Entries.........................................................................................................................31MVS: SDE Progress Window and Attn Key Interrupt............................................................................................................32All: CBLe CLI DIALOG..........................................................................................................................................................32All: CBLe CLI SET INIVAR....................................................................................................................................................32All: CBLi CMDTEXT Cursor Positioning................................................................................................................................33All: CBLi 1.50 Zaps applied...................................................................................................................................................34

CBLi 1.60 New Features - 2009

2009/03/12 10:41:43 i

CBLi 1.60 New Features

Documentation NotesInformation in this New Feature List reflects differences between CBLi 1.50 and CBLi 1.60, the interactive components ofSELCOPY and CBLVCAT.

The CBL Product Bundles for MVS, CMS and VSE operating systems which include SELCOPY, CBLi and CBLVCAT areavailable for download and install from http://www.cbl.com/cblidl.html.

The CBLi Update Guide, CBLi Reference and User Guide, CBLe Editor Manual, SDE Manual and these CBLi New Featuresare available in Adobe Acrobat PDF format at CBL web page http://www.cbl.com/cblidoc.html.

The CBL Products Installation Guide and New Features documents are available in Adobe Acrobat PDF format at CBL webpage http://www.cbl.com/selcdoc.html.

Copyright in the whole and every part of this document and of the SELCOPY system and programs, is owned by Compute(Bridgend) Ltd, whose registered office is located at 8 Merthyr Mawr Road, Bridgend, Wales, UK, CF31 3NH, and who reserve theright to alter, at their convenience, the whole or any part of this document and/or the SELCOPY system and programs.

No reproduction of the whole or any part of the SELCOPY system and programs, or of this document, is to be made without priorwritten authority from Compute (Bridgend) Ltd.

At the time of publication, this document is believed to be correct. CBL do not warrant that upward compatibility will be maintainedfor any use made of this program product to perform any operation in a manner not documented within the user manual.

The following generic terms are used throughout this document to indicate all available versions and releases of IBM mainframeoperating systems:

MVS - z/OS, OS/390, MVS/ESA, MVS/XA, MVS/SP, OS.

VSE - z/VSE, VSE/ESA, VSE/SP, DOS.

CMS - z/VM, VM/ESA, VM/XA, VM/SP.

All - All IBM mainframe operating systems and releases.

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 1

Section 01: Important Changes

MVS: List Catalog/Dataset - Trailing "*" WildcardGenerating a list of data sets (via the Catalog List or Dataset List windows) requires provision of a data set file mask. This isprovided as either a parameter on the invoking CBLi CLI command, LISTCAT or LISTDATASET, or via the Entry field of theCatalog List or Dataset List window.

Existing Wildcard Definitions:

The wildcard character "*" (asterisk) indicates that zero or more characters can occupy this position within a single dataset qualifier.

1.

The wildcard character string "**" (double asterisk) indicates that zero or more qualifiers can occupy this position within thedata set name. This wildcard string cannot precede or follow any characters; it must be preceded or be followed by eithera dot or a blank.

2.

A change introduced in CBLi 1.50 to alter the interpretation of trailing wildcards, has been further sophisticated to closely mimic theeffect of wild card specification within the MVS ISPF Data Set List Utility (3.4).

If the supplied filemask has wildcard "*" as the last character, then a wildcard string of ".**" is automatically appended. e.g.

LC DEV.OEM.CBL202* becomes: LC DEV.OEM.CBL202*.** LC SYS1.ZOS* becomes: LC SYS1.ZOS*.**

In previous releases, where the file mask ends with a single wildcard character "*", no ".**" is appended and so the data setqualifier containing the trailing "*" is the last (lowest level) qualifier in the file mask. Data set names with a greater number ofqualifiers were not selected. e.g. A file mask of CBL.DIST* would include data set CBL.DIST160, but notCBL.DIST.WORK.D016652.

In order to suppress the automatic addition of a trailing ".**" wild card string and so treat the trailing qualifier as the lowest levelqualifier, a "." (dot/period) should be specified as the last character of the file mask. This trailing "." is automatically stripped and nowild card string is appended. e.g.

LC DEV.OEM.CBL202*. becomes: LC DEV.OEM.CBL202* LC SYS1.ZOS*. becomes: LC SYS1.ZOS*

MVS: List Library - Member Mask(s)An optional member name mask may be specified to select specific members when generating a list of PDS(E) library members fora Library List window. The member mask is provided within parentheses following the DSN of the PDS(E) library and may includeone or more occurrences of the wildcard characters "%" (percent) and/or "*" (asterisk). Percent represents a single characterwhereas asterisk represents zero or more characters in the member name. e.g. To list all members of the CBLi Help library thathave member name beginning with "S" and containing the string "AN" as the next to last characters of the member name:

LL DEV.OEM.CBL202.CBLI.HELP.HTML(S*AN%)

Member selection is now further sophisticated to allow multiple member masks within the parentheses. Each mask may contain thewildcard characters and must be separated by one or more blanks and/or a comma. e.g. To sophisticate the previous example toinclude members with member names beginning with string "WIN" and members with member names ending with "R":

LL DEV.OEM.CBL202.CBLI.HELP.HTML(S*AN% WIN*, *R)

MVS: SDE and Dynamic SQL Supported for SELCOPY Licences OnlyFor releases of CBLi 1.60 onwards, the Structured Data Environment (SDE) feature, introduced in CBLi 1.50, and Dynamic SQL forDB2 data bases, included within the first release of CBLi, is now only enabled for users able to execute a licensed copy ofSELCOPY. i.e. Users licensed to use CBLVCAT only are no longer able to use these features.

SDE allows edit, browse and update-in-place on data sets using a defined structure generated from COBOL or PL/1 copy books orusing SDE internal syntax. This advanced form of data manipulation is considered to be outside the scope of CBLVCATfunctionality. (CBLVCAT is a utility used for VTOC/Catalog reporting and VSAM data set tuning.)

Dynamic SQL DB2 data base access from CBLi requires that the SELCOPY dynamic SQL interface, SELCOPQL, is available. Thismodule is not part of the CBLVCAT product.

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 2

MVS: SDE BROWSE Record Length DisplaySDE BROWSE window view no longer displays the LRecL field by default.

Introduction of SET RECINFO gives the user control over the display of record Flags, LRecL and Location ID for both Edit andBrowse window views.

Figure 1. SDE Browse Window View.

MVS: SDE Record Type Dynamic RefreshAny update to a record type (RTO) definition within an in-storage structure (SDO) will cause an immediate re-assessment of therecord types associated with records within current SDE window views where the SDO is used.

Currently, an RTO may only be updated by an SDE USE WHEN or SET OFFSET command.

USE WHEN will apply or update record type selection criteria based on content of data fields whereas SET OFFSET will update theoffset from the start of the record data at which the record mapping will start. (See SET/QUERY/EXTRACT OFFSET later in thisdocument.)

All: Maximised Windows in the CBLi Main WindowIn previous releases of CBLi, windows opened within the CBLi main window would, when maximised, occupy all rows except thefirst 2 rows at the top of the screen display. These were reserved for the CBLi title bar and main window menu bar.

In order to display as much data as possible in these maximised windows, CBLi release 1.60 removes this restriction so that thefirst 2 rows of the display are occupied by the maximised window's title bar and menu bar.

On startup of CBLi, a CBLe frame window is opened automatically to display the user's HOME (CMX) command centre file. This isbecause, although not compulsory, it is intended that use of CBLi's functions should originate from the CBLe text edit environment.Since, in most instances, the CBLe frame window is opened in a maximised state, the CBLi title bar and menu is never in display.

So that the CBLi main window title bar information and its menu bar items are still accessible when the CBLe frame window is in amaximised state, the following ammendments have been made:

Section 01: Important Changes MVS: SDE BROWSE Record Length Display

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 3

The CBLe frame window "Help" menu item opens a drop down menu containing help items relating to different aspects ofCBLi functionality as well as an "About" entry that displays release and build information usually visible in the CBLi mainwindow title bar.

1.

CBLe frame window menu bar items have been updated to contain all entries and sub-entries associated with the CBLimain window menu bar.

2.

Section 01: Important Changes All: Maximised Windows in the CBLi Main Window

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 4

Section 02: New Facilities

MVS: File Search & Update UtilityIn addition to the existing FSEARCH utility which supports a single string search on members of a single PDS(E) library, CBLi 1.60introduces the more advanced FSU (File Search & Update) utility.

There is often a requirement to locate and optionally change strings of data in multiple data sets and/or PDS members, andsubsequently produce a report of those records where a data string was found and optionally updated.

Furthermore, it may be necessary to locate (and change) only values in particular fields within records that are mapped by adefined structure (e.g. a COBOL copy book) and match specific criteria. e.g. In a structured file containing employee data, find allrecords where the employee name is "Smith" and where salary is greater than 20,000.

The FSU (File Search and Update) utility allows users to perform all these tasks using an intuitive dialog window or the CBLi CLIcommand, FSU. These are documented at length within the CBLi Reference and User's Guide.

The functionality and features provided by the structured data environment (SDE) are used by FSU to perform the advanced recordselection and update. Consequently, the FSU utility is only available to users who have a licensed version of SELCOPY installedand operational on their system.

FSU - File Search/Update Window

The FSU - File Search/Update window may be opened via the following:

Select 'File search/update' from the Utilities menu.• Execute the command FSU with no parameters from the command line of any window.• Execute the prefix command "F" from an Execute CBLVCAT or file List type window.•

Figure 2. File Search/Update Dialog Window.

File Search & Update Output

Report output of records found and/or records updated during execution of the File Search & Update utility, is presented in an SDEedit window.

This window view is opened when the first report record is generated, Thereafter, the display is refreshed every second as the FSUoperation executes, allowing the user to view the progress.

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 5

Figure 3. File Search & Update Output.

In the FSU output displayed in Figure 3., the user has hit the PF2 key on the Summary record, to display the record's fields insingle view, and also executed the following SDE SELECT command to restrict the fields displayed in records of record type Hit:

SELECT zMember, zT, zRecord FROM Hit

CBLi CLI FSU Command

Syntax:

Unstructured File Search & Update•

(1)>>- FSU -+------------------------------+------------------------------------> | | | +--------------+ | | V | | +- INPut ( - fileid_mask -+-) -+

>--+----------------------------------------+---+-----------------------+---> | (3) | | (2) | | +------- AND -------+ | +- WHere where_clause -+ | (2) V | | +- Find (-+--- ( find_parms ) --+-+-) -+ | | | (4) | | +------- OR --------+ | | V | | +--- ( find_parms ) --+-+

>--+-----------------------------------------------------------+------------>< | (3) | | +------- AND -------+ +- NOUpdate -+ | | (2) V | | | | +- Change (-+-- ( change_parms ) -+-+-) --+------------+----+ | | | | | (4) | +-- UPDate --+ | +------- OR --------+ | | V | | +-- ( change_parms ) -+-+

Section 02: New Facilities File Search & Update Output

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 6

Structured File Search & Update•

(1)>>- FSU -+-----------------------------------------------------------------+-> | | | +--------------+ | | V | | +- INPut ( - fileid_mask -+-) -- USING +----------+- struct_name -+ | | +- STRUCT -+

>--+-----------------------+------+-------------------------+---------------> | | | | +- VIEW record_type ---+ +- SELect select_clause -+

>--+----------------------------------------+---+-----------------------+---> | (3) | | (2) | | +------- AND -------+ | +- WHere where_clause -+ | (2) V | | +- Find (-+--- ( find_parms ) --+-+-) -+ | | | (4) | | +------- OR --------+ | | V | | +--- ( find_parms ) --+-+

>--+-----------------------------------------------------------+------------>< | (3) | | +------- AND -------+ +- NOUpdate -+ | | (2) V | | | | +- Change (-+-- ( change_parms ) -+-+-) --+------------+----+ | | | | | (4) | +-- UPDate --+ | +------- OR --------+ | | V | | +-- ( change_parms ) -+-+

Notes:

Parameters may be entered in any order.1. At least one of FIND, WHERE or CHANGE must be specified.2. AND logical operator literal or its equivalent symbol: "&" (ampersand).3. OR logical operator literal or its equivalent symbols: "¦" (broken bar) or "|" (vertical line).4.

Description:

Each parameter of the FSU command, other than INPUT, equates to an SDE CLI command to filter records and columns, find andupdate fields within the selected data sets. If FSU is executed with no parameters, the FSU - File Search/Update Window isopened.

See FSU CLI command in the CBLi Reference and User's Guide for full details.

Examples:

Use of the CLI FSU command may result in long command streams. Therefore, it is recommended that any FSU command shouldbe entered as text in your HOME command centre (CMX) data set.

<sdata fsu input ( XRVHC.**.PROCLIB(*) SYS1.PROCLIB(*) ) find( DSN710 )Report any member records within the specified PROCLIB libraries that contain the string "DSN710".

<sdata fsu input ( XRVHC.**.PROCLIB(*) SYS1.PROCLIB(*) ) change( DSN710 DSN810 ALL )For member records within the specified PROCLIB libraries, report records that contain the string "DSN710" followed bythe records' appearance after replacing all occurrences of "DSN710" to "DSN810". Members records are not updated.

<sdata fsu INPUT ( SAR22.TEST.FX*.** ) \ USING ( SAR22.FX100.COBOL.COPYBK.SDO ) \ VIEW ( FX_Part_02 ) \ SELECT( Part_ID, Serial_No, Batch_No, Part_Description ) \ WHERE ( Batch_No > 730 AND (Fault_Type >> 'RTB' OR Quantity < 200) ) \ FIND ( c'Nut' PREFIX (Part_Description) ) \ CHANGE( 'screw' 'bolt' WORD (Part_Description) ) \ NOUPDATE

A Structured File Search and Replace. Records from data sets and members of PDS(E) libraries whose DSNs match thespecified fileid mask are filtered so that only records that are of the record type "FX_Part_02" and match the FIND andWHERE criteria are processed by the CHANGE operation. SELECT indicates a subset of fields eligible to be searched,updated, and displayed in the output report. Both the FIND and CHANGE arguments further restrict string location/updateto text within the field "Part_Description" only.

Section 02: New Facilities CBLi CLI FSU Command

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 7

FSUUNDO

The FSUUNDO utility exists in order to allow the user to recover from any accidental or erroneous execution of the File Search &Update (FSU) utility where update of record data has occured. FSUUNDO is implemented in CBLi as an edit macro and so must beexecuted from a CBLe or SDE window view.

When the FSU utility is executed to change and immediately UPDATE data set records, the original record data, before executionof the change operation(s), is recorded in the FSU output report. (Users are strongly recommended to save this report whenprompted on exit of the report edit window.) FSUUNDO uses these report records as part of its processing and so will only operatesuccessfully if the FSU report data set exists.

FSUUNDO generates a SELCOPY executable program that performs the following:

Input the FSU report records.1. For each "Hit" record "Before" and "After" pair reported in the FSU output, identify the DSN, PDSE(E) member name (ifapplicable) and record number at which the updated record may be found.

2.

Sequentially read records from the data set or PDS(E) member until the required record number is found.3. Verify that the input record matches the record "After" data reported in the FSU output.4. Optionally UPDATE the data set record with the record "Before" data reported in the FSU output, thus restoring the recordto its original status.

5.

Generate an entry in the FSUUNDO report.6. Repeat all steps until all "Hit" record pairs in the FSU output report have been processed.7.

Error checking is also performed for conditions which include record not found or containing unexpected data. These conditions arereported in the FSUUNDO output report.

This SELCOPY job may be executed in the Foreground (TSO) or displayed as a JCL job, suitable for submission to batch. Usingeither method, options exist to generate an Expanded or Terse report, an optional Diagnostic SELCOPY execution report and,most importantly, options to Verify or Update changed records.

It is strongly recommended that users execute FSUUNDO with options VERIFY (the default) and EXTENDED, and then review theFSUUNDO output report before executing FSUUNDO again with option UPDATE.

Beware that record data that has been changed between the time of execution of the original File Search & Update job and thisexecution of FSUUNDO, will not be updated but will be reported as an error. Processing will continue with input of the next "Hit"record pair. Records that have already been restored as a result of a previous execution of FSUUNDO UPDATE, will be reportedas a match and no error returned.

If SELCOPY ends with a return code other than 0 (zero - successful execution, no error conditions) or 112 (errors condition(s)detected), then re-run with option DIAGNOSE to establish the cause of the SELCOPY error.

The most likely cause of an unxpected return code will be if a selection (run) time error (RC=44) has occured. Usually caused by anOPEN error for an input data set (e.g. if an exclusive ENQ already exists for the data set.) In this event, SELCOPY processing endsimmediately and all data sets opened by SELCOPY are automatically closed.

Syntax:

(1) +- Panel ------+ +- Verify --+ | | | |>>-- FSUUNDO --+------------+--+--------------+--+-----------+---------------> | | | | | | +-- fsurep --+ +- Foreground -+ +- Update --+ | | +- Background -+

+- Terse ----+ | | >-------------+------------+--+--------------+------------------------------>< | | | | +- Extended -+ +- Diagnose ---+

Notes:

Parameters may be entered in any order.1.

Description:

Use the FSUUNDO command to restore records updated by a previous File Search & Update run referenced by the specified FSUoutput report.

Unless parameter FOREGROUND or BACKGROUND is specified, FSUUNDO will open a dialog window. Other parametersspecified on FSUUNDO will be reflected in the dialog fields.

See FSUUNDO in the CBLi Reference and User's Guide for full details.

Section 02: New Facilities FSUUNDO

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 8

MVS: SDE Editing Techniques - Large File EditThe methods employed by SDE to perform edit of data sets have been sophisticated to support alternate editing techniques andin-storage record data management. These additional techniques allow for more control over data edit and also provide support forthe edit of large data sets.

Prior to edit, CBLi SDE establishes the user supplied edit options, the data set organisation and size, and the amount of storageavailable. Based on these, SDE will perform the appropriate editing technique.

Full Edit

Supported for sequential data sets, PDS(E) members and VSAM RRDS and ESDS files defined with option REUSE, all recordsbelonging to the data set are loaded into storage prior to display in an SDE window view. Full edit supports change, insert, delete,copy and move of data records. Furthermore, records may be updated to alter the record length if supported by the data setorganisation or structure (SDO).

This edit technique will be used where conditions for Update-in-place and KSDS edit are not satisfied. Before a data set is openedfor Full Edit, SDE first establishes whether enough storage is available to load the entire data set. If insufficient storage is availableor AUXILIARY is specified on the EDIT command, AUXILIARY edit will be used instead.

Although Full Edit can result in a delay as the data set is loaded into storage, subsequent edit operations that involve scrolling ordata scanning will operate faster. When the data set is saved, the entire data set is re-written back to disk using the in-storage copyof the records.

If Full Edit is in effect, "Edit" is displayed in the SDE window title bar to the left of the DSN.

Read Only Edit

Supported for sequential data sets, PDS(E) members and VSAM RRDS and ESDS files, all records belonging to the data set areloaded into storage prior to display in an SDE window view.

Read Only edit supports all functionality provided by Full Edit except that changes cannot be saved to disk unless the fileid is firstupdated (using SET DSN, FILEID, FMODE, FNAME, FPATH or FTYPE) to be a non-existing fileid. Having done this, saving thedata will open a dialog window to allocate or IDCAMS DEFINE the data set. This allows the user to effectively edit and createsample data before copying it to a new data set, whilst being secure in the knowledge that the orginal data set will remain intact.

Read Only edit is invoked by specifying READONLY on the SDE EDIT CLI command. Like Full Edit, AUXILIARY edit will be used ifinsufficient storage is available or AUXILIARY is specified on the EDIT command.

If Read Only Edit is in effect, "Edit(RO)" is displayed in the SDE window title bar to the left of the DSN. If AUXILIARY edit is usedfor read only editing, "Edit(AUXRO)" is displayed instead.

Update-in-place Edit

Allows in-place record update only. Records cannot be inserted, deleted, moved or copied and record lengths cannot be altered.The exception to this is RRDS update-in-place edit where empty slots may be created by record delete and made enterable byrecord insert.

Update-in-place edit is invoked or implied by the following:

Specification of parameter UPDATE on the SDE EDIT CLI command.1. Parameter FROM and/or FOR (indicating start record and number of records) is specified on the SDE EDIT CLIcommand.

2.

Data set is a VSAM ESDS or RRDS file with IDCAMS DEFINE CLUSTER option NOREUSE.3. Data set is not VSAM KSDS and load of the data set into storage has been interrupted by the user following receipt of theLoad Threshold break-in modal window.

4.

Before a data set is opened for Update-in-place Edit, SDE first establishes whether enough storage is available to load the entiredata set. If insufficient storage is available, SDE will only load a single page of records for display in the SDE window view.Subsequently, only records that have been altered and records displayed in the current SDE window view are held in storage.

When the data set is saved, any record that has alterations is updated in place (replaced) by the modified, in-storage copy of therecord.

If Update-in-place Edit is in effect, "Edit(UP)" is displayed in the SDE window title bar to the left of the DSN.

Section 02: New Facilities MVS: SDE Editing Techniques - Large File Edit

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 9

KSDS Edit

KSDS Edit is used for Read Only, Full Edit or Update-in-place Edit of VSAM KSDS data sets.

For KSDS Edit, only records that have been altered, inserted or deleted and records displayed in the current SDE window view areheld in storage. It is possible to do this, even for Full Edit, as KSDS records may be deleted and inserted out of sequence.

The capabilities and restrictions of Read Only Edit, Full Edit and Update-in-place Edit still apply and "Edit(RO)", "Edit" or "Edit(UP)"is displayed in the title bar as appropriate. Note that Read Only Edit or Update-in-place Edit of KSDS data sets is invoked using theREADONLY or UPDATE parameter of the SDE EDIT command respectively, otherwise Full Edit is default.

AUXILIARY Edit

Auxiliary edit first makes a copy of the edit data set to a second, auxiliary file on disk.

Only records that have been altered, inserted or deleted and records in the current SDE window view are held in storage. ForAuxiliary Edit, a data set can only be saved when it is closed during exit of the SDE window view. This is becuase the data set iscompletely re-written using a combination of records obtained from the auxiliary data set and records held in storage. Note thatSAVE is not supported using this edit technique.

Auxiliary edit is used to provide full edit capabilities for sequential data sets, PDS(E) members and VSAM RRDS and ESDS filesdefined with option REUSE, when one of the following is true:

The data set is too large to be loaded into available storage.1. Parameter AUXILIARY is specified on the SDE EDIT CLI command.2.

If Auxiliary Edit is in effect, "Edit(AUX)" is displayed in the SDE window title bar to the left of the DSN.

The auxiliary data set is allocated by SDE and subsequently deleted after the edited file is closed. The generated data set namehas HLQ prefix as defined by the SDE.AUXDSNPREFIX CBLiINI variable (default &USER.CBLI.SDEAUX) followed by qualifiers ofthe format Dyyyyjjj.Thhmmsst. Note that the HLQ prefix may be updated using the SDE SET AUXDSNPREFIX command.

MVS: SDE Browse/Edit Utilities MenuThe SDE Edit/Browse Utilities Menu may be opened from any SDE edit or browse window view by executing the SDEUTIL macrowhich is assigned to PF4 by default.

Figure 4. SDE Edit/Browse Utilities Window.

This menu provides a user friendly method of executing commonly used SDE CLI commands that alter data or the appearance ofdata within the SDE window view.

Options are selected by entering the required option number at the command prompt or executing the equivalent PFKey.

Note that the menu items displayed are sensitive to the default record type when SDEUTIL was executed.

Section 02: New Facilities KSDS Edit

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 10

MVS: SDE CLI CREATE STRUCTURE UpdatedSyntax:

>>- CREATE STRUCTURE --- struct_name ---------------------------------------->

+- COBOL -+ +- , ------------+ | | v |>-+- FROM -+---------+--- copybook_spec -+-+---------------------------+-+--> | | | | | | | +- PL1 ---+ | +--------------+ | | | | v | | | | +- SELECT -- level1_name -+-+ | | | | | | +- , -----------------+ +- NAMES(ASM) -------------------+ | | v | | | | +- ( -- record_definition -+- ) ----+--------------------------------+-+ | | +- NAMES( -+- COBOL -------+- ) -+ | | +- DB2 ---------+ | | +- PL1 ---------+

+- NOREPlace -+ +-- CASE(IGNORE) --+ | | | |>--+-------------+---+---------------+---+------------------+--------------->< | | | | | | +-- REPlace --+ +-- TEMPorary --+ +-- CASE(RESPECT) -+

Description:

Create a Structure Definition Object (SDO) to be used within SDE, and, if TEMPORARY is not specified, automatically save it to aStructure Definition File (SDF). An SDO provides the information required to interpret indiviudal logical fields within a file's datarecords.

Added & Updated Parameters:

TEMPORARYCreate the SDO in storage without automatically saving it to an SDF data set. A temporary SDO cannot be saved.

Where TEMPORARY is used, struct_name is simply a named reference for the SDO and does not need to be a validDSN. As for standard SDOs, when a temporary SDO is created, it will remain in storage until it is dropped using the DROPor DDROP command or the CBLe Edit session is ended.Default is to save the SDO to an SDF allocated to DSN struct_name.

FROM COBOL copybook_specFROM PL1 copybook_spec

Identifies one or more existing COBOL or PL/1 copybooks that define the file structure. Multiple copy books areconcatenated to produce a single copy book.

SELECT level1_nameSelects the individual "01" level entry names from within the concatenation of specified copy books for which record typemappings (RTO) are to be generated. All data declaration entries associated with "01" level entries that are not selected,will be ignored.Default is to generate an RTO for each "01" level entry in the copy book concatenation.

copybook_spec Syntax:

>>-+--------------------------------------+-- copybook_name ----------------->< | | +--+---------+-- 1 --+-- level1_name --+ | | | | | +- LEVel -+ | | | +- RECord -+---------+ | | +- TYPe --+

Notes on COBOL and PL/1 copy books:

Each "01" level entry will generate a new record type (RTO) mapping.1.

If no "01" level entry exists within the entire concatenation of copy books and the next available lowest level entry isredefined by all entries of the same level within the copy book, then these entries are treated as "01" levels and a newrecord type (RTO) mapping generated for each.

2.

Section 02: New Facilities MVS: SDE CLI CREATE STRUCTURE Updated

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 11

If either of the following are true, then an "01" level entry with name "SELCOPY-01" is generated by SDE at the start of thecopy book concatenation.

3.

The first data declaration statement is not an "01" level entry but at least one "01" level entry exists within theconcatenation of copy books.

No "01" level entry exists within the entire concatenation of copy books and the next available lowest level entryis not redefined by all entries of the same level within the copy book. In this case, the created structure willcontain a single record type (RTO) mapping.

copybook_spec Parameters:

(LEVEL) 1 level1_nameRECORD (TYPE) level1_name

Insert an appropriate COBOL or PL/1 level 01 record (Record Type), with the field name specified by level1_name,immediately before the specified copy book data.

This is intended for use where no level 01 record is defined within the copy book.

copybook_nameThe complete fileid (DSN and member name) of a COBOL or PL/1 copy book.

MVS: SDE Edit DialogCBLi 1.60 introduces the SDE dialog window as an alternative method of starting an SDE window view within the CBLe framewindow to edit or browse structured data. Previously, this could only be achieved by executing the SDE CLI command EDIT orBROWSE (or SDATA EDIT/BROWSE if invoking SDE from a CBLe text edit document window view.)

SDE Edit Dialog Window

The Edit Dialog window may be opened via the following:

Select 'Structured edit' from the File menu in the CBLe frame window menu bar.• Execute the SDE CLI command EDITDIALOG.• Execute the CBLi CLI command SDE with no parameters.• Execute the prefix command "SD" from an Execute CBLVCAT or file List type window.•

Figure 5. Structured Edit Dialog Window.

The CBL Structured Edit dialog window generates an SDE EDIT command to open an SDE window view in the current CBLe framewindow.

SDE CLI EDITDIALOG Command

Syntax:

>>-- EDITDialog -------------------------------------------------------------><

Section 02: New Facilities MVS: SDE Edit Dialog

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 12

Description:

Open the Structured Edit dialog window to edit or browse a data set using an SDE structure (SDO).This dialog window may also be opened by selecting Structured Edit from the File menu in the CBLe frame window menu bar.

Parameters:EDITDIALOG has no parameters.

MVS: SDE CLI EDIT UpdatedSyntax:

>>-- Edit ---- fileid --+-------------------------------------------+--------> | | +- USING -+---------------+-- struct_name --+ | | +-- STRUCTure --+

>--+------------------------------+---+----------------------------------+--> | | | | +-- FORMat -+--+-- SINGle -----+ | +--------- * ---------+ | | | | | | | | | +-- FMT ----+ +-- SNGL -------+ +-- View --+---------------------+-+ | | | | +-- TABle ------+ | +-- , --+ | | | | | | | +-- CHARacter --+ | +---+-------+----+ | | | | | | | +-- HEX --------+ | V | | +---- record_type --+-+

+- REUse -----+ | |>--+--------------------------+---+-------------+--+------------+-----------> | | | | | | +-- PROFile macro_name ----+ +- AUXiliary -+ +- READonly -+ | | | | +-- NOPROFile -------------+ +- UPDate --------------------+

>--+-----------------------------+---+-------------------------------+------>< | | | | +-- FROM --+- KEY -- string --+ +-- FOR -- n_recs --+-----------+ | | | | +- RBA ------ n ---+ +- RECORDS -+ | | +----------+- n ---+ | | +- RECord -+

Description:

The SDE EDIT CLI command, used to open an SDE window view and edit a structured data set within SDE, has been updated withnew parameters to utilise new editing techniques introduced in CBLi 1.60.

Note that new parameters FROM and FOR and their associated sub-parameters are also supported on the SDE CLI BROWSEcommand.

Added Parameters:

UPDATEUpdate-in-place Edit is to be used so that existing records may only be altered and replaced without changing the recordlength. Records cannot be moved, copied, inserted or deleted.

Use of Update-in-place Edit has significant performance advantages over full (REUSE) edit when editing large, non-KSDSdata sets.

UPDATE is default if the edited data set is a VSAM ESDS or RRDS file defined with NOREUSE or the data set isnon-KSDS and its load into storage has been interrupted by the user via the Load Threshold break-in modal window.

REUSEWhere possible, full edit capabilities of record move, copy, insert, change and delete are to be permitted for the data setbeing edited. Also, where the data set organisation and SDO structure permits, data changes may result in changes torecord lengths.

CBLi SDE first determines whether the entire data set may be comfortably loaded into available storage. If not, parameterREUSE is ignored and AUXILIARY edit becomes default.

Full (REUSE) edit is not possible for VSAM RRDS and ESDS data sets defined with NOREUSE, in which case parameterREUSE is ignored and the ESDS/RRDS data set is edited using Update-in-place edit. For all other data sets, parameterREUSE is the default.

Section 02: New Facilities SDE CLI EDITDIALOG Command

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 13

AUXILIARYSelect Auxiliary edit for non-KSDS data sets. AUXILIARY is ignored for edit of a KSDS data set.

Auxiliary edit is identical to full (REUSE) edit except that the data set to be edited is first copied to an auxiliary data set ondisk. This allows full editing capabilities for data sets that are too large to be loaded into available storage.

FROMRecords are to be displayed beginning at a specific location within the data set. The first record at the specified locationbecomes record 1 within the SDE window view of the data set. Records that occur before this location are not includedwithin the edit session.

Required record location is identified via one of the following:

KEY string For KSDS data sets only, locate the record with a key string equal to string. If not found, the recordwith the next key string greater than string is used.

RBA n For KSDS and ESDS data sets only, locate the record starting at the relative byte address specifiedby n.The RBA must point at the start of the record otherwise a VSAM point error will occur. RBA addressfor each record is displayed as part of the record information columns within an SDE window view.Display of these columns is controlled using the SDE SET RECINFO CLI command.

(RECORD) n For any data set organisation, locate the record number specified by n. Specification of parameterkeyword RECORD is optional.

Use of the FROM parameter will force use of Update-in-place Edit.

Default is to display records within the SDE window view starting at the first record in the data set.

FOR n_recs (RECORDS) Specifies the number of data set records to be included within the SDE window edit session. Specification of parameterkeyword RECORDS is optional.Default is to include all records.

Use of the FOR parameter will force use of Update-in-place Edit.

MVS: SDE CLI LIST MODULESSyntax:

>>-- LIST MODules -----------------------------------------------------------><

Description:

Use the LIST MODULES command to display the SDELIB Module List window containing the current status of all modules thatcomprise the Structured Data Environment within CBLi.

LIST MODULES may be executed to determine the level of a currently installed SDE module.

Parameters:LIST MODULES has no parameters.

Section 02: New Facilities MVS: SDE CLI EDIT Updated

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 14

MVS: SDE CLI LOCATE UpdatedSyntax:

+- Locate --+ | |>>-+-----------+--+--------------------------- .name ---------------+--------->< | | | (1) +- RECord -+ | | | | | +--- : --+--+----------+---- record_num ---+------+ | | | | | | +- KEY ----+ | | | | | | | | | +--+----------+---- key_string ---+ | | | | | | +---- RBA --------- byte_offset --+ | | | | +- + (plus) --+ | | | | | +--------+-------------+---- relative_line -------+ | | +- - (minus) -+

Notes:

Parameters RECORD, KEY or RBA may be specified before or after their associated record_num, key_string orbyte_offset value.

1.

Description:

CBLi 1.60 introduces support for locate record by KEY and RBA. Support for record location by record number was supported inthe initial implementation of LOCATE.

Updated or Added Parameters:

: (colon)A ":" (colon) identifies the locate target to be an absolute record number, KSDS data set key value or VSAM RBA (relativebyte address.)

Required target record is identified via one of the following:

(RECORD) record_numFor any data set organisation, locate the record number specified by record_num.

For edit techniques where record numbers have not yet established (e.g. KSDS edit following a LOCATE byKEY, or DOWN MAX), then locating by record number will establish the record numbers and update the prefixarea display accordingly.

Specification of parameter keyword RECORD is optional if record_num is an unquoted numeric value. e.g. :5,:212

(KEY) key_stringFor KSDS data sets only, locate the record with a key string equal to key_string. If not found, the record with thenext key string greater than key_string is located.

key_string may be specified as:

An unquoted character string. The string must contain no commas or blanks and will be upper cased.1. A character string enclosed in apostrophes (') or quotation (") marks. The string will be upper cased andany two adjacent characters embedded in the string that are the same as the enclosing symbols, aretreated as a single occurrence of the character.

2.

A character string enclosed in apostrophes (') or quotation (") marks with the prefix (or suffix) C. Thishas characteristics equivalent to key strings specified in the previous item except that no upper casingwill occur.

3.

A hexadecimal string enclosed in apostrophes (') or quotation (") marks with the prefix (or suffix) X.4.

Specification of parameter keyword KEY is optional if key_string is not an unquoted numeric value. e.g. :ABC,:12UF00, :'123456', :X'003D67A6', :C'abc_00'

RBA byte_offsetFor KSDS and ESDS data sets only, locate the record starting at the relative byte address specified bybyte_offset.

By default, VSAM returns a point error if the specified RBA does not point at the start of a record. SDE detectsthis condition so that, if the RBA does not point at the start of a record, then the record with the next higher RBAbecomes the current line of the display. For KSDS data sets, a best effort attempt will be made to locate therecord with the next higher RBA though this may not be accurate.

Section 02: New Facilities MVS: SDE CLI LOCATE Updated

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 15

RBA address for each record is displayed as part of the record information columns within an SDE window view.Display of these columns is controlled using the SDE SET RECINFO CLI command.

byte_offset may be specified as a decimal or hexadecimal numeric value. e.g. :RBA X'01D5' is equivalent to:RBA 469

Specification of parameter keyword RBA is mandatory.

Parameter keywords RECORD, KEY and RBA may be specified before or after their associated locate line target values.e.g. :KEY C'APE110X5' is equivalent to :C'APE110X5' KEY

If the target line contains a record that is flagged as being EXCLUDED, SUPPRESSED or NOTSELECTED, then thefollowing message is returned:

SDE177E Requested line record_num|key_string|byte_offset is not visible.

MVS: SDE CLI REPLACESyntax:

+- , ----------+ v |>>- REPlace --+-----------------------+---+- Values(-- field_value -+-) -+--->< | | | +- , --------+ | | v | | +- (-- field_col -+- ) -+

Description:

Replace data in fields within the record occupying the focus line.

The record occupying the focus line must not be a shadow line and must contain any specified fields references.

REPLACE is primarily used within SDE Edit REXX macros.

Parameters:

( field_col,... )A list of field columns into which corresponding field_value values are to be inserted.

The field column may be identified by its reference number (e.g. #1) or its name (e.g. SeqNUM). Specification of multiplefield columns must be separated by commas and enclosed in parentheses.

If the field_col reference is a struct or a union, then an error message is returned. If the field_col reference is an array,then an individual array element must be specified in parentheses as a subscript to the field. e.g. #13(3) for the 3rdelement of a single dimension array. A subscript entry must exist for each dimension of the array. e.g. RoomSize(6,2,4) -an element within a three dimensional array.

If a list of field columns is not specified then as many of the set of selected fields in the current view as there are values inthe list of field values, are used as the default. In this case, the order of the field columns is equal to the order in whichfields are displayed in the current view.

VALUES ( field_value,... )A list of field values to be inserted into corresponding field_col entries in the field column list.

If one or more field_col entries are specified (i.e. a field list is specified), then there must be the same number offield_value values to correspond with each field_col entry.

If a field value contains special characters, blanks or commas, then it should be enclosed in quotes.

Section 02: New Facilities MVS: SDE CLI REPLACE

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 16

MVS: SDE CLI RESET UpdatedSyntax:

+- CHange -+ +- COmmand -+ +- Duplicates -+ | | | | | |>>-- RESet --+-------+--+----------+--+-----------+--+--------------+--------> | | +- All -+

+- X --------+ | | +- ERror -+ +- EXcluded -+ +- Find -+ | | | | | |>-----------+---------+--+------------+--+--------+--+---------+------------>< | | +- Label -+

Description:

The SDE RESET CLI command, used to restore aspects of the current SDE BROWSE or EDIT window display to their originalsettings, has been updated to support parameter DUPLICATES.

The ERROR parameter has also been updated to reset the "=ERRV>" line flag. This flag has been introduced to indicate that theexpanded record has a variable length or variable array size value error.

Updated or Added Parameters:

ALLEquivalent to: RESET COMMAND DUPLICATES EXCLUDED FIND LABEL CHANGE ERROR

DUPLICATESReset the "=DUPE>" or "=DUPF>" line flags which have been introduced with support for KSDS data set editing. Theseflags are set when an attempt is made to save changes to the data and cause the save operation to fail."=DUPE>" indicates that a duplicate key exists between 2 or more, new or changed records within the edit session."=DUPF>" indicates that a duplicate key exists between a new or changed record in the edit session and an existing filerecord.

MVS: SDE CLI SAVESTRUCTURESyntax:

>>-- SAVEStructure ----------------------------------------------------------><

Description:

Save the in storage Structure Definition Object (SDO) to a Structure Definition File (SDF) on disk.

If changes have been made to the structure (e.g. USE WHEN criteria have been applied) and not saved, then the user will beautomatically prompted to save the SDO following execution of the DROP command or on exiting the parent CBLe frame window.

Parameters:

SAVESTRUCTURE has no parameters.

MVS: SDE CLI SORTSyntax:

>>-- SORT -------- KEY ------------------------------------------------------><

Description:

Sort records within the currennt SDE window view.Currently, only parameter KEY is supported. Future releases will extend the functionality of the SORT command.

Section 02: New Facilities MVS: SDE CLI RESET Updated

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 17

Parameters:

KEYDuring an edit session of a VSAM KSDS data set, records may be moved, inserted, deleted or the the key field updated.The SORT KEY command allows the user to re-order the records so that they are in ascending key sequence.

MVS: SDE CLI TEDITSyntax:

>>-- TEdit -- cble_command --------------------------------------------------><

Description:

Direct a command to the CBLe text edit Environment.

The TEDIT command allows CBLe commands to be issued from an SDE window command line or SDE edit macro.

Parameters:

cble_commandAny CBLe CLI command.The command is passed to the current CBLe window (the CBLe window view on which focus was last placed.)

Examples:

tedit edit DEV.OEM.CBL.JCL(CBLINS01)Open a data set for CBLe text edit.

tedit insert <sdata use IMP_REC when #12 >= 100Insert a line of text into the current CBLe edit window. The line of text is a CBLe edit command that may be executed viathe PF4 key (CMDTEXT).

MVS: SDE CLI VIEW UpdatedSyntax:

>>-- View --+--------------------------------------+------------------------->< | | +--------- * --------------------------+ | | | +-- , --+ | | | | | | +---+-------+---------------------+ | | | | | | V | | +----+-------------+-- record_type --+-+ | | +- + (plus) --+ | | +- - (minus) -+

Description:

The SDE VIEW CLI command, used to select the record types of records to be made visible within an SDE BROWSE or EDITwindow, has been updated to support "+" (plus) and "-" minus field reference qualifiers.

The equivalent VIEW prefix area command ("V") has also been updated to support "V+" and "V-". This allows the user to add andremove records of the selected record type from the display.

Records that not included in the display of records due to a VIEW CLI command or "V" prefix command, are flagged as beingSUPPRESSED. Suppressed records can be identified if shadow lines are set on for SUPPRESSED records.

Added Parameters:

+ (plus)Add records of the specified record type to the existing display of selected records.

- (minus)Remove records of the specified record type from the existing display of selected records.

Section 02: New Facilities MVS: SDE CLI SORT

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 18

MVS: SDE CLI SET/QUERY/EXTRACT AUXDSNPREFIXSyntax:

>>-+-----------+-- AUXdsnprefix --- dsn_prefix ------------------------------>< | | +- SET -----+

>>--- Query ------ AUXdsnprefix ---------------------------------------------><

>>--- EXTract --- /AUXdsnprefix/ --------------------------------------------><

Description:

This option controls the default data set name HLQ prefix used to allocate the auxiliary data set when the Auxiliary Edit technique isrequired.

The initial value of AUXDSNPREFIX is set by the CBLiINI variable SDE.AUXDSNPrefix or, where this CBLiINI option has not beenset, defaults to %USER%.CBLI.SDEAUX.When SET AUXDSNPREFIX is executed, the SDE.AuxDSNPrefix option is set or updated in the USER.CBLiINI data set when theCBLi session is closed. This means that the auxiliary data set name will be set across CBLi sessions.

SET AUXDSNPREFIX takes effect at the Global level.

SET Value:

dsn_prefixValid data set name high level qualifiers, conforming to your system's standards, to be used as the DSN prefix for thegenerated auxiliary data set.

Qualifiers of the format .Dyyyyddd.Thhmmssx, representing the current data and time, are appended to dsn_prefix tocomplete the auxiliary data set name. If dsn_prefix exceeds 26 characters, then the DSN is truncated.

QUERY Response:

The auxiliary DSN prefix that is the current setting of the AUXDSNPREFIX option.

EXTRACT Rexx variables:

auxdsnprefix.0 1auxdsnprefix.1 The auxiliary DSN prefix that is the current setting of the AUXDSNPREFIX option.

MVS: SDE CLI SET/QUERY/EXTRACT COMPILERSyntax:

+-------------------------------------+ V |>>-+-----------+-- COMPiler ----+-- COBOL --+---- compiler_module --+-------->< | | | | +- SET -----+ +-- PL1 ----+

>>--- Query ------ COMPiler -------------------------------------------------><

>>--- EXTract --- /COMPiler/ ------------------------------------------------><

Description:

This option controls the name of the COBOL and PL1 module to be called by SDE when compilation of copy books is required (forCREATE STRUCTURE.)

The initial COMPILER values are set by the CBLiINI variables SDE.COBOLCompiler and SDE.PL1Compiler or, where theseCBLiINI options have not been set, defaults to IGYCRCTL for COBOL and IBMZPLI for PL1. Note that the SDE.COBOLCompilerand SDE.PL1Compiler options may be set to a fully qualified load library DSN and member name.When SET COMPILER is executed, the SDE.COBOLCompiler and/or SDE.PL1Compiler option is set or updated in theUSER.CBLiINI data set when the CBLi session is closed. This means that the compiler module names will be set across CBLisessions.

SET COMPILER values take effect at the Global level.

Section 02: New Facilities MVS: SDE CLI SET/QUERY/EXTRACT AUXDSNPREFIX

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 19

SET Value:

COBOLPL1

Specifies that the following token is the COBOL or PL1 compiler module name.

compiler_moduleThe 8 byte member name of the compiler module.

SDE will invoke the compiler module via standard system library search chain. This replaces any fully qualified load libraryname that may have been included as part of the SDE.COBOLCompiler or SDE.PL1Compiler CBLiINI optionspecifications.

QUERY Response:

The string "COBOL", the COBOL compiler name followed by the string "PL1" and the PL1 compiler name which are the currentsettings of the COMPILER option.

EXTRACT Rexx variables:

compiler.0 2compiler.1 The current setting for the COBOL compiler name.compiler.2 The current setting for the PL1 compiler name.

MVS: SDE CLI EXTRACT FVALUESyntax:

>>--- EXTract --- /FVALUE/ --------------------------------------------------><

Description:

For use in macros, EXTRACT FVALUE generates a REXX variable with an assigned value, one for each field column selected fordisplay and belonging to the default record type. Unnamed field columns are ignored.

The generated REXX variable names are the record field column names, and their assigned values are the characterrepresentation of the individual field's contents within the record occupying the focus line. No variables are generated if the focusline is an EXCLUDED, SUPPRESSED or NOT SELECTED shadow line.

Field names that are elements of an array, and so have array suffices, generate REXX compound variables where the field name isthe variable name stem and each dimension of the array is represented within the variable name tail. e.g. Field name"AddrLine(6)" generates variable "AddrLine.6".

Any occurrence of the "-" (minus) character in a field column name (as supported by COBOL) is translated to "_" (underscore) inthe generated variable name thus avoiding REXX "Bad Arithmetic Conversion" errors. e.g. Field name "XX-HRMN" generatesvariable "XX_HRMN".

Beware of using variables names within your REXX macro procedure that match field column names in your structured record data.REXX variable values generated by EXTRACT FVALUE will replace any existing value already assigned to a variable name thatmatches a record field column name.

Because only variables for displayed field columns of the default record type are generated, the SELECT command will influencethe effect of EXTRACT FVALUE.

EXTRACT Rexx variables:

EXTRACT FVALUE assigns variables as described above. No compound variable with a stem of "fvalue" is assigned.

See Also:

EXTRACT FIELDEXTRACT FOCUSEXTRACT VALUE

Section 02: New Facilities MVS: SDE CLI SET/QUERY/EXTRACT COMPILER

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 20

MVS: SDE CLI SET/QUERY/EXTRACT LOADWARNINGSyntax:

>>-+-----------+-- LOADWarning --- n_recs ----------------------------------->< | | +- SET -----+

>>--- Query ------ LOADWarning ----------------------------------------------><

>>--- EXTract --- /LOADWarning/ ---------------------------------------------><

Description:

This option specifies the threshold of number of data set records to be loaded into storage before the Load Warning pop-upmessage window is displayed prompting the user to either continue or stop loading records for SDE display and edit. The messagealso provides the user with the option to respect or bypass the load warning when the load theshold is once again encountered oncontinuing to load records from the data set.

If the user chooses to interrupt load of the data set's records once the load threshold has been reached, then records that havealready been loaded are displayed in the SDE window view. If the records were loaded for edit, then Update-in-place edit will beused overriding any EDIT REPLACE request for full edit capabilities.

The purpose of the Load Warning is to allow users to break out of possible time and resource consuming loads of large data sets.

Note the difference between SDE LOADWARNING and CBLe text edit LOADWARNING which specifies number of bytes loadedinstead of number of records. SDE SET LOADWARNING has no affect on the CBLe text edit LOADWARNING threshold.

Load Warning applies only to edit techniques where an attempt is made to load all requested records into storage. e.g. no loadwarning threshold checks are made for KSDS and AUXILIARY edit techniques.

The initial LOADWARNING value is set by the CBLiINI variable SDE.LoadWarning or, where this CBLiINI option has not been set,defaults to 5000 records.When SET LOADWARNING is executed, the SDE.LoadWarning option is set or updated in the USER.CBLiINI data set when theCBLi session is closed. This means that the load warning threshold will be set across CBLi sessions.

SET LOADWARNING value take effect at the Global level for all SDE EDIT and BROWSE commands.

SET Value:

n_recsThe number of records to be loaded after which the Load Warning message occurs.

QUERY Response:

The number of records to be loaded which is the current settings of the LOADWARNING option.

EXTRACT Rexx variables:

loadwarning.0 1loadwarning.1 The current loadwarning threshold value in number of records.

MVS: SDE CLI SET/QUERY/EXTRACT MAXCOBOLRCSyntax:

>>-+-----------+-- MAXCObolrc ------ value ---------------------------------->< | | +- SET -----+

>>--- Query ------ MAXCObolrc -----------------------------------------------><

>>--- EXTract --- /MAXCObolrc/ ---------------------------------------------><

Description:

This option controls the maximum acceptable COBOL compiler return code for which an SDE structure will be successfullygenerated.

Section 02: New Facilities MVS: SDE CLI SET/QUERY/EXTRACT LOADWARNING

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 21

The MAXCOBOLRC value is only applicable to execution of the SDE CLI command, CREATE STRUCTURE, with parameterFROM COBOL copybook.

Where a COBOL return code greater than the MAXCOBOLRC value occurs, the CREATE STRUCTURE operation fails with anerror message.

The initial value of MAXCOBOLRC is set by the CBLiINI variable SDE.MaxCOBOLRC or, where this CBLiINI option has not beenset, defaults to 4.When SET MAXCOBOLRC is executed, the SDE.MaxCOBOLRC option is set or updated in the USER.CBLiINI data set when theCBLi session is closed. This means that the maximum storage value will be set across CBLi sessions.

SET MAXCOBOLRC takes effect at the Global level.

SET Value:

valueMaximum acceptable Return Code from the COBOL compiler.

QUERY Response:

"MAXCOBOLRC" followed by a single numeric indicating the current MAXCOBOLRC value.

EXTRACT Rexx variables:

maxcobolrc.0 1maxcobolrc.1 The value that is the current setting of the MAXCOBOLRC option.

MVS: SDE CLI SET/QUERY/EXTRACT MAXPL1RCSyntax:

>>-+-----------+-- MAXPL1rc -------- value ---------------------------------->< | | +- SET -----+

>>--- Query ------ MAXPL1rc -------------------------------------------------><

>>--- EXTract --- /MAXPL1rc/ -----------------------------------------------><

Description:

This option controls the maximum acceptable PL/1 compiler return code for which an SDE structure will be successfully generated.

The MAXPL1RC value is only applicable to execution of the SDE CLI command, CREATE STRUCTURE, with parameter FROMPL1 copybook.

Where a PL/1 return code greater than the MAXPL1RC value occurs, the CREATE STRUCTURE operation fails with an errormessage.

The initial value of MAXPL1RC is set by the CBLiINI variable SDE.MaxPL1RC or, where this CBLiINI option has not been set,defaults to 4.When SET MAXPL1RC is executed, the SDE.MaxPL1RC option is set or updated in the USER.CBLiINI data set when the CBLisession is closed. This means that the maximum storage value will be set across CBLi sessions.

SET MAXPL1RC takes effect at the Global level.

SET Value:

valueMaximum acceptable Return Code from the PL/1 compiler.

QUERY Response:

"MAXPL1RC" followed by a single numeric indicating the current MAXPL1RC value.

EXTRACT Rexx variables:

Section 02: New Facilities MVS: SDE CLI SET/QUERY/EXTRACT MAXCOBOLRC

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 22

maxpl1rc.0 1maxpl1rc.1 The value that is the current setting of the MAXPL1RC option.

MVS: SDE CLI SET/QUERY/EXTRACT MAXSTORSyntax:

>>-+-----------+-- MAXSTOR ---- n_bytes --+---------------------------------->< | | | | +- SET -----+ +- K -+ | | +- M -+

>>--- Query ------ MAXSTOR --------------------------------------------------><

>>--- EXTract --- /MAXSTOR/ -------------------------------------------------><

Description:

This option limits the amount of storage available to handle edit of any single data set within the SDE environment.

An SDE edited data set is limited by the lesser of the prevailing MAXSTOR value and the the amount of free storage currentlyavailable within the region which is above the 16MB line, at the time of open. The edited data set is unaffected by any subsequentchange to the MAXSTOR setting.

This limit will be used to determine the SDE edit technique and data record management used to edit the data set. e.g. SDE EDITof a sequential data set may be of a size which is too large to fit comfortably within the defined area of storage resulting in use ofAuxiliary Edit.

If the MAXSTOR value is set to 0 (zero), it is considered to be unset and no artificial limit is imposed.

The initial value of MAXSTOR is set by the CBLiINI variable SDE.MaxStor or, where this CBLiINI option has not been set, defaultsto 0 (zero).When SET MAXSTOR is executed, the SDE.MaxStor option is set or updated in the USER.CBLiINI data set when the CBLisession is closed. This means that the maximum storage value will be set across CBLi sessions.

SET MAXSTOR takes effect at the Global level.

SET Value:

n_bytesn_bytesKn_bytesM

Amount of storage available for SDE edit of a single data set.

Setting this value to 0 (zero) unsets the MAXSTOR limitation.

This value may be specified as a number of bytes (n_bytes), number of kilobytes (n_bytesK) or a number of megabytes(n_bytesM).

QUERY Response:

Four numeric values indicating the current MAXSTOR value and, for the current SDE edited file, the MAXSTOR value at the timethe file was opened, the amount of storage allocated for the file edit so far and, of that allocation, the amount of unused storage.

EXTRACT Rexx variables:

maxstor.0 4maxstor.1 The value that is the current setting of the MAXSTOR option.maxstor.2 The MAXSTOR value at the time the current file was opened for SDE edit.maxstor.3 The amount of storage allocated so far for SDE edit of the current file.maxstor.4 Of the storage allocated so far for SDE edit of the current file, the amount of storage that is unused.

Section 02: New Facilities MVS: SDE CLI SET/QUERY/EXTRACT MAXPL1RC

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 23

MVS: SDE CLI SET/QUERY/EXTRACT OFFSETSyntax:

+- + (plus) -+ | |>>-+-----------+-- OFFset ---+---------------+--+------------+-- n_bytes ---> | | | | | | +- SET -----+ +- record_type -+ +- - (minus) + | | +----- ALL -----+ | | +----- * -----+

>------------------+------------------------------------+------------------>< | | +- IN -+-------------+- struct_name -+ | | +- STRUCTure -+

>>--- Query ------ OFFset ---+---------------+------------------------------> | | +- record_type -+ | | +----- ALL -----+ | | +----- * -----+

>------------------+------------------------------------+------------------>< | | +- IN -+-------------+- struct_name -+ | | +- STRUCTure -+

>>--- EXTract---- /OFFset ---+---------------+------------------------------> | | +- record_type -+ | | +----- ALL -----+ | | +----- * -----+

>------------------+------------------------------------+----- / ---------->< | | +- IN -+-------------+- struct_name -+ | | +- STRUCTure -+

Description:

This option determines the offset into a record at which data mapping by the associated record type object (RTO) is to begin. Thisoffset may be a negative value, effectively beginning the record map before the start of the record data itself and so bypassingfields defined at the start of the RTO.

The offset value is stored as part of the RTO definition and becomes permanent when the structure is saved (e.g. using theSAVESTRUCTURE command.)

Therefore, when SDE attempts to match an RTO within the specified structure with a particular data set record, any offset valuesaved within the RTO is added to that RTO's determined maximum and minimum record length values. Only if the record's lengthfalls between these adjusted minimum and maximum values (and any USE WHEN conditions have been satisfied), will the RTObecome associated with the data record.

Following execution of OFFSET, all records that are currently in storage are re-assessed and assigned an appropriate RTOaccordingly.

A negative offset cannot be applied if it would result in removing from the display a field mapping which defines the length ofanother field, defines the size of an array or is included as part of a USE WHEN expression.

Where an RTO containing a negative offset value is associated with a record, data at the beginning of the record may only bepartially mapped by a field definition within the RTO. In this case, the partially mapped data is omitted so that record data isdisplayed starting at the first complete field mapping.e.g. RTO begins with a 4-byte field map but has an offset value of -2, therefore data is displayed using the 2nd RTO field mapstarting at offset 2 into the record.

Where a positive offset is applied so that fields defined within the RTO correspond to positions beyond the length of the recorddata, then a length error occurs and =ERRV> is displayed in the record's prefix area.

SET OFFSET takes effect at the Global level.

Section 02: New Facilities MVS: SDE CLI SET/QUERY/EXTRACT OFFSET

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 24

SET/QUERY/EXTRACT Values:

record_typeSet, Query or Extract the offset value for the specified record type (RTO).Defaults to the Default Record Type.

ALL*

Set, Query or Extract the offset value for all record types (RTO) defined within the structure (SDO) struct_name.+ (plus)- (minus)

Set a positive "+" (plus) or negative "-" (minus) offset value.Defaults to a positive offset.

n_bytesSet an integer number of bytes at which record mapping is to be offset.

IN struct_nameSet, Query or Extract the name of the structure (SDO) to which the specified RTO belongs.Defaults to the SDO being used in the current SDE window.

QUERY Response:

Displays the current OFFSET value for the specified record type on a single message line. If parameter ALL or * is specified, theOFFSET value for each record type within the SDO is displayed on a separate message line.

EXTRACT Rexx variables:

offset.0 Number of record types (RTO) if parameters ALL or * is specified; otherwise 1.offset.i The record type followed by its current OFFSET value.

MVS: SDE CLI SET/QUERY/EXTRACT RECINFOSyntax:

+---------------- ALL ----------------+ | |>>-+---------+- RECInfo --+- ON --+--+-----------+-+------------+-+--------+-> | | | | | | | | | | +- SET ---+ +- OFF -+ +- Flags ---+ +- Length ---+ +- Id ---+ | | | | | | +- NOFlags -+ +- NOLength -+ +- NOId -+

+-- DECimal ------+ | |>-----------------------------------+-----------------+--------------------->< | | +-- HEXadecimal --+

>>--- Query --- RECInfo -----------------------------------------------------><

>>--- EXTract -- /RECInfo/ --------------------------------------------------><

Description:

This option controls which of the standard record information columns, if any, are to be displayed for records in the current SDEwindow view.

For both SDE EDIT and BROWSE operations, display of record information is set off by default.In previous releases of CBLi, the SDE BROWSE window displayed record length information with no option to suppress.

The record information columns are displayed to the left of the record data field columns. In order from left to right these are flagsthat have been set for the record, the length of the record and the location identification of the record within the file.

SET RECINFO values take effect at the View level.

SET Value:

ONOFF

Section 02: New Facilities MVS: SDE CLI SET/QUERY/EXTRACT RECINFO

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 25

Record information column display is switched on or off.

ALLInclude display of all record information columns.

FLAGSNOFLAGS

Include or suppress display of the record flags column.

The record flags column has a width of 4 bytes and header "Flags". Flag bytes and their meanings are, from left to right:

f Record exists within the disk copy of the file.i Record has been inserted during the edit session.c Record has been changed since being inserted or loaded.s Record will be saved on execution of a SAVE, or equivalent, operation.

LENGTHNOLENGTH

Include or suppress display of the record length column.

The record length column contains a 5-byte decimal value and has header "LRecL".

IDNOID

Include or suppress display of the record identification column.

For non-VSAM data sets, the record identification is by Track and Physical Record number (TTR) followed by an offsetwithin the physical record. The columns are displayed as decimal or hexadecimal values with headers "TTR" and "Offset".

Figure 6. Record Info (Decimal) for non-VSAM Data Set.

For VSAM data sets, the record identification is by Relative Byte Address (RBA). The column is displayed as a decimal orhexadecimal value with header "RBA".

Figure 7. Record Info (Hexadecimal) for VSAM Data Set.

Section 02: New Facilities MVS: SDE CLI SET/QUERY/EXTRACT RECINFO

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 26

DECIMALHEXADECIMAL

Display ID information as a decimal or hexadecimal value.

For non-VSAM data sets, the decimal display of TTR and Offset for the record occupies 3 columns in the following order:

Track number.1. Physical record (block) number on the track.2. Offset from the start of the physical record.3.

The hexadecimal display of TTR and Offset for the record is represented as 2 character fields of length 6 bytes and 8bytes respectively, each representing a 3-byte TTR and 4-byte offset hexadecimal value.

For VSAM data sets, the decimal display of Relative Byte Address (RBA) for the record is a single column containing adecimal value. The hexadecimal display of RBA is 16 bytes of character data representing a single 8-byte hexadecimalvalue.

QUERY Response:

The current settings for RECINFO in order of display status ("ON" or "OFF") then column selections ("FLAGS" or "NOFLAGS"followed by "ID" or "NOID" followed by "LENGTH" or "NOLENGTH").

EXTRACT Rexx variables:

recinfo.0 4recinfo.1 The current setting of the record information column display, ON or OFF.recinfo.2 The current value for selection of the record flags column, FLAGS or NOFLAGS.recinfo.3 The current value for selection of the record identification column, ID or NOID.recinfo.4 The current value for selection of the record length column, LENGTH or NOLENGTH.

MVS: SDE CLI QUERY/EXTRACT RECTYPESSyntax:

>>--- Query ------ RECTypes -------------------------------------------------><

>>--- EXTract --- /RECTypes/ ------------------------------------------------><

Description:

Obtain all record type object (RTO) names in the current structure definition object (SDO).

QUERY Response:

Displays all the RTO names on a single message line.

EXTRACT Rexx variables:

rectypes.0 Number of RTOs in the current SDO.rectypes.i The record type name of the ith RTO in the SDO.

MVS: SDE CLI QUERY/EXTRACT REGIONSyntax:

>>--- Query ------ REGion --------------------------------------------------><

>>--- EXTract --- /REGion/ -------------------------------------------------><

Description:

QUERY/EXTRACT REGION provides information about the private area region for the current MVS TCB.

REGION is not an option for the SET command.

Section 02: New Facilities MVS: SDE CLI QUERY/EXTRACT RECTYPES

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 27

QUERY Response:

Two pairs of values indicating the available private area storage region limit and high value both below and above the 16M line. e.g.

REGION Below 16M Limit=9412608 High Value=9412608; Above 16M Limit=33554432 High Value=33554432

These values are as found in the Virtual Storage Manager Local Data Area Control Block.

EXTRACT Rexx variables:

region.0 4region.1 The below 16M line private area region limit.region.2 The below 16M line private area region size (high value).region.3 The above 16M line private area region limit.region.4 The above 16M line private area region size (high value).

MVS: Common CBLe & SDE CLI CommandsA number of general commands and SET/QUERY/EXTRACT options, already supported in the CBLe text edit environment, arenow also supported for SDE edit. These enhancements improve control of the edit environment, general functionality and providenecessary support for SDE edit macros.

Where applicable, additional SDE edit functionality that is not yet supported by CBLi but is currently included within the CBLe textedit environment, will be introduced in future releases.

CBLe commands now supported for SDE in CBLi 1.60 are as follow:

CLIPBOARDCopy text between the CBLi environment clipboard and the file display area of a CBLe or SDE edit view. The CLIPBOARDcommand may also be invoked from the Edit menu item in the application Main Menu Bar.

CMSGPlace a text string on the command line ready for execution. If no text string is specified, then the command line iscleared.CMSG is most often used in edit macros.

CURSORPosition the cursor within the current edit window view.CURSOR is most often used in edit macros. The following CURSOR parameters are supported in SDE window views:

CMDLINE The cursor is positioned at column 1 of the command line.Optional arguement to position cursor at a specific column of the command line is not currently supported.

HOME If the cursor is on the command line, the cursor is positioned at the line and column number at which it waspositioned when it was last in the file area. If this line is not in the current edit view, the cursor is positioned incolumn 1 of the current line.If the cursor is in the file area, the cursor is positioned at column 1 of the command line.

MARKMark a line or the boundaries of a block of lines to be used by the CLIPBOARD command.

NOMSGExecute the specified CBLe command suppressing the display of any messages that may be returned.NOMSG is most often used in edit macros.

REFRESHRefresh the CBLe or SDE window view during execution of a macro.

WINDOWPerform window focusing, positioning and sizing operations on the current edit (document) view or MDI parent (frame)window.The following WINDOW parameters and associated sub-parameters are supported in SDE window views:

CASCADE Cascade all MDI child windows within the MDI parent window.TILE Tile all MDI child windows within the MDI parent window either horizontally or vertically.NEWWINDOW Open an new SDE edit view for the data in the current SDE edit view.RESTORE Restore the current SDE edit view (DOCUMENT) or the MDI parent (FRAME) window to its

original state, prior to being maximised or minimised.MINIMISE orMINIMIZE

Minimise the current SDE edit view (DOCUMENT) or the MDI parent (FRAME) window.

Section 02: New Facilities MVS: SDE CLI QUERY/EXTRACT REGION

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 28

MAXIMISE orMAXIMIZE

Maximise the current SDE edit view (DOCUMENT) or the MDI parent (FRAME) window.

CBLe SET/QUERY/EXTRACT options now supported for SDE in CBLi 1.60 are as follow:

ALTChange or reset the edit alteration count value.The Alt= value in the status bar is updated to reflect the change.

COLOUR or COLORSet colours for fields in the document window.The following COLOUR parameters are supported in SDE window views:

BLOCK Sets the colour of a marked block of text.Default colour is BLUE REVERSE.

FILEAREA Sets the colour of the untagged, unmarked text within File area.Default colour is BLUE.

HEADING Sets the colour of the Field Name, Field Reference and Field Data Type header lines.Default colour is WHITE.

HELDDATA Sets the colour of the field data within the display area belonging to field columns that have beenHELD using the SELECT command.Default colour is TURQUOISE.

HELDTITLE Sets the colour of the field header (and scale) lines within the display area belonging to fieldcolumns that have been HELD using the SELECT command.Default colour is YELLOW.

HIGHLIGHT Sets the colour of highlighted (tagged) lines.Default colour is YELLOW.

KEY Sets the colour of data field(s) occupying the KEY field of a KSDS data set.Default colour is BLUE USCORE.

MSGLINE Sets the colour of the message lines (with MSGLINE ON).Default colour is RED.

PENDING Sets the colour of prefix area labels, line flag strings and pending prefix area commands.Default colour is YELLOW.

PREFIX Sets the colour of the prefix area text (with PREFIX ON).Default colour is GREEN.

RECFLAGS Sets the colour of the record Flags (with RECINFO ON FLAGS/ALL)Default colour is YELLOW.

RECID Sets the colour of the record TTR/OFFSET or RBA field (with RECINFO ON ID/ALL)Default colour is YELLOW.

RECLENGTH Sets the colour of the record Lrecl field (with RECINFO ON LENGTH/ALL)Default colour is YELLOW.

RECORDTYPE Sets the colour of the record type line.Default colour is PINK.

SCALE Sets the colour of the scale line (with SCALE ON).Default colour is WHITE.

SHADOW Sets the colour of the shadow lines (EXCLUDED, SUPPRESSED or NOT SELECTED lines whenSHADOW ON).Default colour is WHITE.

THIGHLIGHT Sets the colour of highlighted targets.Default colour is GREEN.

TOFEOF Sets the colour of Top-of-Data and End-of-Data lines.Default colour is YELLOW.

DSNChange the DSN (Data Set Name) portion of the fileid for the currently edited data.The fileid in the title bar of the SDE edit window view is updated to reflect the change. Following a save operation, data willbe saved to disk using the changed fileid.

DSORGChange the data set organisation of the data in the current SDE edit window view.The data set organisation indicator and, if KSDS, the key position and length within the title bar of the SDE edit windowview is updated to reflect the change. DSORG may only be changed where the fileid of the currently edited data is not thatof an existing data set. (i.e. a new data set will be allocated when the data is saved.)

FILEIDChange the complete fileid for the currently edited data.The fileid in the title bar of the SDE edit window view is updated to reflect the change. Following a save operation, data willbe saved to disk using the changed fileid.

FMODEChange the file mode portion of the fileid for the currently edited data. For MVS, the file mode is considered to be the highlevel qualifier (HLQ) of the data set name fileid.The fileid in the title bar of the SDE edit window view is updated to reflect the change. Following a save operation, data willbe saved to disk using the changed fileid.

Section 02: New Facilities MVS: Common CBLe & SDE CLI Commands

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 29

FNAME or MBRChange the file name portion of the fileid for the currently edited data. For MVS, the file name is considered to be thePDS(E) member or, for non-PDS(E) fileids, the penultimate qualifier of the data set name fileid.The fileid in the title bar of the SDE edit window view is updated to reflect the change. Following a save operation, data willbe saved to disk using the changed fileid.

FPATHChange the file path portion of the fileid for the currently edited data. For MVS, the file path is considered to be allqualifiers excluding the HLQ of the data set name fileid.The fileid in the title bar of the SDE edit window view is updated to reflect the change. Following a save operation, data willbe saved to disk using the changed fileid.

FTYPEChange the file type portion of the fileid for the currently edited data. For MVS, the file type is considered to be the lowestlevel qualifier of the data set name fileid.The fileid in the title bar of the SDE edit window view is updated to reflect the change. Following a save operation, data willbe saved to disk using the changed fileid.

LASTMSGDisplays the last message or error message generated for the current file view.

LRECLChange the defined LRECL value of the data in the current SDE edit window view.The RecL= value in the status bar and LRECL value in the title bar of the SDE edit window view are updated to reflect thechange.SET LRECL fails and returns an error if an LRECL value is specified which is less than the maximum record lengthexpected by the record types currently assigned to the displayed records. LRECL may only be changed where the fileid ofthe currently edited data is not that of an existing data set. (i.e. a new data set will be allocated when the data is saved.)

MACROPATHUpdate/Display the CBLe/SDE environment macro path of libraries.

MSGMODEDefines whether messages and error messages are displayed. (Parameters ON or OFF)

PFKEYDefines the action of a Program Function (PF) Key for the current SDE window view (KEYS Window menu).An enhancement to SET PFKEY in both SDE and CBLe text edit is the ability to omit separating blanks between thePFKEY (abbrev. PFK) option name and the PFKey number which follows. e.g. SET PFK13 HELP

RECFMChange the defined RECFM of the data in the current SDE edit window view.The Fmt= value in the status bar and RECFM value in the title bar of the SDE edit window view are updated to reflect thechange. RECFM may only be changed where the fileid of the currently edited data is not that of an existing data set. (i.e. anew data set will be allocated when the data is saved.)

RESERVEDReserve a line and optionally insert a coloured text string in the SDE document window for the current file. The linenumber is specified as being relative to the top, middle or bottom of the document window.

UNDOINGDetermines whether the UNDO (and REDO) facility is enabled, the number of change levels that SDE will attempt tomaintain and the maximum amount of storage SDE can allocate in order to store this information.

WINNAMEPrimarily used in edit macros, allows the user to interrogate or change the unique window name of the current windowview or window frame.

Section 02: New Facilities MVS: Common CBLe & SDE CLI Commands

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 30

Section 03: Other Changes

All: List Window Prefix Command AreaAll list windows have been updated in CBLi 1.60 to display a 2 character prefix command area (previously only 1 character.) This isto allow for new 2-character prefix area commands.

Prefix command "F", previously invoking the "File Search" utility, has been changed in CBLi 1.60 to use the more advanced "FSU -File Search & Update" utility instead. The "File Search" utility may now be invoked using prefix command "FS".

The following new prefix commands have been introduced for use in Execute CBLVCAT windows, List windows, and File Searchwindows where appropriate.

Command Description

EX Execute the library member entry. (Invokes the TSO command, EXECUTE, using the entry name asinput.Supported in MVS TSO or ISPF environments only.

F Open the FSU - File Search/Update Window to perform an advanced search and optionally update thecontents of the entry.Supported for MVS SELCOPY licensees only on all types of data set.

FS Previously assigned to prefix command "F", opens the File Search window to search the contents ofthe entry.Supported for MVS PDS/PDSE, CMS fileid, VSE LIBR sub-library and member entries only.

FO Open an SDE view to display (browse) the entry as output from the FSU - File Search/Update Window.Supported for MVS SELCOPY licensees only.

J Submit the library member entry to batch. Executes the CBLe CLI SUBMIT command using the entryname as input. (A CBLe frame window must be active for this operation to suceed.)Supported in MVS and VSE environments only.

SD Open the SDE EDIT Dialog Window to perform a BROWSE of the entry's data within a Structured DataEnvironment window view.Supported for MVS SELCOPY licensees only.

Z Perform a compress of an MVS PDS library to reclaim disk space occupied by replaced (back-level)members. This action performs an IEBCOPY to itself. No action is taken for PDSE entries, however, theIEBCOPY dialog is opened with an error message if executed against any non-PDS(E) entry.Supported in MVS environments only.

All: Current Time Stamp DisplayRelease 1.60 displays the current date and time in columns 91 to 109 of the status bar located at the bottom of the CBLe text editframe window.

Since its position is beyond column 80, display of the current date and time is only possible on dynamic 3270 terminals with agreater number of columns than that provided by a standard 3270 terminal.

Figure 8. CBLe Status Bar - Current Time and Date.

MVS: SDE COBOL Copy Book "01" EntriesCreation of an SDE structure definition object (SDO) from one or more COBOL copy books has been sophisticated to hadleabscence of an "01" level entry.

The following rules apply when the CREATE STRUCTURE command is executed to create an SDO from one or more COBOLCopy Books:

Each "01" level entry will generate a new record type (RTO) mapping.1.

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 31

If no "01" level entries exist and the next available lowest level entry is redefined by all entries of the same level within thecopy book, then these entries are treated as "01" levels and a new record type (RTO) mapping generated for each. e.g.

02 RECORD-SMTS. 03 ....

02 RECORD-SMTS-T01 REDEFINES RECORD-SMTS. 03 ....

02 RECORD-SMTS-T02 REDEFINES RECORD-SMTS. 03 ....

2.

If no "01" level entries exist and the next available lowest level entry is not redefined by all entries of the same level withinthe copy book, then an "01" entry with name "SELCOPY-01" is generated by SDE. Therefore, the structure will contain asingle record type (RTO) mapping.

3.

MVS: SDE Progress Window and Attn Key InterruptWhen execution of CHANGE, FIND, FSU, LOCATE, RCHANGE or RFIND exceeds 1 second, a progress window is openeddisplaying the number of records processed so far. This window also provides the user with the oportunity to interrupt the operationusing the Attn key.

Figure 9. SDE Progress Window.

All: CBLe CLI DIALOGThe CBLe DIALOG CLI command was originally introduced in CBLi release 1.10.

For use in CBLe macros only, DIALOG opens a dialog window prompting the user to enter text and/or select an action. The textentered and action selected are identified via the following REXX compound variables set by DIALOG when the dialog window isclosed:

dialog.0 3dialog.1 The contents of the edit field when the dialog window is closed. If no edit string is entered or if no edit field is

present, then this variable is set to the null string.dialog.2 The upper case text string of the action selected when the dialog window is closed. (i.e. "OK", "CANCEL", "YES"

or "NO".)

CBLi release 1.60 supports an additional action string "PF3" assigned to the value of DIALOG.2. This reports that the dialogwindow was closed by the user without selecting an action.

All: CBLe CLI SET INIVAREXTRACT and QUERY INIVAR are already supported by CBLi to report the values of variables set in both the USER and SYSTEMCBLiINI data sets.

Syntax:

>>-- SET --------- INIVar ----- var_name --------+-------------+-------------------->< | | +- var_value -+

Description:

SET INIVAR adds or updates a USER.CBLiINI variable in storage. This may be one of CBLi's standard CBLiINI variables or a userdefined variable.

Section 03: Other Changes MVS: SDE COBOL Copy Book "01" Entries

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 32

Note that most standard CBLi variables are only interrogated when CBLi is started. Therefore, a change to these types of variables'values will not take effect until CBLi is re-started.

When the CBLi session is closed, the new or updated CBLiINI variable is written to the USER.CBLiINI data set and so the variableis set across CBLi sessions. New variables are added to the bottom of the CBLiINI data set following a comment line reporting thenumber of new variables and their date of insert, whereas existing variables are updated in their original location in the file.

The value of any CBLiINI file variable may be referenced directly within CBLe CLI command syntax by simply specifying thevariable name between "%" (percent) characters. Note that the level of CBLiINI variable ("USER" or "SYSTEM") is the first qualifierof the variable. e.g. LD %USER.DEVELOPMENT.PREFIX%

SET INIVAR takes effect at the Global level.

SET Value:

var_nameThe two-level CBLiINI variable name in the format nnnnn.mmmmm to be added or replaced. e.g. DEVELOPMENT.TESTHLQThe first level represents a sub-section in the CBLiINI file which is inserted in enclosing "( )" (parentheses). e.g. (DEVELOPMENT)The second level is an entry within the sub-section in the CBLiINI file. e.g. TESTHLQ=var_valueThe name of a new variable is automatically upper cased prior to being written to the CBLiINI data set. This does notaffect references to the variable name as they are not case sensitive. e.g. %user.Development.TestHLQ%

var_valueThe value to be assigned to the CBLiINI variable name.All tokens following var_name are parsed, as though being read from the CBLiINI file, and the resultant value assigned tovar_name. If var_value contains an unquoted "*" (asterisk), it is treated as the start of comment data and so the end ofvar_value. The "*" and any text following is ignored and not written to the CBLiINI file. The significant var_value text ispassed, unaltered, as the value assigned to var_name.Default is a null string.

Examples:

set inivar Edit.UseDSNPrefix YESUpdate the value of the existing CBLi standard CBLiINI variable USER.Edit.UseDSNPrefix.

set inivar Prefix.SysVol Z19 Add a user CBLiINI variable for system volume prefix. e.g. To list all system volumes (Z19*):

LVOL %USER.PREFIX.SYSVOL%*

set inivar %user%.LogDSN %user%.LOG.D%yy%%mm%%dd%Add a user CBLiINI variable for a user defined log data set. Both the variable name and its value include standardenvironment variables which are translated before being passed to the SET INIVAR operation.

All: CBLi CMDTEXT Cursor PositioningBy default, any execution of CMDTEXT (via PF4 key) that scrolls the display so that the focus line is no longer visible, will positionthe cursor in column 1 of the command line.

CBLi release 1.60 introduces a subtle change so that, for CBLe text edit views, if the following are true and the display is scrolledso that the focus line is no longer in view, then the cursor will remain on the same column and line within the window display:

The command being executed is a CBLe CLI LOCATE command with a named line-target (label name) argument. Notethat the LOCATE verb is default and may be omitted. e.g. .SDE

1.

The focus line occupies one of the first 4 lines of the window display.2.

The purpose of this change is to allow easy navigation of a CMX HOME file using named line targets.

Section 03: Other Changes All: CBLe CLI SET INIVAR

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 33

All: CBLi 1.50 Zaps appliedZap ID Op. Sys. Query Ref. DescriptionI150z01 MVS (IQ01393 -

2008/05/30)Open of HSM Migrated datasets should be preceded by a user dialog providing option torecall or cancel.

I150z02 MVS (IQ01395 -2008/05/30)

Potential loop in SDE when a variable length field is shortened with UNDOing ON (thedefault).

I150z03 MVS (IQ01404 -2008/06/02)

Structured Data Edit: Errors, including corruption of following field, when updating a typeHEXadecimal field (not supported using COBOL copybook definition) and the update endson the high-order digit of a hexadecimal pair.

I150z04 All (IQ01408 -2008/06/06)

Protection Exception at IOSFDLI0+0274 from SELCOPY Interactive Debug's RERUN (RR)operation on a SELCOPY/IMS job.Same problem in previous release.

I150z05 All (IQ01411 -2008/06/06)

SELCOPY Interactive IMS PCB formated window does not automatically update. This zapalso increases the window depth to 15 lines.Same problem in previous release.

I150z06 MVS (IQ001458 -2008/09/17)

Rationalise interpretation of trailing wild card "*" in a DSN filemask so that it matches MVSISPF 3.4 data set specification. Exception to this is where the filemask ends in dot, in whichcase "*" represents the end of the last qualifier of the file mask. i.e.

LD CBL.DIST* => LD CBL.DIST*.** LD CBL.DIST*. => LD CBL.DIST* LD CBL.DIST. => LD CBL.DIST

I150z07 MVS (IQ001480 -2008/09/17)

0C7 at CNVFDATI+09FA when displaying a non-standard PDS library directory entry thathas an invalid time/date field.

I150z08 MVS (IQ001522 -2008/10/23)

0C4 at SDELIB+0154C8 intermittantly when using SDE to edit/browse a VSAM file.

I150z09 MVS (IQ001572 -2008/12/11)

MVS system symbols not translated in USER CBLIINI variable SYSTEM.CMDTEXT. e.g.CMDTEXT=&SYSNAME..CBL.CBLI.CMX(%USER%)

I150z10 MVS (IQ001536 -2008/12/11)

SDE EDIT: Unnamed fields are not suppressed for UNNAMED OFF where the SDO usedwas generated from a COBOL copy book containing FILLER fields, and has been loadedfrom DASD (as opposed to having been recently generated in storage by a CREATESTRUCTURE command.)

I150z11 MVS (IQ001595 -2008/12/11)

0C4 at SDELIB+03C418 when using the STEMINSERT command from a CBLe macro toinsert records into an edited file using a REXX stem variable as the source. The abendoccurs if at least one of the records to be inserted exceeds 4096 bytes in length.

I150z12 MVS (IQ01615 -2008/12/16)

0C4 at CBLDLL+0780EA after failure to allocate an I/O buffer.

I150z13 MVS (IQ01621 -2008/12/16)

SDE FIND PREV fails to find a match for the search string in the last search field of a recordwhich occurs previous to the record on the focus line.

PDF comment end -->

Section 03: Other Changes All: CBLi 1.50 Zaps applied

2009/03/12 10:41:43 CBLi 1.60 New Features - 2009 34