+ All Categories

In Oh

Date post: 07-Oct-2014
Category:
Upload: navya-behara
View: 303 times
Download: 16 times
Share this document with a friend
Popular Tags:
120
InSync Handbook InSync 5.300 INTELLIGENT SYSTEMS MANAGEMENT INOH-5300-00
Transcript
Page 1: In Oh

InSync Handbook

InSync 5 .300

I N T E L L I G E N T • S Y S T E M S • M A N A G E M E N T

INOH-5300-00

Page 2: In Oh

Publication numberINOH-5300-00 (January 2006)

Documentation setThe documentation relating to this product includes:

■ InSync Handbook

■ InSync for z/OS User Guide

■ InSync for DB2 User Guide

■ InSync for IMS User Guide

■ InSync Batch User Guide

■ InSync Installation Guide

■ InSync Messages

■ InSync Quick Reference

Making commentsWe welcome user feedback on our product documentation. Please contact your local Macro 4 representative, email us at [email protected], or write to:

Technical DocumentationMacro 4The Orangery, Turners Hill Road,Crawley, West Sussex RH10 4SSUnited Kingdomwww.macro4.com

Trademark acknowledgementsThe following are trademarks of Macro 4: InSync

The following are trademarks or registered trademarks of IBM Corporation: DB2, IMS, MVS, OS/390, z/OS.

Other product and company names mentioned herein may be the trademarks or registered trademarks of their respective owners.

License informationCopyright © 2006 Macro 4. All rights reserved.

This publication, as well as the software described in it, is furnished under license and may be used or copied only in accordance with the terms of such license. The information in this publication is furnished for informational use only, is subject to change without notice, and should not be construed as a commitment by Macro 4. Macro 4 assumes no responsibility or liability for any errors or inaccuracies which may appear in this publication.

Except as permitted by such license, no part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, recording or otherwise, without prior written permission from Macro 4.

Page 3: In Oh

3

Contents

About this manual . . . . . . . . . . . . . . . . . . . . .7

Chapter 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . .11What is InSync?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12What are its key features? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12What does it look like? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

How are the menus structured?. . . . . . . . . . . . . . . . . . . . . . . . . 13How about the function keys?. . . . . . . . . . . . . . . . . . . . . . . . . . 15

Is online help available? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16How do I tell what’s gone wrong?. . . . . . . . . . . . . . . . . . . . . . . 16

What programming languages are supported? . . . . . . . . . . . . . . . . 17What file structures are supported? . . . . . . . . . . . . . . . . . . . . . . . . . 17

Chapter 2 Getting started . . . . . . . . . . . . . . . . . . . . . . .19Where do I begin?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20How do I browse the contents of a dataset?. . . . . . . . . . . . . . . . . . . 21

How do I view the next records? . . . . . . . . . . . . . . . . . . . . . . . 22Can I go directly to a specific record? . . . . . . . . . . . . . . . . . . . 23How do I view the rest of a long record? . . . . . . . . . . . . . . . . . 23Can I see more than one record at a time?. . . . . . . . . . . . . . . . 24In full-screen mode, how do I navigate through my data?. . . . 25

How do I apply formatting to my displays?. . . . . . . . . . . . . . . . . . . 26What do the Format codes mean? . . . . . . . . . . . . . . . . . . . . . . 27Can I see more than one record at a time?. . . . . . . . . . . . . . . . 27So, there are four ways of viewing my data? . . . . . . . . . . . . . . 28

INSYNC HANDBOOK

Page 4: In Oh

Contents4

In formatted mode, how do I navigate through my data? . . . . 29How exactly do I specify my record layout? . . . . . . . . . . . . . . 30

I’ve finished viewing the data: what now? . . . . . . . . . . . . . . . . . . . . 31Did you know? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

Chapter 3 Controlling what’s displayed . . . . . . . . . . . .33What are “subset selection criteria”? . . . . . . . . . . . . . . . . . . . . . . . . 34

How do I re-use my saved subset selection criteria? . . . . . . . . 38Can I review my current criteria if I didn’t save them? . . . . . . 39Can I use subset selection criteria in unformatted mode? . . . . 39

Can I suppress some of the fields? . . . . . . . . . . . . . . . . . . . . . . . . . . 41Can I exclude fields from a multi-record display? . . . . . . . . . . 43Can I exclude records from a multi-record display? . . . . . . . . 43Can I keep a field always visible in a multi-record display? . . 43

Can I search for specific values?. . . . . . . . . . . . . . . . . . . . . . . . . . . . 44Can’t I just search for a string of characters? . . . . . . . . . . . . . . 45

What other parameters can I adjust? . . . . . . . . . . . . . . . . . . . . . . . . 45Did you know? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

Chapter 4 Editing records in a dataset . . . . . . . . . . . . .49I guess I start from the Primary Options menu? . . . . . . . . . . . . . . . 50

Supposing I make a mistake...? . . . . . . . . . . . . . . . . . . . . . . . . . 51What if the system crashes in mid-edit? . . . . . . . . . . . . . . . . . . 53What’s the difference between a log and an audit report? . . . . 53Why is READ-ONLY editing useful? . . . . . . . . . . . . . . . . . . . . 55

What editing operations are available? . . . . . . . . . . . . . . . . . . . . . . 56What types of command are supported? . . . . . . . . . . . . . . . . . 56Can I insert new records? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56How do I save my changes? . . . . . . . . . . . . . . . . . . . . . . . . . . . 57Formatted and unformatted single-record modes . . . . . . . . . . 58Formatted multi-record mode (TFORMAT) . . . . . . . . . . . . . . 59Unformatted multi-record mode (FS) . . . . . . . . . . . . . . . . . . . . 60

Did you know? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

Chapter 5 Other dataset capabilities . . . . . . . . . . . . . .63Can I just key in a whole set of records? . . . . . . . . . . . . . . . . . . . . . 64How can I create one dataset from another? . . . . . . . . . . . . . . . . . . 65

Can I select records from a dataset? . . . . . . . . . . . . . . . . . . . . . 66Can I rearrange the order of the fields? . . . . . . . . . . . . . . . . . . 67Are these two datasets the same? . . . . . . . . . . . . . . . . . . . . . . . 69

Hardcopy output is probably handled by the PRINT option? . . . . 73Can I print just a single record? . . . . . . . . . . . . . . . . . . . . . . . . 74

INSYNC HANDBOOK

Page 5: In Oh

Contents 5

Did you know? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

Chapter 6 More about formatting . . . . . . . . . . . . . . . . .77How do I display or print my record layout? . . . . . . . . . . . . . . . . . 78Can InSync handle complex record layouts? . . . . . . . . . . . . . . . . . 79

Multiple layouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79Compound layouts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

Chapter 7 Dataset utilities . . . . . . . . . . . . . . . . . . . . . .85Working with datasets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

Defining VSAM datasets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86Working with general datasets . . . . . . . . . . . . . . . . . . . . . . . . . 87

Working with PDS members . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87Searching for strings in PDS members . . . . . . . . . . . . . . . . . . . 87Manipulating PDS members . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

Working with VTOCs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

Chapter 8 Working in batch . . . . . . . . . . . . . . . . . . . . .91How do online and batch options match up? . . . . . . . . . . . . . . . . . 92How do I specify a batch option? . . . . . . . . . . . . . . . . . . . . . . . . . . . 93What on earth does that batch stream mean? . . . . . . . . . . . . . . . . . 95What about multiple-layout datasets?. . . . . . . . . . . . . . . . . . . . . . . . 97Can I split my data into several streams? . . . . . . . . . . . . . . . . . . . . . 97Can I create temporary values during a batch run?. . . . . . . . . . . . . 98How can I tell what happened? . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98Did you know? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

Chapter 9 DB2 and IMS databases . . . . . . . . . . . . . . .101How do I work with DB2 tables? . . . . . . . . . . . . . . . . . . . . . . . . . . 102

I want to view the rows in a table . . . . . . . . . . . . . . . . . . . . . . 102I want to modify the rows . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105PRINT, COPY, EXTRACT and LOAD: any surprises?. . . . 106What’s this ‘relationship’ stuff all about?. . . . . . . . . . . . . . . . . 106

How do I work with IMS databases? . . . . . . . . . . . . . . . . . . . . . . . 108I want to view the segments in a database . . . . . . . . . . . . . . . 108I want to modify the segments . . . . . . . . . . . . . . . . . . . . . . . . 111PRINT, EXTRACT and LOAD: all as expected? . . . . . . . . . 113

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . .115

INSYNC HANDBOOK

Page 6: In Oh

Contents6

INSYNC HANDBOOK

Page 7: In Oh

7

About this manual

Welcome to InSync. This is the InSync Handbook, which introduces you to InSync and helps you to get started with the product. The Handbook’s focus is on getting to know the product and appreciating its capabilities. It does not aim to provide you with full details of InSync; for that you should consult the rest of the product documentation.

Additional copies of the manuals can be downloaded from the secure customer area of the Macro 4 web site, which may also have more up-to-date versions.

See https://support.macro4.com/Manuals/secure/index.aspx.

The topics covered in the Handbook are: ■ ‘Introduction’ on page 11 –

an outline of InSync’s capabilities.■ ‘Getting started’ on page 19 –

using InSync to browse a z/OS dataset.■ ‘Controlling what’s displayed’ on page 33 –

selection criteria, locating data, setting session parameters.■ ‘Editing records in a dataset’ on page 49 –

exactly what it says on the tin.■ ‘Other dataset capabilities’ on page 63 –

printing, copying, restructuring and comparing datasets.■ ‘More about formatting’ on page 77 –

InSync’s support for dataset with multiple record formats.

INSYNC HANDBOOK

Page 8: In Oh

About this manual8

■ ‘Dataset utilities’ on page 85 – tools for administering VSAM files, datasets, PDS members, and VTOCs, and for find-and-replace in PDS members.

■ ‘Working in batch’ on page 91 – nothing if not versatile, InSync can do it both online and in batch.

■ ‘DB2 and IMS databases’ on page 101 – not just datasets: DB2 tables and IMS databases as well!

Release levelsMacro 4 product release levels are of the form n.nnn. Minor software updates are reflected by a change in the last two digits, and do not necessarily cause the documentation to be reissued.

ConventionsThe following typographic conventions are used:

Further informationFor details of the functions and facilities of the product, including those not covered in this Handbook, please refer to the following InSync manuals:■ The InSync Installation and Configuration Guide tells you how to

install the product on your system.■ The InSync for z/OS User Guide, DB2 User Guide and IMS User Guide

explain InSync’s abilities to handle those types of data file.

Text is highlighted like this to draw your attention to a fundamental concept, or to a particularly important piece of information.

boldface Indicates a command or keyword that you should type, exactly as shown.

italics Indicates a variable for which you should substitute an appropriate value.

monotype Indicates literal input and output.

Ctrl+D Indicates two or more keys pressed simultaneously.

[ ] Brackets surround an optional value.

| Vertical bars separate alternative values from which you must make a selection.

... Ellipsis indicates that the preceding element may be repeated.

Key concept

INSYNC HANDBOOK

Page 9: In Oh

Further information 9

■ The InSync Batch User Guide describes InSync’s powerful batch processing capabilities.

■ The InSync Quick Reference summarizes the commands associated with InSync’s online Browse and Edit options.

■ The InSync Messages manual documents batch error messages.

INSYNC HANDBOOK

Page 10: In Oh

About this manual10

INSYNC HANDBOOK

Page 11: In Oh

11

CHAPTER 1

Chapter 1 Introduction

This chapter introduces InSync. It addresses the following questions:■ ‘What is InSync?’ on page 12■ ‘What are its key features?’ on page 12■ ‘What does it look like?’ on page 12■ ‘Is online help available?’ on page 16■ ‘What programming languages are supported?’ on page 17■ ‘What file structures are supported?’ on page 17

INSYNC HANDBOOK

Page 12: In Oh

CHAPTER 1 ■ Introduction ■ What is InSync?12

What is InSync?InSync is a comprehensive file and data management solution allowing developers fast, easy access to key application data, plus comprehensive DB2 and IMS data management and testing. By eliminating many time-consuming encumbrances of data management, InSync enables application programmers to utilise more efficiently their applications development and maintenance skills. Thanks to InSync’s simple and consistent interface, users quickly become comfortable with its capabilities.

What are its key features?InSync offers the following additional advantages:■ Provides full support for COBOL and PL/I copybooks■ Manages and controls the DB2 and IMS environments■ Displays records in a number of different formats■ Makes revisions online across an entire file or selected subsets■ Powerful batch support■ Improves testing speed while shortening the testing cycle■ Simplifies creating and validating test data■ Creates test data without coding SQL commands or learning other

utilities■ Reduces dependencies on Database Administrator resources■ Optional Data Privacy feature.

What does it look like?InSync uses ISPF-like screens to provide a familiar user environment and accelerate the testing process. If you are comfortable with ISPF operations and conventions, then you’ll be immediately at home with InSync’s menus and data entry panels.

NEW in 5.300Data Privacy feature

INSYNC HANDBOOK

Page 13: In Oh

What does it look like? 13

How are the menus structured?All InSync components use a similar menu structure.

For the base z/OS product, the menus are arranged as follows:

NEW in 5.300MVS Data Privacy feature, and online/batch FIELDCOMPARE

0 (PARMS) 0 (LICENSE) Display InSync license information

1 (PROFILE) Specify session profile parameters

2 (PRINT) Specify print dataset allocation

3 (LOG/AUDIT) Specify EDIT log/audit dataset allocation

4 (PF KEYS) Specify PF key assignments

5 (DATA PRIVACY) Specify Data Privacy Rules for a dataset

1 (BROWSE) Dataset browse

2 (EDIT) Dataset edit

3 (PRINT) Dataset print

4 (LAYOUT) COBOL record layout processing

5 (CREATE) Formatted record create

6 (EXTRACT) Create extract dataset

7 (TABLES) 1 (SELECT) Specify multiple format selection criteria

2 (UPDATE) View/Update multiple format sel’n criteria

3 (COMPOUND) Define compound record layout structure

4 (REVIEW) Review/update compound table

8 (FIELDMAP) Map fields to new record layout

9 (FIELDCOMPARE) Dataset field compare

10 (COMPARE) Dataset record compare

11 (DATEAGE) Adjust dates within dataset

U (UTILITIES) 1 (LIBRARY) PDS directory and CSECT information

2 (SCAN) PDS scan utility

3 (VSAM) VSAM utility

4 (VTOC) VTOC utility

5 (DATASET) DATASET utility

B (BATCH) 1 (CHANGE) Specify record change criteria

2 (DELETE) Specify record delete criteria

3 (PRINT) Specify dataset print criteria

4 (EXTRACT) Specify record extract criteria

5 (FIELDMAP) Specify field mapping criteria

6 (FIELDCOMPARE) Specify field compare criteria

7 (COMPARE) Specify record compare criteria

8 (DATEAGE) Specify date age criteria

9 (SCAN) Specify PDS scan criteria

10 (VTOC) Specify Batch VTOC criteria

11 (LAYOUT) Specify Batch LAYOUT criteria

12 (LIBRARY) Specify batch LIBRARY criteria

DB2 Invoke InSync for DB2 (see below)

IMS Invoke InSync for IMS (see below)

T (TUTORIAL) Display information about InSync

INSYNC HANDBOOK

Page 14: In Oh

CHAPTER 1 ■ Introduction ■ What does it look like?14

For the DB2 option, the menus are arranged as follows:

For the IMS option, the menus are arranged as follows:

0 (PARMS) 1 (PROFILE) Specify session profile parameters

2 (PRINT) Specify print dataset allocation

3 (AUDIT) Specify audit dataset allocation

4 (PF KEYS) Specify PF key assignments

5 (ENVIRONMENT) Specify DB2 system parameters

6 (ADMIN) InSync DB2ID table administration

1 (BROWSE) Table browse

2 (EDIT) Table edit

3 (PRINT) Table print

4 (COPY) Table row copy

5 (EXTRACT) Extract table records

6 (LOAD) Load extracted table records

7 (RELATE) Relationship management

B (BATCH) 3 (PRINT) Table print

4 (EXTRACT) Extract table records

5 (LOAD) Load extracted table records

6 (R-EXTRACT) Related table extract

7 (R-LOAD) Related table load

8 (R-DELETE) Related delete

T (TUTORIAL) Display information about InSync for DB2

0 (PARMS) 1 (PROFILE) Specify session profile parameters

2 (PRINT) Specify print dataset allocation

3 (AUDIT) Specify audit dataset allocation

4 (LOG) Specify log dataset allocation

5 (PF KEYS) Specify PF key assignments

6 (ENVIRONMENT) Specify IMS system parameters

7 (ADMIN) InSync IMSID database administration

1 (BROWSE) Database browse

2 (EDIT) Database edit

3 (PRINT) Database print

4 (FORMAT) Segment format tables

5 (EXTRACT) Extract database records

6 (LOAD) Load extracted database records

7 (RELATE) Extract relationships

B (BATCH) 1 (CHANGE) Specify segment change criteria

2 (DELETE) Specify segment delete criteria

3 (PRINT) Database print

4 (EXTRACT) Extract database records

5 (LOAD) Load extracted database records

6 (INIT) Initialize database

7 (INSERT) Specify segment insert criteria

8 (COMPARE) Compare database extract files

9 (R-EXTRACT) Related database extract

T (TUTORIAL) Display information about InSync for IMS

INSYNC HANDBOOK

Page 15: In Oh

What does it look like? 15

How about the function keys?They’re ISPF-like as well. The standard InSync settings are:

PF Keys Command Description

PF1, PF13 HELP Displays tutorial information.

PF2, PF14 SPLIT Divides display into two logical screens.

PF3, PF15 END Terminates an option or sub-option.

PF4, PF16 RETURN Returns to the Primary Options menu.

PF5, PF17 RFIND Displays the next record which meets the currently defined search criteria.

PF6, PF18 RCHANGE Applies the defined change to the currently displayed record.

PF7, PF19 UP Scrolls towards top of displayed data.

PF8, PF20 DOWN Scrolls towards bottom of displayed data.

PF9, PF21 SWAP In split-screen mode, jumps to other screen.

PF10, PF22

PREVIOUS or LEFT

In single record display mode: displays a record nearer to the top of the dataset.In multi-record display mode: displays fields nearer to the start of the record.

PF11, PF23

NEXT or RIGHT

In single record display mode: displays a record nearer to the bottom of the dataset.In multi-record display mode: displays fields nearer to the end of the record.

PF12, PF24

RETRIEVE Recalls previously-entered commands to the command line.

Type PFSHOW at the COMMAND ===> prompt, and then press Enter. InSync displays the function key settings.

INSYNC HANDBOOK

Page 16: In Oh

CHAPTER 1 ■ Introduction ■ Is online help available?16

Is online help available?InSync provides comprehensive online assistance. The HELP command (or PF1) displays tutorial information for the current panel, and all of the help text can be reached from the TUTORIAL option on InSync’s Primary Options menu.

How do I tell what’s gone wrong?If you make a mistake, InSync displays an on-screen message:

Additional information is only a keystroke away:

InSync ----------------- BROWSE - Dataset Specification -------- Invalid value COMMAND ===>

DATA FILE: DATASET NAME ===> 'INO.TRG.DEM.CUST.ESDS' VOLUME SERIAL ===> (If not cataloged)

Use subset selection criteria ===> OK (YES, NO) Use existing subset selection criteria ===> NO (YES, NO) Use COBOL or PL/1 layout to format display ===> YES (COB, PLI, YES, NO)

COPY LIBRARY OR STORED SUBSET SELECTION CRITERIA LIBRARY ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY LIST: MEMBER ===> DISPLAY ===> YES (YES, NO)

OTHER DATASET ===>

“OK” is not a valid response, and generates a brief error message

InSync ----------------- BROWSE - Dataset Specification -------- Invalid value COMMAND ===>

DATA FILE: DATASET NAME ===> 'INO.TRG.DEM.CUST.ESDS' VOLUME SERIAL ===> (If not cataloged)

Use subset selection criteria ===> OK (YES, NO) Use existing subset selection criteria == Use COBOL or PL/1 layout to format display == Enter one of the listed O)

values. COPY LIBRARY OR STORED SUBSET SELECTION CRITE ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY LIST: MEMBER ===> DISPLAY ===> YES (YES, NO)

OTHER DATASET ===>

Press PF1 to display additional guidance in a popup window

INSYNC HANDBOOK

Page 17: In Oh

What programming languages are supported? 17

What programming languages are supported?In unformatted mode, InSync displays data in character and hexadecimal form, and so is language-independent.

In formatted mode, you can specify COBOL or PL/I record layouts which describes the data; InSync uses those layouts to present each record as a structured collection of named data types.

What file structures are supported?InSync supports all common z/OS dataset architectures:■ sequential datasets (QSAM and BSAM)■ partitioned datasets (PDS and PDSE)■ BDAM datasets■ VSAM datasets (KSDS, ESDS and RRDS, also linear datasets with

4Kb records)■ HFS files

Additionally, its optional components work with:■ DB2 tables and rows■ IMS databases and segments

INSYNC HANDBOOK

Page 18: In Oh

CHAPTER 1 ■ Introduction ■ What file structures are supported?18

INSYNC HANDBOOK

Page 19: In Oh

19

CHAPTER 2

Chapter 2 Getting started

This chapter explains the basics of InSync, using the product to browse the contents of a dataset. See:■ ‘Where do I begin?’ on page 20■ ‘How do I browse the contents of a dataset?’ on page 21■ ‘How do I apply formatting to my displays?’ on page 26■ ‘I’ve finished viewing the data: what now?’ on page 31

The material presented in the first few chapters of this handbook is fully explained in the InSync for z/OS User Guide.

INSYNC HANDBOOK

Page 20: In Oh

CHAPTER 2 ■ Getting started ■ Where do I begin?20

Where do I begin?The InSync Primary Options menu, which provides access to the online facilities, is usually invoked from an ISPF menu. You should check with your System Administrator for instructions on the menu option to select.

Alternatively, enter the following command on any ISPF command line:

tso exec 'hlq.clist(insync00)'

where hlq is the high level qualifier of the location at which your site’s InSync libraries have been installed.

The Primary Options menu appears:

To select an option, type its number (for example, 1 for BROWSE) at the OPTION ===> prompt, and then press Enter.

If they are available, you can start the DB2 and IMS options from any ISPF command line:

tso exec 'hlq.clist(insync)' 'DB2' tso exec 'hlq.clist(insync)' 'IMS'

For more information, see ‘DB2 and IMS databases’ on page 101.

NEW in 5.300FIELDCOMPARE option

The ‘DB2’ and ‘IMS’ lines will be present only if your installation includes the options for InSync to work with those IBM database products.

InSync ---------------- Data Manipulation Utility ---------------- Ver version OPTION ===>

0 PARMS - Specify InSync parameters 1 BROWSE - Dataset browse 2 EDIT - Dataset edit 3 PRINT - Dataset print 4 LAYOUT - COBOL or PL/1 record layout processing 5 CREATE - Formatted or Unformatted record create 6 EXTRACT - Create extract dataset 7 TABLES - Define complex record layout information 8 FIELDMAP - Map fields to new record layout 9 FIELDCOMPARE - Dataset field compare

10 COMPARE - Dataset record compare 11 DATEAGE - Adjust dates within datasets U UTILITIES - InSync utilities B BATCH - InSync batch functions

DB2 DB2 - InSync for DB2 IMS IMS - InSync for IMS

T TUTORIAL - Display information about InSync

Software Excellence from Macro 4 (c) Copyright Macro 4 1991-2004. All rights reserved

INSYNC HANDBOOK

Page 21: In Oh

How do I browse the contents of a dataset? 21

How do I browse the contents of a dataset?

Select the BROWSE option from the InSync Primary Options menu; the Dataset Specification panel appears:

Type within single quotes '...' the name of a dataset to be viewed, and leave the other fields at their default values as shown.

Press Enter.

The first record in the dataset is displayed.

InSync transparently handles a wide variety of data storage formats. We use the word ‘dataset’ to mean a sequential dataset, a PDS member, or any other supported file format.

InSync ----------------- BROWSE - Dataset Specification ---------------- InSync COMMAND ===>

DATA FILE: DATASET NAME ===> 'INO.TRG.DEM.CUST.KSDS' VOLUME SERIAL ===> (If not cataloged)

Use subset selection criteria ===> NO (YES, NO) Use existing subset selection criteria ===> NO (YES, NO) Use COBOL or PL/1 layout to format display ===> NO (COB, PLI, YES, NO)

COPY LIBRARY OR STORED SUBSET SELECTION CRITERIA LIBRARY ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY LIST: MEMBER ===> DISPLAY ===> YES (YES, NO)

OTHER DATASET ===>

This is the name of the dataset to be viewed

If you wish InSync to automatically prefix dataset names with your TSO userid, omit the single quotes.

Some of the fields on the panel may already contain data, because InSync remembers most panel settings from one session to the next.

InSync BROWSE - INO.TRG.DEM.CUST.KSDS ------------------------ Row 1 to 2 of 2 COMMAND ===> SCROLL ===> PAGE

KSDS RKP 0 KEYLEN 4 Data length 80 - CAPS OFF

1 2 3 4 5 POSN 12345678901234567890123456789012345678901234567890

1 CHAR 0101BER951002Andrew Cronk The Mount Fincham 51 CHAR pstead Berkshire .f.....

******************************* Bottom of data ********************************

This is record 1 of a KSDS member with 80-character records

This is InSync’s default ‘single-record’ display mode. You can easily switch to a multi-record display mode (see ‘Can I see more than one record at a time?’ on page 24), and you can make multi-record mode the default (see ‘What other parameters can I adjust?’ on page 45).

INSYNC HANDBOOK

Page 22: In Oh

CHAPTER 2 ■ Getting started ■ How do I browse the contents of a dataset?22

The data is shown in character representation, with “.” standing for an unprintable character. To see what those periods represent, you can display their hexadecimal values. Type HEX (or HEX ON) at the COMMAND ===> prompt, and then press Enter:

To revert to the character-only representation, type HEX OFF at the COMMAND ===> prompt, and then press Enter.

How do I view the next records?To scroll forward through the records in the dataset, use the NEXT command; alternatively, press PF11. When you try to scroll past the end of the dataset, InSync displays a message:

To scroll backward towards the first record, use the PREVIOUS command, or press PF10.

InSync BROWSE - INO.TRG.DEM.CUST.KSDS ------------------------ Row 1 to 2 of 2 COMMAND ===> SCROLL ===> PAGE

KSDS RKP 0 KEYLEN 4 Data length 80 - CAPS OFF

1 2 3 4 5 POSN 12345678901234567890123456789012345678901234567890

1 CHAR 0101BER951002Andrew Cronk The Mount Fincham ZONE FFFFCCDFFFFFFC9898A4C9999444E884D9A9A444444C898889 NUMR 01012599510021549560396520003850464530000006953814

+---------+---------+---------+---------+---------+ 51 CHAR pstead Berkshire .f.....

ZONE 9AA88844C899A88984444440800007 NUMR 723514002592289950000001600F05

+---------+---------+---------+---------+---------+ ******************************* Bottom of data ********************************

From now on, we’ll shorten a phrase like “type HEX OFF at the COMMAND ===> prompt, and then press Enter” to just “use the HEX OFF command”.

InSync BROWSE - INO.TRG.DEM.CUST.KSDS ------------------------ End of dataset COMMAND ===> SCROLL ===> PAGE

KSDS RKP 0 KEYLEN 4 Data length 80 - CAPS OFF

1 2 3 4 5 POSN 12345678901234567890123456789012345678901234567890

1 CHAR 0198ESS950805Neep Ipswich Road Colches 51 CHAR ter Essex .f.....

******************************* Bottom of data ********************************

Error and warning messages appear here

INSYNC HANDBOOK

Page 23: In Oh

How do I browse the contents of a dataset? 23

Can I go directly to a specific record?In a sequential dataset, or a ESDS or RRDS, you can use the RECORD number command to jump to a specific record by number. For example, to view the first record:

RECORD 1

In a KSDS, you can use the KEY value command to jump to a record with a specific key (or partial key). For example:

KEY ABC KEY 'ABC' KEY X'414243'

In an ESDS, you can use the RBA value command to jump to a record with a specific Relative Byte Address. For example:

RBA X'4142434445464748'

Another option is to use the FIND command, described in ‘Can I search for specific values?’ on page 44.

How do I view the rest of a long record?If a record is too long to fit on the screen, InSync displays the start of the data. To scroll forward through the data in the record, use the DOWN command, or press PF8:

To scroll backward towards the start of the record, use the UP command, or press PF7.

InSync BROWSE - ASP.OUT.SPUFI ------------------------------ Row 1 to 16 of 82 COMMAND ===> SCROLL ===> PAGE

DSORG PS RECFM VB Rec# 1 Dataln 4088 - CAPS ON RDW OFF

1 2 3 4 5 POSN 12345678901234567890123456789012345678901234567890

1 CHAR ---------+---------+---------+---------+---------+ 51 CHAR ---------+---------+---------+---------+---------+

101 CHAR ---------+---------+---------+---------+---------+ 151 CHAR ---------+---------+---------+---------+---------+ 201 CHAR ---------+---------+---------+---------+---------+ 251 CHAR ---------+---------+---------+---------+---------+ 301 CHAR ---------+---------+---------+---------+---------+ 351 CHAR ---------+---------+---------+---------+---------+ 401 CHAR ---------+---------+---------+---------+---------+ 451 CHAR ---------+---------+---------+---------+---------+ 501 CHAR ---------+---------+---------+---------+---------+ 551 CHAR ---------+---------+---------+---------+---------+ 601 CHAR ---------+---------+---------+---------+---------+ 651 CHAR ---------+---------+---------+---------+---------+ 701 CHAR ---------+---------+---------+---------+---------+ 751 CHAR ---------+---------+---------+---------+---------+

INSYNC HANDBOOK

Page 24: In Oh

CHAPTER 2 ■ Getting started ■ How do I browse the contents of a dataset?24

Can I see more than one record at a time?To view as many records as will fit on the screen, with each record occupying a single line, use the FS (or FS ON) command; “FS” stands for “full-screen”:

The data is shown in character representation, with “.” standing for an unprintable character. To display the hexadecimal representation (in which each record occupies three lines plus a separator), use the HEX (or HEX ON) command:

To revert to the character-only representation, use the HEX OFF command. To return to single-record display, use the FS OFF command.

InSync BROWSE - INO.TRG.DEM.CUST.KSDS ---------------------------- COLS 1 - 80 COMMAND ===> SCROLL ===> PAGE

KSDS RKP 0 KEYLEN 4 LRECL 80 - CAPS OFF

0101BER951002Andrew Cronk The Mount Finchampstead Berkshire .f..... 0103SUR901212Barons BMW 21 Farnham Rd Farnborough Surrey ....... 0108NOR900417Loomies Ltd. 29 Dorcester RdNorwich Norfolk .f..... 0110DOR950805Tylor's 112 Foxrun Dorcester Dorset ....... 0112SUR890401Coombs Cars 34 Acacia Ave Guildford Surrey ......& 0113BER910301Coopers BMW Caversham Park Reading Berkshire .f....& 0114SUR910301Coopers RJ Riverside Thames Ditton Middlesex ....... 0120MID950805Bernstein BMW 9 Turnhill Dr Wolverhampton Midlands ..e.... 0123SOM900202Mitchell Motor 12 Sky Drive Yeovil Somerset .&&.... 0126YOR950805S. Murhpy Fairgrounds Sheffield Yorkshire ..e...e 0132YOR950805Wheathley Willow Tree Rd Doncaster Yorkshire ....... 0139CES950805J.Honeywell 72 Butterfly RdChester Cheshire ..e...& 0144MAN950805Williams 29 Oxbow Road Oxted Manchester .f..... 0150YOR950805Malton Motors 4 Wheel Drive Malton Yorkshire .f..... 0155LOT950805Dunedin Cars 19 Seafield Rd Edinburgh Lothian ....... 0158LON950805Holland Park Holland Park Shepherds Bush London ....... 0160TAY950805Mill Garages Ryhope Road Sunderland Tayside ....... 0163STR950805Douglas Park 18 Bothwell Rd Hamilton Strathclyde ....... 0164GRA950805JCL BMW House 150 Gray StreetAberdeen Grampian ..-.... 0169LEI950805Autotecnic 33 Parker DriveLeicester Leicestershire ..&....

InSync BROWSE - INO.TRG.DEM.CUST.KSDS ---------------------------- COLS 1 - 80 COMMAND ===> SCROLL ===> PAGE

KSDS RKP 0 KEYLEN 4 LRECL 80 - CAPS OFF ------------------------------------------------------------------------------ 0101BER951002Andrew Cronk The Mount Finchampstead Berkshire .f..... FFFFCCDFFFFFFC9898A4C9999444E884D9A9A444444C8988899AA88844C899A88984444440800007 01012599510021549560396520003850464530000006953814723514002592289950000001600F05 ------------------------------------------------------------------------------ 0103SUR901212Barons BMW 21 Farnham Rd Farnborough Surrey ....... FFFFEEDFFFFFFC8999A4CDE44444FF4C8998894D844C8998999A884444EA998A4444444440100009 01032499012122196520246000002106195814094006195269647800002499580000000001300F00 ------------------------------------------------------------------------------ 0108NOR900417Loomies Ltd. 29 Dorcester RdNorwich Norfolk .f..... FFFFDDDFFFFFFD99988A4DA84444FF4C9988AA894D8D99A88844444444D998999444444440800002 010856990041736649520334B0002904693523590945696938000000005696632000000002600F13 ------------------------------------------------------------------------------ 0110DOR950805Tylor's 112 Foxrun Dorcester Dorset ....... FFFFCDDFFFFFFEA9997A44444444FFF4C9A9A944444C9988AA89444444C99A8A4444444440370007 011046995080538369D2000000001120667945000004693523590000004692530000000002500F05 ------------------------------------------------------------------------------ 0112SUR890401Coombs Cars 34 Acacia Ave Guildford Surrey ......& FFFFEEDFFFFFFC9998A4C89A4444FF4C888884CA844CA8988998444444EA998A4444444440100005 01122498904013664220319200003401313910155007493466940000002499580000000002000F00

INSYNC HANDBOOK

Page 25: In Oh

How do I browse the contents of a dataset? 25

In full-screen mode, how do I navigate through my data?To scroll forward (towards the last record) and backward (towards the first record), use the DOWN and UP commands. To scroll sideways within the displayed records, use the RIGHT (or NEXT) and LEFT (or PREVIOUS) commands. These commands are the same as for ISPF.

This is the opposite to the usage in single-record mode, but consistent if you consider InSync as presenting a moveable window onto your data.

In full-screen mode:

In single-record mode:

Think of full-screen mode as offering a window into a dataset ‘object’, and of single-record mode as a window into a record ‘object’.UP and DOWN consistently move the window within the current object; for example, UP in full-screen mode moves towards the start of the dataset, and UP in single-record mode moves towards the start of the record.

Start of file

End of file

UP

DOWN

PREV NEXT

UP

DOWN

PREV NEXT

Start of file End of file

INSYNC HANDBOOK

Page 26: In Oh

CHAPTER 2 ■ Getting started ■ How do I apply formatting to my displays?26

How do I apply formatting to my displays?Record data displayed in character and hexadecimal representation can be difficult to interpret, so InSync offers you another capability: formatted display mode, in which the data is presented in the logical structure defined by a COBOL or PL/I record layout. For example, suppose that you have this COBOL record layout defined as a member in a copybook library:

01 DEALER. 05 CUSTNO PIC 9(4). 05 LOCATN PIC X(3). 05 STDATE PIC 9(6). 05 NAME PIC X(15). 05 ADDRESS1 PIC X(15). 05 ADDRESS2 PIC X(15). 05 ADDRESS3 PIC X(15).

To display records which conform to that layout, select the BROWSE option from the InSync Primary Options menu; the Dataset Specification panel appears:

Type within single quotes '...' the name of a dataset to be viewed, type YES for Use COBOL or PL/I layout to format display, and supply the details of the copybook member, also within single quotes.

Press Enter. The first record in the dataset is displayed:

InSync ----------------- BROWSE - Dataset Specification ---------------- InSync COMMAND ===>

DATA FILE: DATASET NAME ===> 'INO.TRG.DEM.CUST.KSDS' VOLUME SERIAL ===> (If not cataloged)

Use subset selection criteria ===> NO (YES, NO) Use existing subset selection criteria ===> NO (YES, NO) Use COBOL or PL/1 layout to format display ===> YES (COB, PLI, YES, NO)

COPY LIBRARY OR STORED SUBSET SELECTION CRITERIA LIBRARY ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY LIST: MEMBER ===> DISPLAY ===> YES (YES, NO)

OTHER DATASET ===> 'INO.TRG.DEM.CPYBOOKS(ALLCUST)'

This is where you choose formatted display mode

This is the name of the copybook

When you type YES, InSync inspects the copybook and attempts to deduce whether it’s written in COBOL or PL/I. You can tell InSync which language applies by typing C[OB] or P[LI].

INSYNC HANDBOOK

Page 27: In Oh

How do I apply formatting to my displays? 27

InSync uses the information from the copybook – the name, data type and length of each field – to apply formatting to the data, making it much easier to read.

What do the Format codes mean?When displaying the format of each field, InSync uses its own code letters to tell you how the data is stored, rather than language-specific words like BINARY, COMP, DECIMAL and DISPLAY. Commonly-encountered codes include:

Also, code “G” denotes a Group item.

Can I see more than one record at a time?To view as many records as will fit on the screen, with each record occupying a single line, use the TFORMAT (or TFORMAT ON) command; “TFORMAT” stands for “tabular format”:

InSync BROWSE - INO.TRG.DEM.CUST.KSDS ----------------------------------------- COMMAND ===> SCROLL ===> PAGE

KSDS RKP 0 KEYLEN 4 Data length 80 - CAPS OFF WARNING - data length (80) > COPY layout length (73)

LVL FIELD NAME FORMAT POS DATA ********************************** TOP OF DATA ******************************** 01 DEALER G 1 05 CUSTNO Z 4 1 0101 05 LOCATN C 3 5 BER 05 STDATE Z 6 8 951002 05 NAME C 15 14 Andrew Cronk 05 ADDRESS1 C 15 29 The Mount 05 ADDRESS2 C 15 44 Finchampstead 05 ADDRESS3 C 15 59 Berkshire

********************************* BOTTOM OF DATA ******************************

Start position of field within record

Number of display characters used by field

Code letters define data storage format

Code COBOL equivalents PL/I equivalents

B BINARY, COMP, COMP-4 BINARY, OFFSET

C DISPLAY CHARACTER, PICTURE

P COMP-3, PACKED-DECIMAL DECIMAL

Z DISPLAY (zoned decimal) —

INSYNC HANDBOOK

Page 28: In Oh

CHAPTER 2 ■ Getting started ■ How do I apply formatting to my displays?28

To return to single-record display, use the TFORMAT OFF command.

So, there are four ways of viewing my data?That’s correct. Your two independent choices are:■ unformatted (character/hexadecimal) or formatted (using the

logical structure defined by a COBOL or PL/I copybook);■ single-record or multi-record.

Here’s a summary of how you move between the different display modes:

InSync BROWSE - INO.TRG.DEM.CUST.KSDS ---------------------------- COLS 1 - 80 COMMAND ===> SCROLL ===> PAGE

KSDS RKP 0 KEYLEN 4 LRECL 80 - CAPS OFF CUSTNO LOCATN STDATE NAME ADDRESS1 ADDRESS2 Z(4) (1-4) C(3) (5-7) Z(6) (8-13) C(15) (14-28) C(15) (29-43) C(15) (44 -KEY------ ---------- ----------- --------------- --------------- --------- ********************************* TOP OF DATA ********************************* 0101 BER 951002 Andrew Cronk The Mount Finchamps 0103 SUR 901212 Barons BMW 21 Farnham Rd Farnborou 0108 NOR 900417 Loomies Ltd. 29 Dorcester Rd Norwich 0110 DOR 950805 Tylor's 112 Foxrun Dorcester 0112 SUR 890401 Coombs Cars 34 Acacia Ave Guildford 0113 BER 910301 Coopers BMW Caversham Park Reading 0114 SUR 910301 Coopers RJ Riverside Thames Di 0120 MID 950805 Bernstein BMW 9 Turnhill Dr Wolverham 0123 SOM 900202 Mitchell Motor 12 Sky Drive Yeovil 0126 YOR 950805 S. Murhpy Fairgrounds Sheffield 0132 YOR 950805 Wheathley Willow Tree Rd Doncaster 0139 CES 950805 J.Honeywell 72 Butterfly Rd Chester 0144 MAN 950805 Williams 29 Oxbow Road Oxted 0150 YOR 950805 Malton Motors 4 Wheel Drive Malton 0155 LOT 950805 Dunedin Cars 19 Seafield Rd Edinburgh 0158 LON 950805 Holland Park Holland Park Shepherds 0160 TAY 950805 Mill Garages Ryhope Road Sunderlan

This is the field’s storage location in the record

single-recordunformatted

single-recordformatted

multi-recordunformatted

multi-recordformatted

TFORMAT ON

DatasetSpecificationpanel

BROWSE

FORMAT

FS ON FS ON

FS ON

(Note 1)(Note 1)

(Note 3)

(Note 2)

(Note 4)(full-screen) (tabular)

INSYNC HANDBOOK

Page 29: In Oh

How do I apply formatting to my displays? 29

Notes

1 If on the Dataset Specification panel you type YES for Use COBOL or PL/I layout to format display then the data is initially displayed in single-record formatted mode; you can opt instead to always start in multi-record formatted (tabular) mode – see ‘What other parameters can I adjust?’ on page 45. Similarly, if you type NO then the data is initially displayed in single-record unformatted mode, but you can opt instead to always start in multi-record unformatted (full-screen) mode.

2 Use FORMAT to display a panel where you can specify the name of a COBOL or PL/I record layout defined in a copybook library. Once you’ve specified a format member (either here or on the Dataset Specification panel), use FORMAT OFF and FORMAT ON to switch between unformatted and formatted display modes.

3 The arrows show the effects of using the commands with an ON suffix; an OFF suffix works in the opposite direction.

4 The FS ON command remembers your current mode, and reverts to that mode when you use FS OFF, except that a previous tabular mode instead reverts to single-record formatted mode.

In formatted mode, how do I navigate through my data?Navigation in formatted mode is exactly the same as in unformatted mode:

To display thisIn single-record displays, use

In multi-record displays, use

the previous record(s) PREVIOUS (PF10) UP (PF7)

the next record(s) NEXT (PF11) DOWN (PF8)

the start of file PREVIOUS MAX UP MAX

the end of file NEXT MAX DOWN MAX

the previous data in current record(s)

UP (PF7) LEFT (PF10)

the next data in current record(s)

DOWN (PF8) RIGHT (PF11)

the start of current record(s) UP MAX LEFT MAX

the end of current record(s) DOWN MAX RIGHT MAX

NEXT and RIGHT are synonyms, as are PREVIOUS and LEFT.

INSYNC HANDBOOK

Page 30: In Oh

CHAPTER 2 ■ Getting started ■ How do I apply formatting to my displays?30

In formatted mode, you can also use the LOCATE fieldname command to display the part of a record containing a specified field.

How exactly do I specify my record layout?InSync can handle COBOL and PL/I layouts which are defined either as sequential files or, much more commonly, as PDS members. You type YES for Use COBOL or PL/I layout to format display on the Dataset Specification panel, and then use these fields:

InSync provides two basic mechanisms.

1 In the ‘standard’ method, you specify the sequential dataset or PDS member using either the ISPF fields or the Other Dataset field.

For a sequential file, give its full name – for example, MY.LAYOUT.RECTYP2 – and InSync uses that layout.

For a PDS, you can choose to■ give the full name – for example,

MY.LAYOUT.DEFS(RECTYP2) – and InSync uses that layout■ use a pattern for the member name – for example,

MY.LAYOUT.DEFS(RECTYP*) – and InSync presents a list of PDS members matching the pattern, or

■ omit the member name entirely – for example, MY.LAYOUT.DEFS – and InSync presents a list of all members in that library.

In the second and third cases, you can select one of the members from the list by typing an “S” alongside its name.

2 In the ‘short-cut’ method, you type just a PDS member name in the Concatenated Library List field. InSync presents your personal list of PDS libraries (which may be amended), then searches those libraries and uses the first occurrence of the specified member name that it finds.

InSync ----------------- BROWSE - Dataset Specification ---------------- InSync COMMAND ===>

DATA FILE: DATASET NAME ===> 'INO.TRG.DEM.CUST.KSDS' VOLUME SERIAL ===> (If not cataloged)

Use subset selection criteria ===> NO (YES, NO) Use existing subset selection criteria ===> NO (YES, NO) Use COBOL or PL/1 layout to format display ===> YES (COB, PLI, YES, NO)

COPY LIBRARY OR STORED SUBSET SELECTION CRITERIA LIBRARY ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY LIST: MEMBER ===> DISPLAY ===> YES (YES, NO)

OTHER DATASET ===> 'INO.TRG.DEM.CPYBOOKS(ALLCUST)'

Use either OTHER DATASET, CONC. LIBRARY LIST or the four ISPF fields to define the copybook

INSYNC HANDBOOK

Page 31: In Oh

I’ve finished viewing the data: what now? 31

When evaluating the various Library fields, InSync looks for an entry first in Other Dataset, then in Concatenated Library List, then finally in the ISPF fields.

If you type NO for Use COBOL or PL/I layout to format display then the data is displayed in unformatted mode. To apply formatting at this stage, without returning to the Dataset Specification panel, use the FORMAT command to present the Copy Library panel:

The fields on this panel are evaluated in exactly the same way as the equivalent fields on the Dataset Specification panel. If you leave the Formatted Display Language field empty, InSync inspects the copybook and attempts to deduce whether it’s written in COBOL or PL/I. You can tell InSync which language applies by typing C[OB] or P[LI].

Press Enter. The record you were previously viewing is redisplayed, now in formatted mode.

I’ve finished viewing the data: what now?Use the END or CANCEL commands (in Browse, they do the same thing), or press PF3:

1 to return from browsing the data to the Dataset Specification panel,

2 to return from there to the Primary Options menu, and

3 to exit completely from InSync.

For an even faster response, type NO in the Display field. InSync presents the first record immediately, omitting the display of your personal list of PDS libraries.

InSync ---------------------- FORMAT Copy Library ---------------------- InSync COMMAND ===>

COPY LIBRARY: ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY LIST: MEMBER ===> DISPLAY ===> YES (YES, NO)

OTHER DATASET ===> 'INO.TRG.DEM.CPYBOOKS(ALLCUST)'

Formatted Display Language ===> COB (Blank, Cob or Pli)

INSYNC HANDBOOK

Page 32: In Oh

CHAPTER 2 ■ Getting started ■ Did you know?32

Did you know? ■ BROWSE displays the records in a specified dataset.■ Optionally, InSync provides a formatted display of the data if you

provide the name of a COBOL or PL/I copybook. Otherwise, the data is presented in unformatted, character-based representation, without any indication of individual fields.

■ You can specify a pattern using “%” or “*”, and then select the required item from the list that’s presented, when selecting a dataset or copybook.

■ Use FORMAT OFF to switch from a formatted to an unformatted display, FORMAT ON to reapply the formatting. Use FORMAT on its own if you want to specify the name of a different COBOL or PL/I copybook.

■ Use FS or FS ON to invoke full-screen display, showing multiple records in unformatted mode.

■ In a formatted display, use TFORMAT or TFORMAT ON to show multiple records in formatted mode.

■ In an unformatted display, use HEX or HEX ON to show hexadecimal values as well as characters.

■ Use PREVIOUS and NEXT in single-record displays to scroll between records; use UP and DOWN for the same thing in multi-record displays.

■ Use UP and DOWN in single-record displays to scroll within a record; use PREVIOUS and NEXT for the same thing in multi-record displays.

■ Use END (PF3) when you’ve finished browsing.

INSYNC HANDBOOK

Page 33: In Oh

33

CHAPTER 3

Chapter 3 Controlling what’s displayed

The previous chapter talked about the four basic display modes: formatted/unformatted and single-record/multi-record. InSync offers you several ways of fine-tuning the amount of data that’s displayed, and the way in which it is presented. See:■ ‘What are “subset selection criteria”?’ on page 34■ ‘Can I suppress some of the fields?’ on page 41■ ‘Can I search for specific values?’ on page 44■ ‘What other parameters can I adjust?’ on page 45

INSYNC HANDBOOK

Page 34: In Oh

CHAPTER 3 ■ Controlling what’s displayed ■ What are “subset selection criteria”?34

What are “subset selection criteria”?You don’t necessarily need to display all of the records in a dataset: you can choose to work with only a subset. One way is to sample the data numerically – for example, viewing every tenth record – but the more usual approach is to select records based on their contents. That is, you select for display only those records where one or more of the fields contain values that you specify.

You use these fields on the Dataset Specification panel:

Press Enter. The Subset Selection Criteria panel appears:

Use of a subset causes the selected records to be copied into temporary storage, causing a slight performance degradation compared with browsing the complete dataset in place.

display -BROWSE

CARSdataset all cars

display -BROWSE

CARSdataset FORD cars

only

Subset of CARS datasetwhere MANF field is 'FORD'

InSync ----------------- BROWSE - Dataset Specification ---------------- InSync COMMAND ===>

DATA FILE: DATASET NAME ===> 'INO.TRG.DEM.CUST.KSDS' VOLUME SERIAL ===> (If not cataloged)

Use subset selection criteria ===> YES (YES, NO) Use existing subset selection criteria ===> NO (YES, NO) Use COBOL or PL/1 layout to format display ===> YES (COB, PLI, YES, NO)

COPY LIBRARY OR STORED SUBSET SELECTION CRITERIA LIBRARY ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY LIST: MEMBER ===> DISPLAY ===> YES (YES, NO)

OTHER DATASET ===> 'INO.TRG.DEM.CPYBOOKS(ALLCUST)'

Type YES and NO to define new criteria

INSYNC HANDBOOK

Page 35: In Oh

What are “subset selection criteria”? 35

If you don’t want to sample the data numerically, leave the first three fields at their defaults values of zero. Type YES for Display Save Subset Selection panel; that panel will give you an opportunity to save your settings for later reuse. Below those fields is a representation of the record format, only without any data values. Use the area to the right of the field details to define the criteria by which records are to be selected. For example, to select only those records where CUSTNO is greater than 999:

You can specify compound conditions applied to a field. To do so, you first need to insert a continuation line after the field in question, using the I line command:

Press Enter. The panel is redisplayed with the addition of an AND keyword following the existing condition:

InSync SUBSET SELECTION - INO.TRG.DEM.CUST.KSDS ------------------------------- COMMAND ===> SCROLL ===> PAGE

Number of records to skip before sample ===> 0 (Default = 0) Number of records per sample ===> 0 (Default = 0, ALL) Maximum number of records to be selected ===> 0 (Default = 0, ALL) Display Save Subset Selection criteria panel ===> YES (YES, NO)

Enter record selection criteria - CAPS OFF

C LVL FIELD NAME FORMAT BOOL CN DATA ********************************** TOP OF DATA ******************************** 01 DEALER G 05 CUSTNO Z 4 05 LOCATN C 3 05 STDATE Z 6 05 NAME C 15 05 ADDRESS1 C 15 05 ADDRESS2 C 15 05 ADDRESS3 C 15

********************************* BOTTOM OF DATA ******************************

Use these values to create a subset of records by numeric sampling

Use this area to create a subset of records by testing values in the records

C LVL FIELD NAME FORMAT BOOL CN DATA ********************************** TOP OF DATA ******************************** 01 DEALER G 05 CUSTNO Z 4 GT 999 05 LOCATN C 3 05 STDATE Z 6 05 NAME C 15 05 ADDRESS1 C 15 05 ADDRESS2 C 15 05 ADDRESS3 C 15

********************************* BOTTOM OF DATA ******************************

The Condition can be EQ, NE, GT, LT, GE or LE. For a character field, you can also use CO (contains)

C LVL FIELD NAME FORMAT BOOL CN DATA ********************************** TOP OF DATA ******************************** 01 DEALER G

I 05 CUSTNO Z 4 GT 999 05 LOCATN C 3 05 STDATE Z 6 05 NAME C 15 05 ADDRESS1 C 15 05 ADDRESS2 C 15 05 ADDRESS3 C 15

********************************* BOTTOM OF DATA ******************************

Use the I line command to add a line, also D to delete and R to replicate (copy)

INSYNC HANDBOOK

Page 36: In Oh

CHAPTER 3 ■ Controlling what’s displayed ■ What are “subset selection criteria”?36

Type the remainder of the condition after the AND keyword:

If appropriate, you can overtype the AND with an OR:

In addition to conditions applied to a single field, you can also specify compound conditions linking two or more different fields. For example:

Press Enter. The panel is redisplayed with the addition of an AND keyword linking the two conditions:

C LVL FIELD NAME FORMAT BOOL CN DATA ********************************** TOP OF DATA ******************************** 01 DEALER G 05 CUSTNO Z 4 GT 999

AND 05 LOCATN C 3 05 STDATE Z 6 05 NAME C 15 05 ADDRESS1 C 15 05 ADDRESS2 C 15 05 ADDRESS3 C 15

********************************* BOTTOM OF DATA ******************************

C LVL FIELD NAME FORMAT BOOL CN DATA ********************************** TOP OF DATA ******************************** 01 DEALER G 05 CUSTNO Z 4 GT 999

AND LE 9999 05 LOCATN C 3 05 STDATE Z 6 05 NAME C 15 05 ADDRESS1 C 15 05 ADDRESS2 C 15 05 ADDRESS3 C 15

********************************* BOTTOM OF DATA ******************************

C LVL FIELD NAME FORMAT BOOL CN DATA ********************************** TOP OF DATA ******************************** 01 DEALER G 05 CUSTNO Z 4 GT 999

OR EQ 1 05 LOCATN C 3 05 STDATE Z 6 05 NAME C 15 05 ADDRESS1 C 15 05 ADDRESS2 C 15 05 ADDRESS3 C 15

********************************* BOTTOM OF DATA ******************************

C LVL FIELD NAME FORMAT BOOL CN DATA ********************************** TOP OF DATA ******************************** 01 DEALER G 05 CUSTNO Z 4 GT 999

AND LE 9999 05 LOCATN C 3 05 STDATE Z 6 05 NAME C 15 CO SMITH 05 ADDRESS1 C 15 05 ADDRESS2 C 15 05 ADDRESS3 C 15

********************************* BOTTOM OF DATA ******************************

The required value can be a number, an unquoted character string, or a quoted hex value X'...'

INSYNC HANDBOOK

Page 37: In Oh

What are “subset selection criteria”? 37

Use the same technique to specify an OR condition on the second field. For example, to select only those records where NAME contains “SMITH” or “SMYTH” and CUSTNO is between 1000 and 9999:

When your subset selection criteria are complete – and if you typed YES for Display Save Subset Selection panel a couple of pages back – you have an opportunity to save them:

If you press Enter without changing anything, the criteria you have defined are used to select the records for display, and then discarded. If you think you may require to browse or edit the same subset of records in the future, you can save the selection criteria in a dataset.

C LVL FIELD NAME FORMAT BOOL CN DATA ********************************** TOP OF DATA ******************************** 01 DEALER G 05 CUSTNO Z 4 GT 999

AND LE 9999 05 LOCATN C 3 05 STDATE Z 6

I 05 NAME C 15 AND CO SMITH 05 ADDRESS1 C 15 05 ADDRESS2 C 15 05 ADDRESS3 C 15

********************************* BOTTOM OF DATA ******************************

AND/OR on same line as a fieldname links conditions on two fields. AND/OR below a fieldname links conditions on that field

C LVL FIELD NAME FORMAT BOOL CN DATA ********************************** TOP OF DATA ******************************** 01 DEALER G 05 CUSTNO Z 4 GT 999

AND LE 9999 05 LOCATN C 3 05 STDATE Z 6 05 NAME C 15 AND CO SMITH

OR CO SMYTH 05 ADDRESS1 C 15 05 ADDRESS2 C 15 05 ADDRESS3 C 15

********************************* BOTTOM OF DATA ******************************

AND/OR on a field binds more tightly than AND/OR between fields. Then, multiple AND/OR are evaluated in order from top to bottom

InSync ----------------- Save Subset Selection criteria ---------------- InSync COMMAND ===>

Do you wish to save subset selection criteria ===> NO (YES, NO)

Subset search description ===> Save description in directory ===> YES (YES, NO)

ISPF SUBSET SELECTION CRITERIA LIBRARY: PROJECT ===> GROUP ===> TYPE ===> MEMBER ===>

OTHER SUBSET SELECTION CRITERIA LIBRARY: DATASET NAME ===>

LIBRARY OPTIONS: Replace like named members ===> YES (YES, NO)

For temporary criteria, not worth saving, you could have bypassed this panel by typing NO for Display Save Subset Selection panel.

INSYNC HANDBOOK

Page 38: In Oh

CHAPTER 3 ■ Controlling what’s displayed ■ What are “subset selection criteria”?38

Type YES for Save subset selection criteria, provide a suitable Subset search description, and type within single quotes '...' the name of a dataset to hold the saved information:

When evaluating the various Library fields, InSync looks for an entry first in Other Dataset, then in the ISPF fields.

Type YES for Replace like named members if you wish to overwrite a previously-saved set of criteria. Type YES for Save description in directory to replace PDS member statistics in the library directory by the Subset search description that you’ve specified (this will then be shown on InSync member list displays).

After the selection criteria have been saved, they are used to select the records for display.

How do I re-use my saved subset selection criteria?On the Dataset Specification panel, use these fields to display records selected on the basis of saved subset selection criteria:

InSync ----------------- Save Subset Selection criteria ---------------- InSync COMMAND ===>

Do you wish to save subset selection criteria ===> YES (YES, NO)

Subset search description ===> DEALERS 1000-9999 NAMED SMITH Save description in directory ===> YES (YES, NO)

ISPF SUBSET SELECTION CRITERIA LIBRARY: PROJECT ===> GROUP ===> TYPE ===> MEMBER ===>

OTHER SUBSET SELECTION CRITERIA LIBRARY: DATASET NAME ===> 'INO.TRG.DEM.CRITLIB(SEL1)'

LIBRARY OPTIONS: Replace like named members ===> YES (YES, NO)

Use either OTHER DATASET or the four ISPF fields to define the dataset used to hold them

This is where you finally choose to save the selection criteria

InSync ----------------- BROWSE - Dataset Specification ---------------- InSync COMMAND ===>

DATA FILE: DATASET NAME ===> 'INO.TRG.DEM.CUST.KSDS' VOLUME SERIAL ===> (If not cataloged)

Use subset selection criteria ===> YES (YES, NO) Use existing subset selection criteria ===> YES (YES, NO) Use COBOL or PL/1 layout to format display ===> YES (COB, PLI, YES, NO)

COPY LIBRARY OR STORED SUBSET SELECTION CRITERIA LIBRARY ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY LIST: MEMBER ===> DISPLAY ===> YES (YES, NO)

OTHER DATASET ===> 'INO.TRG.DEM.CRITLIB(SEL1)'

Type YES and YES to re-use existing criteria

Use either OTHER DATASET, CONC. LIBRARY LIST or the four ISPF fields to define the saved criteria dataset

Formatting is controlled by the saved criteria, so this value is ignored

This is the name of the dataset to be viewed

INSYNC HANDBOOK

Page 39: In Oh

What are “subset selection criteria”? 39

When evaluating the various Library fields, InSync provides the same mechanisms as for a copy library – see ‘How exactly do I specify my record layout?’ on page 30.

You can use the same saved criteria to view any dataset whose records match the defined selection conditions.

Can I review my current criteria if I didn’t save them?The SELECT command terminates the current Browse session and redisplays the Subset Selection Criteria panel.

Can I use subset selection criteria in unformatted mode?Yes: you use these fields on the Dataset Specification panel:

Press Enter. The Subset Selection Criteria panel appears:

InSync ----------------- BROWSE - Dataset Specification ---------------- InSync COMMAND ===>

DATA FILE: DATASET NAME ===> 'INO.TRG.DEM.CUST.KSDS' VOLUME SERIAL ===> (If not cataloged)

Use subset selection criteria ===> YES (YES, NO) Use existing subset selection criteria ===> NO (YES, NO) Use COBOL or PL/1 layout to format display ===> NO (COB, PLI, YES, NO)

COPY LIBRARY OR STORED SUBSET SELECTION CRITERIA LIBRARY ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY LIST: MEMBER ===> DISPLAY ===> YES (YES, NO)

OTHER DATASET ===> 'INO.TRG.DEM.CRITLIB(SEL1)'

Type YES and NO to define new criteria

InSync SUBSET SELECTION - INO.TRG.DEM.CUST.KSDS ------------ Row 1 to 10 of 15 COMMAND ===> SCROLL ===> PAGE

Number of records to skip before sample ===> 0 (Default = 0) Number of records per sample ===> 0 (Default = 0, ALL) Maximum number of records to be selected ===> 0 (Default = 0, ALL) Display Save Subset Selection criteria panel ===> YES (YES, NO)

Enter record selection criteria - CAPS OFF

1 2 3 4 5 C POSN LL CND 12345678901234567890123456789012345678901234567890 AND/OR

CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND

Use these values to create a subset of records by numeric sampling

Use this area to create a subset of records by testing values in the records

INSYNC HANDBOOK

Page 40: In Oh

CHAPTER 3 ■ Controlling what’s displayed ■ What are “subset selection criteria”?40

Because you’re working in unformatted mode, you can specify ‘fields’ only by their position and length. For example, to select only those records where the fifteen-character field starting at position 59 equals “Yorkshire”:

You can specify compound conditions, involving more than one field. For example:

Again, you can overtype an AND with an OR. In fact, the whole process is similar to that already described in formatted mode, except that you need to have the data’s position and hexadecimal storage representation at your fingertips.

Hexadecimal display is available for dealing with unprintable characters – use the HEX ON command:

If you prefer, you can alternatively display the hexadecimal values as a continuous sequence, flowing over two lines, by using the HEX DATA command:

1 2 3 4 5 C POSN LL CND 12345678901234567890123456789012345678901234567890 AND/OR

59 15 EQ CHAR Yorkshire AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND

Use ? here to locate the value anywhere in the record

1 2 3 4 5 C POSN LL CND 12345678901234567890123456789012345678901234567890 AND/OR

59 15 EQ CHAR Yorkshire AND 1 4 GE CHAR 5000 AND

CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND

C POSN LL CND 12345678901234567890123456789012345678901234567890 AND/OR

59 15 EQ CHAR Yorkshire AND ZONE E999A8898444444 NUMR 869228995000000

+--------+---------+---------+---------+---------+ CHAR AND ZONE NUMR

+--------+---------+---------+---------+---------+

INSYNC HANDBOOK

Page 41: In Oh

Can I suppress some of the fields? 41

As before, use HEX OFF to revert to the character-only representation.

In character mode, the default format is CHAR but you can overtype it with PACK (or P), BIN (or B) or HEX (or H). Enter the data as decimal numbers in the case of P or B, or hex digits (an even number of them) in the case of H. In the case of P and B, a sign may also be keyed but any decimal points are ignored.

Can I suppress some of the fields?Just as you don’t necessarily need to display all of the records in a dataset, you can also choose not to display all of the fields in those records. In formatted mode, use the EXCLUDE command to display the Field Exclusion panel:

You can mark fields which you wish to exclude from display:■ individually, using the X line command alongside each field to

exclude, or■ in a block, using the XX line command alongside the first and the

last fields in a block.

For example:

1 2 3 4 5 C POSN LL CND 12345678901234567890123456789012345678901234567890 AND/OR

59 15 EQ CHAR Yorkshire AND HEX E8969992A288899985404040404040 HEX

+--------+---------+---------+---------+---------+ CHAR AND HEX HEX

+--------+---------+---------+---------+---------+

ENHANCED in 5.300Can now specify packed/binary numbers in unformatted Search and subset selection panels

InSync EXCLUDE - INO.TRG.DEM.CUST.KSDS ---------------------------------------- COMMAND ===> SCROLL ===> PAGE

Indicate "X" or "XX" fields to be excluded from BROWSE option

SEQ LVL FIELD NAME FORMAT START LENGTH ********************************** TOP OF DATA ********************************

1 01 DEALER G 1 73 2 05 CUSTNO Z 4 1 4 3 05 LOCATN C 3 5 3 4 05 STDATE Z 6 8 6 5 05 NAME C 15 14 15 6 05 ADDRESS1 C 15 29 15 7 05 ADDRESS2 C 15 44 15 8 05 ADDRESS3 C 15 59 15

********************************* BOTTOM OF DATA ******************************

Use this area to mark excluded fields

If you wish to view only a few of the fields, it might be quicker to mark those fields which you wish to include; the I and II line commands do this. Use either the X method or the I method, not both together.

INSYNC HANDBOOK

Page 42: In Oh

CHAPTER 3 ■ Controlling what’s displayed ■ Can I suppress some of the fields?42

Press Enter. The record you were previously viewing is redisplayed, without the selected fields:

InSync provides a warning message to show where fields have been excluded from display. You can suppress those warning by using the SHADOW OFF command:

Use SHADOW ON to reinstate the warning messages. Use EXCLUDE OFF to restore full field display, and EXCLUDE ON to return to the partial display.

InSync EXCLUDE - INO.TRG.DEM.CUST.KSDS ---------------------------------------- COMMAND ===> SCROLL ===> PAGE

Indicate "X" or "XX" fields to be excluded from BROWSE option

SEQ LVL FIELD NAME FORMAT START LENGTH ********************************** TOP OF DATA ********************************

1 01 DEALER G 1 73 2 05 CUSTNO Z 4 1 4

x 3 05 LOCATN C 3 5 3 4 05 STDATE Z 6 8 6 5 05 NAME C 15 14 15

xx 6 05 ADDRESS1 C 15 29 15 7 05 ADDRESS2 C 15 44 15

xx 8 05 ADDRESS3 C 15 59 15 ********************************* BOTTOM OF DATA ******************************

Exclude a block of three fields

Exclude an individual field

InSync BROWSE - INO.TRG.DEM.CUST.KSDS ----------------------------------------- COMMAND ===> SCROLL ===> PAGE

KSDS RKP 0 KEYLEN 4 Data length 80 - CAPS OFF

LVL FIELD NAME FORMAT POS DATA ********************************** TOP OF DATA ******************************** 01 DEALER G 1 05 CUSTNO Z 4 1 0101

. . . . . . . . . . . FIELDS 3 - 3 NOT DISPLAYED . . . . . . . . . . . 05 STDATE Z 6 8 951002 05 NAME C 15 14 Andrew Cronk

. . . . . . . . . . . FIELDS 6 - 8 NOT DISPLAYED . . . . . . . . . . . ********************************* BOTTOM OF DATA ******************************

Warning messages about excluded fields

InSync BROWSE - INO.TRG.DEM.CUST.KSDS ----------------------------- SHADOW OFF COMMAND ===> SCROLL ===> PAGE

KSDS RKP 0 KEYLEN 4 Data length 80 - CAPS OFF

LVL FIELD NAME FORMAT POS DATA ********************************** TOP OF DATA ******************************** 01 DEALER G 1 05 CUSTNO Z 4 1 0101 05 STDATE Z 6 8 951002 05 NAME C 15 14 Andrew Cronk

********************************* BOTTOM OF DATA ******************************

INSYNC HANDBOOK

Page 43: In Oh

Can I suppress some of the fields? 43

Can I exclude fields from a multi-record display?Yes, the EXCLUDE command works in tabular format displays:

In this mode, there are no messages to warn about excluded fields; you can spot them by the gaps in the displayed storage positions (for example, the LOCATN field occupying positions 5-7 in the display above).

Can I exclude records from a multi-record display?Selection criteria enable you to display a subset of records, based on testing of their field values. Having done that, you might wish to mark additional records for exclusion from display (typically so that you can focus more easily on those remaining). The bad news is: you can’t do that in a Browse session. And the good news: you can do it by starting an Edit session and specifying Edit in READ-ONLY mode – see ‘I guess I start from the Primary Options menu?’ on page 50.

Can I keep a field always visible in a multi-record display?Use the FREEZE ON fieldname command in a tabular format displays; that column remains on-screen as you scroll LEFT or RIGHT across the data in the records.

InSync BROWSE - INO.TRG.DEM.CUST.KSDS ---------------------------- COLS 1 - 80 COMMAND ===> SCROLL ===> PAGE

KSDS RKP 0 KEYLEN 4 LRECL 80 - CAPS OFF CUSTNO STDATE NAME Z(4) (1-4) Z(6) (8-13) C(15) (14-28) -KEY------ ----------- --------------- ********************************* TOP OF DATA ********************************* 0101 951002 Andrew Cronk 0103 901212 Barons BMW 0108 900417 Loomies Ltd. 0110 950805 Tylor's 0112 890401 Coombs Cars 0113 910301 Coopers BMW 0114 910301 Coopers RJ 0120 950805 Bernstein BMW 0123 900202 Mitchell Motor 0126 950805 S. Murhpy 0132 950805 Wheathley 0139 950805 J.Honeywell 0144 950805 Williams 0150 950805 Malton Motors 0155 950805 Dunedin Cars 0158 950805 Holland Park 0160 950805 Mill Garages

INSYNC HANDBOOK

Page 44: In Oh

CHAPTER 3 ■ Controlling what’s displayed ■ Can I search for specific values?44

Can I search for specific values?To locate records in the current dataset based on the contents of one or more fields, use the FIND (or FIND NEXT) command; one of the Search Criteria panels appears. In single- or multi record formatted mode:

or in single-record unformatted mode:

You use these panels in exactly the same way as the Subset Selection Criteria panels – see ‘What are “subset selection criteria”?’ on page 34. When you press Enter, InSync displays the next record which matches your specified search criteria. Use the RFIND (Repeat FIND) command to step through the dataset, finding each matching record in turn.

To search backwards from your current position, use FIND PREV. To search forwards from the start of the dataset, or backwards from the end, use FIND FIRST or FIND LAST respectively.

InSync FIND - INO.TRG.DEM.CUST.KSDS ------------------------------------------- COMMAND ===> SCROLL ===> PAGE

Enter search criteria for FIND option - CAPS OFF

C LVL FIELD NAME FORMAT BOOL CN DATA ********************************** TOP OF DATA ******************************** 01 DEALER G 05 CUSTNO Z 4 05 LOCATN C 3 05 STDATE Z 6 05 NAME C 15 05 ADDRESS1 C 15 05 ADDRESS2 C 15 05 ADDRESS3 C 15

********************************* BOTTOM OF DATA ******************************

InSync FIND - INO.TRG.DEM.CUST.KSDS ------------------------ Row 1 to 15 of 15 COMMAND ===> SCROLL ===> PAGE

Enter search criteria for FIND option - CAPS OFF

1 2 3 4 5 C POSN LL CND 12345678901234567890123456789012345678901234567890 AND/OR

CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND CHAR AND

******************************* Bottom of data *******************************

INSYNC HANDBOOK

Page 45: In Oh

What other parameters can I adjust? 45

Can’t I just search for a string of characters?Yes, of course.

The string can be an unquoted character string, a quoted character string, or a quoted hex value X'...'

What other parameters can I adjust?Select the PARMS option from the InSync Primary Options menu, and then the PROFILE option; the User Profile panel appears:

ENHANCED in 5.300Can use FINDSTR for number searches

To display thisIn full-screen mode, use

In all other modes, use

the next occurrence of string

FIND string FINDSTR string

the previous occurrence of string

FIND string PREV FINDSTR string PREV

the next occurrence of string in a specified field

— FINDSTR string field

the previous occurrence of string in a specified field

— FINDSTR string field PREV

the first occurrence of string

FIND string FIRST —

the last occurrence of string

FIND string LAST —

a packed number — FINDSTR P’n’FINDSTR P’+n’FINDSTR P’-n’

a binary number — FINDSTR B’n’FINDSTR B’+n’FINDSTR B’-n’

ENHANCED in 5.300U’...’ format of FINDSTR for case-insensitive search

FIND searches are case-sensitive unless you’ve used CAPS ON. FINDSTR searches are case-sensitive unless you’ve used the U’...’ format of the command.

INSYNC HANDBOOK

Page 46: In Oh

CHAPTER 3 ■ Controlling what’s displayed ■ What other parameters can I adjust?46

These are your personal parameter settings, preserved from one InSync session to the next.

The following settings apply to those parts of InSync which you’ve encountered so far.

NEW in 5.300Profile option to suppress positive signs

You can also use the PROFILE command to display this panel while in the middle of a Browse or Edit session, but you can’t then change any of the settings. However, you can alter some settings using equivalent ON|OFF commands.

Parameter Effect when YES Equivalent command

Prefix dataset names

Dataset names are automatically prefixed with your TSO prefix, unless enclosed in single quotes '...'

Indent formatted displays

Fieldnames in formatted displays are indented for each increase in level number

INDENT ON

Display record descriptor word

The four-byte RDW value is included when displaying variable-length sequential records

RDW ON

Display 88 level values

COBOL 88 levels and their associated data are included in formatted displays

SHOW88 ON

Hold vertical scroll position

The display is held at the same field position when scrolling between records

VERTHOLD ON

Hold horizontal scroll position

The display is held at the same field position when switching between single- and multi-record displays

HORIHOLD ON

InSync -------------------------- User Profile ------------------------- InSync COMMAND ===>

Y/N Y/N Prefix dataset names ===> YES Always log EDIT changes ===> NO Indent formatted displays ===> YES Always write audit report ===> NO Display record descriptor word ===> NO Sound terminal alarm ===> YES Display 88 level values ===> NO EDIT statistics on ===> NO Hold vertical scroll position ===> NO EDIT exit confirmation ===> NO Hold horizontal scroll position ===> NO Force TFMT (formatted) ===> NO Force upper case on data input ===> NO Force FS (unformatted) ===> NO Display leading zeros ===> NO Return to PDS member list ===> NO Assume positive signed numerics ===> YES

VSAM data component node ===> DATA VSAM index component node ===> INDEX Work dataset node 1 ===> (default TSO prefix) Work dataset node 2 ===> (default TSO userid) Maximum Dataspace size ===> 0100 (Megabytes) Maximum Dataset mask list ===> 0100

INSYNC HANDBOOK

Page 47: In Oh

What other parameters can I adjust? 47

Some other commands which control the way data is displayed are:■ EXPAND to display COBOL OCCURS groups (or PL/I arrays); use

COMPRESS to revert to the previous display.■ COLWIDTH to fine-tune the column widths in a tabular display.■ SCROLL RIGHT to transfer the scrolling action of the LEFT/RIGHT

keys (PF10/PF11) from the left-hand table to the right-hand table in, for example, the DB2 Browse Table/View Selection panel.

You can use LAYOUT to display the currently-active COBOL or PL/I record layout; use END to revert to the previous display. The layout display is a convenient way of discovering field sequence numbers and field lengths (including group fields). See also ‘How do I display or print my record layout?’ on page 78.

Force upper case on data input

Alphabetic text input is automatically folded to upper-case

CAPS ON

Display leading zeros

Binary and packed decimal numbers are displayed with leading zeros

Assume positive signed numerics

The sign is only displayed for signed numbers when it is negative

Sound terminal alarm

Error message display is accompanied by an audible alarm

Force TFMT (formatted)

A formatted Browse (or Edit) session automatically starts in multi-record mode

Force FS (unformatted)

An unformatted Browse (or Edit) session automatically starts in multi-record mode

Return to PDS member list

After a Browse (or Edit) session of a PDS member selected from a list, that list is redisplayed

Parameter Effect when YES Equivalent command

NEW in 5.300SCROLL RIGHT command

INSYNC HANDBOOK

Page 48: In Oh

CHAPTER 3 ■ Controlling what’s displayed ■ Did you know?48

Did you know? ■ Subset selection criteria enable you to work with a selected subset

of the records in a dataset, rather than with all records. You can make the selection criteria as simple or as complex as you like.

■ You can use the criteria once only, or you can save them in a dataset for reuse whenever necessary.

■ During a Browse (or Edit) session, you can use SELECT to revisit and refine your current selection criteria.

■ In formatted mode, you can use EXCLUDE to mark fields for exclusion from display.

■ Use FIND and FINDSTR to locate records for display based on their contents.

■ From the Primary Options menu, select PARMS and then PROFILE to view a range of personal parameter settings, which are preserved from one InSync session to the next.

INSYNC HANDBOOK

Page 49: In Oh

49

CHAPTER 4

Chapter 4 Editing records in a dataset

In this chapter, we explain how you can edit dataset records, using panels very similar to those of the BROWSE option. See:■ ‘I guess I start from the Primary Options menu?’ on page 50■ ‘What editing operations are available?’ on page 56

INSYNC HANDBOOK

Page 50: In Oh

CHAPTER 4 ■ Editing records in a dataset ■ I guess I start from the Primary Options menu?50

I guess I start from the Primary Options menu?That’s right. Select the EDIT option from the InSync Primary Options menu; the Dataset Specification panel appears:

Most of the fields on the panel should be familiar from the BROWSE option; these are the additional controls (see ‘Supposing I make a mistake...?’ on page 51 and ‘Why is READ-ONLY editing useful?’ on page 55 for more information on their use):

InSync ------------------ EDIT - Dataset Specification ----------------- InSync COMMAND ===>

DATASET NAME ===> 'INO.TRG.DEM.CUST.KSDS' VOLUME SERIAL ===> (If not cataloged)

Use subset selection criteria ===> NO (YES, NO) Use existing subset selection criteria ===> NO (YES, NO) Use COBOL or PL/1 layout to format display ===> YES (COB, PLI, YES, NO) Log dataset changes ===> NO (YES, NO) Write audit report ===> NO (YES, NO) Edit in storage VSAM files ===> YES (YES, NO) Edit in storage Sequential (allow I and D) ===> NO (YES, NO) Edit in READ-ONLY mode ===> NO (YES, NO)

COPY LIBRARY OR STORED SUBSET SELECTION CRITERIA LIBRARY ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY LIST: MEMBER ===> DISPLAY ===> YES (YES, NO)

OTHER DATASET ===> 'INO.TRG.DEM.CPYBOOKS(ALLCUST)'

The panel is identical to that for BROWSE apart from these fields

Control Selected Otherwise

Log dataset changes

YES: InSync maintains an internal log of your edits, to support UNDO and failed session recovery.

NO: A log is not generated.

Write audit report

YES: InSync writes before-and-after images of each edited record, to form a human-readable record of your changes.

NO: An audit report is not generated. See ‘What’s the difference between a log and an audit report?’ on page 53.

Edit in storage VSAM files

YES: InSync copies VSAM files (KSDS, RRDS, ESDS and linear datasets) into temporary storage. You can insert and delete records in ESDS clusters only if REUSE=YES.

NO: These file types are edited in place. In ESDS clusters, you can insert records only at the end, and you cannot delete records.

INSYNC HANDBOOK

Page 51: In Oh

I guess I start from the Primary Options menu? 51

Type the name of a dataset to be edited, YES for Use COBOL or PL/I layout to format display, and supply the details of the copybook member, just as you did for Browse.

Press Enter. The first record in the dataset is displayed:

The data is presented in exactly the same manner as during a Browse session (except that a line command area is provided), and you have the same choices of formatted/unformatted and single-record/multi-record displays.

Supposing I make a mistake...?Before describing the various editing commands, we’ll set the scene with some reassurance: InSync tries hard to protect you from corrupting your own data. It does this in two ways:■ by maintaining an internal modification log. This happens when

you type YES for Log dataset changes.■ by creating an in-storage copy of your dataset. This always

happens when you’re using subset selection criteria, and otherwise happens when you type YES for the appropriate Edit in storage question.

Edit in storage Sequential (allow I and D)

YES: InSync copies sequential files, PDS and PDSE members into temporary storage.

NO: These file types are edited in place. You cannot insert or delete records, nor change record lengths.

Edit in READ-ONLY mode

YES: You won’t be able to save your changes – similar to ISPF VIEW and useful if you wish to experiment on a dataset without risk of updating it.

NO: This is a normal Edit session – SAVE is supported.

Control Selected Otherwise

InSync EDIT - INO.TRG.DEM.CUST.KSDS ------------------------- Start of dataset COMMAND ===> SCROLL ===> PAGE

KSDS RKP 0 KEYLEN 4 Data length 80 - CAPS OFF WARNING - data length (80) > COPY layout length (73)

C LVL FIELD NAME FORMAT POS DATA ********************************** TOP OF DATA ******************************** 01 DEALER G 1 05 CUSTNO Z 4 1 0101 05 LOCATN C 3 5 BER 05 STDATE Z 6 8 951002 05 NAME C 15 14 Andrew Cronk 05 ADDRESS1 C 15 29 The Mount 05 ADDRESS2 C 15 44 Finchampstead 05 ADDRESS3 C 15 59 Berkshire

********************************* BOTTOM OF DATA ******************************

You can enter line commands in this area

INSYNC HANDBOOK

Page 52: In Oh

CHAPTER 4 ■ Editing records in a dataset ■ I guess I start from the Primary Options menu?52

When you edit in-storage, InSync updates your original dataset on disk only when you use SAVE (writing out your changes up to that point without ending the Edit session), or END to terminate the session. This enables you to UNDO your changes, back to the last SAVE checkpoint, at any time.

Even if you’re editing a dataset directly, you can still UNDO your changes, back to the last SAVE checkpoint, if you’ve asked for a log file.

If you’re editing directly without a log file, UNDO can reverse only your changes to the currently displayed record.

The ability to UNDO a set of changes, back to the last SAVE, is available unless you type NO for Log dataset changes and NO for Edit in storage and you’re not using subset selection criteria.

If UNDO isn’t available, InSync displays a warning message at the start of the session.

The CANCEL command has the same effect as UNDO – reversing changes back to the last SAVE checkpoint, or to the currently displayed record – and then in addition ends the Edit session.

EDIT -CARSdataset

CARSdataset

EDIT -

Subset of CARS datasetwhere MANF field is 'FORD'

all cars

FORD carsonly

CARSdataset

EDIT -all cars

Edit directly

Edit in-storage

Edit subset in-storage

INSYNC HANDBOOK

Page 53: In Oh

I guess I start from the Primary Options menu? 53

What if the system crashes in mid-edit?Even the best-run installations sometimes let you down. After an abend:■ If you were editing directly, the dataset will be as it was

immediately prior to the abend.■ If you were editing in-storage using a log file, the dataset will be as

it was at the last SAVE, and InSync offers you the chance to re-apply any changes since that point.

■ If you were editing in-storage without a log file, the dataset will be as it was at the last SAVE, and any changes since that point will have been lost.

What’s the difference between a log and an audit report?Both are datasets containing details of your edit changes. A log dataset:■ is created when you type YES for Log dataset changes on the

Dataset Specification panel, or is mandatory if you type YES for Always log Edit changes on the Session Profile panel – see ‘What other parameters can I adjust?’ on page 45.

■ has a default name of userid.userid.Dyymmdd.Thhmmss.LOG, and is allocated by this panel:

You can change the work dataset node names on the User Profile panel – see ‘What other parameters can I adjust?’ on page 45.

■ is read by InSync when you use UNDO to reverse all changes since your last SAVE command (or the start of the Edit session), and is deleted at the end of the session.

Therefore, for maximum safety plus flexibility:We recommend that you always work with logging enabled.We recommend that you edit in-storage unless your datasets are large.

InSync ------------------- Log Dataset Allocation ----------------- InSync COMMAND ===>

LOG DATASET ALLOCATION: Primary number of records ===> 100 Secondary number of records ===> 200

Data class ===> Management class ===> Storage class ===>

If you specify that you always want logging, the Log File Allocation panel is bypassed.

INSYNC HANDBOOK

Page 54: In Oh

CHAPTER 4 ■ Editing records in a dataset ■ I guess I start from the Primary Options menu?54

In contrast, an audit dataset:■ is created when you type YES for Write audit report on the

Dataset Specification panel, or is mandatory if you type YES for Always write audit report on the Session Profile panel – see ‘What other parameters can I adjust?’ on page 45.

■ has a default name of userid.userid.Dyymmdd.Thhmmss.LIST, and is allocated by this panel:

You can specify the DSNAME of a permanent dataset if you wish to preserve the audit report.

■ is never read by InSync, and at the end of the session can be automatically printed, retained or deleted.

InSync ------------------ Audit Dataset Allocation ---------------- InSync COMMAND ===>

Lines per page ===> 65 Data class ===> Primary pages ===> 100 Management class ===> Secondary pages ===> 200 Storage class ===>

SYSOUT class ===> * DEST node ===> DEST userid ===>

DSNAME or blank ===> DSNAME disposition ===> OLD (Mod or Old)

Print disposition ===> 1 (Prompt OR 1 - Print and Delete 2 Delete without printing 3 - Print and Keep 4 Keep without printing)

AUDIT PRINT JOB STATEMENTS: ===> //M4JOBN JOB (000),'PROGRAMMER',CLASS=A,MSGCLASS=T ===> ===> ===>

If you specify that you always want auditing, the Audit File Allocation panel is bypassed.

You can set default allocation values for the Log and Audit datasets by selecting PARMS on the Primary Options menu, and then selecting LOG/AUDIT.

INSYNC HANDBOOK

Page 55: In Oh

I guess I start from the Primary Options menu? 55

Why is READ-ONLY editing useful?This operation is more useful than it might at first appear; the trick is to think of it as a Browse operation in which you can manipulate the data you’re viewing. For example, you could use the SORT command to view the records in a different order; the line command area enables you to EXCLUDE records from display, and so on.

To reinforce the similarity to ISPF’s VIEW option, the panel’s “EDIT” title becomes “VIEW” during a READ-ONLY session.

If you try to Edit a dataset to which you don’t have Update permission, InSync automatically starts a READ-ONLY session.

INSYNC HANDBOOK

Page 56: In Oh

CHAPTER 4 ■ Editing records in a dataset ■ What editing operations are available?56

What editing operations are available?All of the expected operations are provided, though the commands sometimes vary depending on your current display mode.

What types of command are supported?InSync supports primary commands and line commands.

A primary command is typed at the COMMAND ===> prompt, and may:■ require one or more parameters typed after the command, or■ display a separate panel for the entry of values, or■ both of these, or■ neither of these.

A line command is typed in the left-hand area alongside a line of data, and may specify an action:■ affecting just that line, or ■ affecting a block of lines. Usually, blocks can be marked in three

ways:

Can I insert new records?Yes, you can – you can type in new records from scratch, and you can copy and modify existing records.

When working with a VSAM keyed file, InSync helps you to maintain file integrity:■ in full-screen display mode, by highlighting the key fields, ■ in tabular display mode, by annotating the column headers.

InSync EDIT - INO.TRG.DEM.CUST.KSDS ------------------------------ COLS 1 - 72 COMMAND ===> SCROLL ===> PAGE

KSDS RKP 0 KEYLEN 4 LRECL 80 - CAPS OFF CUSTNO LOCATN STDATE NAME ADDRESS1 A Z(4) (1-4) C(3) (5-7) Z(6) (8-13) C(15) (14-28) C(15) (29-43) C -KEY------ ---------- ----------- --------------- --------------- -

****** ************************** TOP OF DATA ********************************* 000001 0101 BER 951002 Andrew Cronk The Mount F D 0002 0103 SUR 901212 Barons BMW 21 Farnham Rd F D 0003 0108 NOR 900417 Loomies Ltd. 29 Dorcester Rd N D 0004 0110 DOR 950805 Tylor's 112 Foxrun D 000005 0112 SUR 890401 Coombs Cars 34 Acacia Ave G 000006 0113 BER 910301 Coopers BMW Caversham Park R 000007 0114 SUR 910301 Coopers RJ Riverside T DD 008 0120 MID 950805 Bernstein BMW 9 Turnhill Dr W 000009 0123 SOM 900202 Mitchell Motor 12 Sky Drive Y DD 010 0126 YOR 950805 S. Murhpy Fairgrounds S 000011 0132 YOR 950805 Wheathley Willow Tree Rd D 000012 0139 CES 950805 J.Honeywell 72 Butterfly Rd C 000013 0144 MAN 950805 Williams 29 Oxbow Road O D3 014 0150 YOR 950805 Malton Motors 4 Wheel Drive M 000015 0155 LOT 950805 Dunedin Cars 19 Seafield Rd E 000016 0158 LON 950805 Holland Park Holland Park S 000017 0160 TAY 950805 Mill Garages Ryhope Road S

Mark each line individually

Mark first and last lines in block

Mark first line with total number of lines

INSYNC HANDBOOK

Page 57: In Oh

What editing operations are available? 57

In both modes, InSync copies only as many records as can be displayed at one time, and marks (with “==DUP>” alongside) those records as being duplicates. You should overtype the keys of duplicate records to make them unique before you press Enter; InSync discards records marked as duplicates when scrolling or exiting.

How do I save my changes?The same commands generally work in all display modes.

Notes

1 Unless Log dataset changes is NO and Edit in storage is NO, when changes to the current record only are reversed.

2 Available only in single-record modes.

3 The entry panel has the same appearance as the panels for Browsing and Editing records. Press Enter twice to initiate the action.

4 The select panel has the same appearance as the panels for Subset Selection Criteria and Record Find. Leave the panel blank to process all records in the dataset.

5 The dataset panel enables you the specify the dataset to be copied from, the start record, and the number of records to copy.

6 Use FLIP to toggle the display of excluded/included records. Use RESET to cancel any exclusions.

7 In a KSDS, you insert records by overtyping copies of existing records.

To do this use Notes

commit your changes and end the session

END or

SELECT

commit the changes and continue SAVE

reverse all changes (since last commit) and end the session

CANCEL ➊

reverse all changes (since last commit) and continue

UNDO ➊

reverse changes to current record only

REFRESH ➋

INSYNC HANDBOOK

Page 58: In Oh

CHAPTER 4 ■ Editing records in a dataset ■ What editing operations are available?58

Formatted and unformatted single-record modesCommonly-used primary commands include:

The numbered notes are explained in ‘Notes’ on page 57.

To do this use Notes

change values in a displayed record

overtype the existing values, or

CHANGE → entrypanel → RCHANGE ➌

change values in selected records

CHANGE ALL → selectpanel → entrypanel ➍➌

insert a new record CREATE → entrypanel ➌

insert a copy of the current record

INSERT

insert a specified number of records from another dataset

COPY → datasetpanel ➎

delete the current record

DELETE

delete selected records

DELETE ALL → selectpanel ➍

exclude fields from formatted display

EXCLUDE → selectpanel ➍

INSYNC HANDBOOK

Page 59: In Oh

What editing operations are available? 59

Formatted multi-record mode (TFORMAT)Commonly-used primary commands include:

Commonly-used line commands include:

The numbered notes are explained in ‘Notes’ on page 57.

To do this use Notes

change values in displayed records

overtype the existing values

change values in selected records

CHANGE → selectpanel → entrypanel ➍➌

To do this use Notes

insert a copy of the marked record

R or RR...RR

copy marked records to a new location

C or CC...CC, together with

A (after) or B (before) this record

move marked records to a new location

M or MM...MM, together with

A (after) or B (before) this record

delete marked records

D, DD...DD or Dnumber

exclude marked records from display

X, XX...XX or Xnumber ➏

INSYNC HANDBOOK

Page 60: In Oh

CHAPTER 4 ■ Editing records in a dataset ■ What editing operations are available?60

Unformatted multi-record mode (FS)Commonly-used primary commands include:

Commonly-used line commands include:

The numbered notes are explained in ‘Notes’ on page 57.

To do this use Notes

change values in displayed records

overtype the existing values, or

CHANGE string1 string2 → RCHANGE

CHANGE string1 string2 PREV

CHANGE string1 string2 ALL

insert a specified number of records from another dataset

A (after) or B (before) this record, together with

COPY → datasetpanel

save records to another dataset

C, CC...CC or Cnumber , together with

CREATE → datasetpanel

To do this use Notes

insert a new record (non-KSDS)

I ❼

insert a copy of the marked record

R or RR...RR

copy marked records to a new location

C, CC...CC or Cnumber , together with

A (after) or B (before) this record

move marked records to a new location

M, MM...MM or Mnumber, together with

A (after) or B (before) this record

delete marked records

D, DD...DD or Dnumber

exclude marked records from display

X, XX...XX or Xnumber ➏

INSYNC HANDBOOK

Page 61: In Oh

Did you know? 61

Did you know? ■ Use EDIT to modify the records in a specified dataset. The

interface is very similar to that of BROWSE.■ It’s a good idea to work with an in-storage copy of your data – it

gives you control over how often your changes are committed to disk, and thus makes UNDO easily available. Also, it’s the only way you can insert and delete records in sequential datasets.

■ If you elect to use subset selection criteria, you’ll automatically be working with an in-storage copy.

■ It’s a good idea to have InSync maintain a log file, since that also provides protection against user error (and against the edit process terminating abnormally).

■ Optionally, InSync can maintain an audit trail – a before-and-after image of every changed record.

■ You can combine commands on the InSync command line by separating them with semi-colons: for example, FS ON;HEX ON.

■ Within InSync, you can jump directly to a specific option: for example =1 on the command line takes you to the Browse Dataset Specification panel; =0.4 is the Function Key Specification panel.

■ From ISPF’s 3.4 Dataset List, you can use #B to jump into InSync’s Browse Dataset Specification panel; #E is for Edit, and #P is for Print.

INSYNC HANDBOOK

Page 62: In Oh

CHAPTER 4 ■ Editing records in a dataset ■ Did you know?62

INSYNC HANDBOOK

Page 63: In Oh

63

CHAPTER 5

Chapter 5 Other dataset capabilities

InSync’s fundamental Browse and Edit options are supplemented by a variety of other capabilities for manipulating the contents of your datasets. See:■ ‘Can I just key in a whole set of records?’ on page 64■ ‘How can I create one dataset from another?’ on page 65■ ‘Hardcopy output is probably handled by the PRINT option?’ on

page 73

INSYNC HANDBOOK

Page 64: In Oh

CHAPTER 5 ■ Other dataset capabilities ■ Can I just key in a whole set of records?64

Can I just key in a whole set of records?The EDIT option enables you to insert records into a dataset, but for straightforward data entry you may wish to use a more specialized facility. Select the CREATE option from the InSync Primary Options menu; the Dataset Specification panel appears:

Type the name of a dataset to be edited, and supply the details of the copybook member, just as you did for Browse and Edit. Other optional controls are:

You can:■ create a new dataset and add records to it,■ select an existing dataset and add to its current records, or■ select an existing dataset and replace its current records.

In formatted display mode, InSync validates the new records against the record layout definition.

Press Enter. If you are adding records to an existing dataset, a data entry panel is presented; this has the same appearance as the panels for Browsing and Editing records.

Otherwise, if you are replacing existing records, you are asked for confirmation before they are deleted, and if you are creating a new dataset, you are asked to specify its characteristics:

InSync ----------------- CREATE - Dataset Specification ---------------- InSync COMMAND ===>

OUTPUT DATA FILE: ===> 'INO.TRG.DEM.POLICY3.SEQ'

Add to existing records in dataset ===> YES (YES, NO) (not for existing PDS members)

Number of records to be created ===> 1 Use COBOL or PL/1 layout ===> YES (COB, PLI, YES, NO)

COPY LIBRARY: ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY LIST: MEMBER ===> DISPLAY ===> YES (YES, NO)

OTHER DATASET ===> 'INO.TRG.DEM.PRODCOPY(POLREC)'

If it already exists, its contents can be retained (YES) or deleted (NO)

This is the dataset to be created or extended

Control Selected Otherwise

Add to existing records in dataset

YES: InSync retains any existing records in the output dataset.

NO: InSync deletes any existing records.

Number of records to be created

number: InSync creates number identical records.

One record is created.

INSYNC HANDBOOK

Page 65: In Oh

How can I create one dataset from another? 65

Supply the necessary information, and press Enter to continue.

When you have typed the data values for the first record (or batch of identical records), press Enter to update the dataset; a “What next?” panel is presented.

You can then:■ create further batches of records, using the current data entry

panel fields as a starting point (reset Number of records if necessary, and then press Enter), or

■ terminate the data entry process (by using the END command).

How can I create one dataset from another?In addition to the EDIT and CREATE options, which modify dataset contents under your interactive control, InSync also offers several methods for creating one dataset from the contents of another, according to a pre-defined set of rules. See:■ ‘Can I select records from a dataset?’ on page 66■ ‘Can I rearrange the order of the fields?’ on page 67

See also ‘Are these two datasets the same?’ on page 69

InSync ------------------ Output Dataset Specificatio Dataset not cataloged COMMAND ===>

DATASET NAME: 'INO.TRG.DEM.POLICY3.SEQ'

VOLUME SERIAL ===> (Blank for system default volume) GENERIC UNIT ===> SYSDA (Generic group name) SPACE UNITS ===> (BLKS, TRKS, or CYLS) PRIMARY QUANTITY ===> 0 (In above units) SECONDARY QUANTITY ===> 0 (In above units) RECORD FORMAT ===> F RECORD LENGTH ===> 0 BLOCK SIZE ===> 0

Data class ===> Management class ===> Storage class ===>

InSync -------------------------- File Create -------------- 1 records created COMMAND ===>

To retain current model record values as base for more records enter number of records required and press ENTER.

Press END to return to selection screen.

Number of records to be created ===> 1

The DATEAGE option, which copies a dataset while adjusting date fields forward or backward in time, also falls into this category. Due to its specialized nature, it is not covered in this introduction to InSync.

INSYNC HANDBOOK

Page 66: In Oh

CHAPTER 5 ■ Other dataset capabilities ■ How can I create one dataset from another?66

Can I select records from a dataset?The EXTRACT option reads records from an input dataset, writing those which meet defined selection criteria to an output dataset. Select the option from the InSync Primary Options menu; the Dataset Specification panel appears:

Type the names of a dataset to be copied and a dataset to receive the extracted records, YES for Use COBOL or PL/I layout to format display, and supply the details of the copybook member in the usual way. Other optional controls are:

InSync ---------------- EXTRACT - Dataset Specification ---------------- InSync COMMAND ===>

INPUT DATA FILE ===> 'INO.TRG.DEM.POLICY1.SEQ' OUTPUT DATA FILE ===> 'INO.TRG.DEM.POLICY4.SEQ'

Use COBOL or PL/1 layout to format display ===> YES (COB, PLI, YES, NO) Add to existing records in output dataset ===> NO (YES, NO) If keyed, replace equal keyed records ===> NO (YES, NO) Number of records to skip before sample ===> (Default = 0) Number of records per sample ===> (Default = 1) Maximum number of records to be extracted ===> (Blank = ALL) Output File if new (KSDS/ESDS/RRDS/SEQ) ===> SEQ (Default = SEQ)

COPY LIBRARY: ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY LIST: MEMBER ===> DISPLAY ===> YES (YES, NO)

OTHER DATASET ===> 'INO.TRG.DEM.PRODCOPY(POLREC)'

These fields are specific to the EXTRACT option

Control Selected Otherwise

Add to existing records in dataset

YES: InSync retains any existing records in the output dataset.

NO: InSync deletes any existing records.

If keyed, replace equal keyed records

YES: An extracted record replaces an existing record having the same key value.

NO: The existing record is preserved, the extracted record is discarded.

Number of records to skip before sample

Number of records to sample

Maximum number of records to be extracted

Use these three numbers to create a subset of records by numeric sampling

Your selection criteria are applied to all records.

Output file if new (KSDS/ESDS/ RRDS/SEQ)

KSDS/ESDS/RRDS: InSync presents the VSAM Dataset Allocation panel.

SEQ: InSync presents the Sequential Dataset Allocation panel.

INSYNC HANDBOOK

Page 67: In Oh

How can I create one dataset from another? 67

Press Enter. The familiar Selection Criteria panel is presented. Select the records to be copied, or leave the panel blank to copy all records in the dataset. Press Enter to initiate the processing.

Can I rearrange the order of the fields?The FIELDMAP option is similar to EXTRACT, in that it reads records from an input dataset, writing those which meet defined selection criteria to an output dataset. However, with FIELDMAP the format of the output dataset is different from the input dataset, and you can specify the mapping between input fields and output fields.

Select the option from the InSync Primary Options menu; the Dataset Specification panel appears:

Type the names of a dataset to be copied and a dataset to receive the restructured records, and supply the details of the input copybook member in the usual way. Other optional controls are:

Inputrecord

Outputrecord

These fields omitted from the output record

This field initialized to zero or spaces as appropriate

Name

Name

JobTitle

Locn

Phone

PhoneJobTitle

LocnSex Status

Login

InSync ---------------- FIELDMAP - Dataset Specification --------------- InSync COMMAND ===>

INPUT DATA FILE: ===> 'INO.TRG.DEM.POLICY1.SEQ' OUTPUT DATA FILE: ===> 'INO.TRG.DEM.POLICY5.SEQ'

Add to existing records in output dataset ===> NO (YES, NO) Copy all records to output dataset ===> YES (YES, NO)

INPUT COPY LIBRARY: ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY LIST: MEMBER ===> DISPLAY ===> YES (YES, NO)

OTHER DATASET ===> 'INO.TRG.DEM.PRODCOPY(POLREC)'

These fields are specific to the FIELDMAP option

Control Selected Otherwise

Add to existing records in output dataset

YES: InSync retains any existing records in the output dataset.

NO: InSync deletes any existing records.

INSYNC HANDBOOK

Page 68: In Oh

CHAPTER 5 ■ Other dataset capabilities ■ How can I create one dataset from another?68

Press Enter. If you are creating a new dataset, you are asked to specify its characteristics; supply the necessary information, and press Enter to continue.

The Output Dataset Copybook Library panel appears:

Supply the details of the output copybook member. Press Enter.

The familiar Selection Criteria panel is presented. Select the records to be copied, or leave the panel blank to copy all records in the dataset. Press Enter to define the field mapping between the input dataset (on the left) and the output dataset (on the right):

Copy all records to output dataset

YES: Records which don’t meet any selection criteria which you define are still copied to the output dataset (albeit in their original format).

NO: Non-selected records are omitted from the output dataset.

Control Selected Otherwise

InSync ---------- FIELDMAP - Output Copy Library Specification --------- InSync COMMAND ===>

OUTPUT COPY LIBRARY: ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY LIST: MEMBER ===> DISPLAY ===> YES (YES, NO)

OTHER DATASET ===> 'INO.TRG.DEM.PRODCOPY(POLREC2)'

InSync FIELDMAP - INO.TRG.DEM.POLICY1.SEQ ------------------------------------- COMMAND ===> SCROLL ===> PAGE LEFT

Enter FIELDMAP mapping data RDW OFF

SEQ LVL FIELD NAME MAP# SEQ LVL FIELD NAME *********** TOP OF DATA ************ ************** TOP OF DATA ***************

1 01 POLICY-REC 1 01 POLICY-REC2 2 03 POL-NO 2 03 POL-NO 3 03 CUST-ID 3 03 CUST-ID 4 03 POL-TYPE 4 03 POL-TYPE 5 03 RENEWAL-DATE 5 03 RENEWAL-DATE 6 03 YEARS-NCD 6 03 PREMIUM 7 03 PREMIUM 7 03 POST-CODE 8 03 NOTES 8 03 PAYMENTS

********* BOTTOM OF DATA *********** 9 05 PAYMENT(1) 10 05 PAYMENT(2) 11 05 PAYMENT(3) 12 05 PAYMENT(4) 13 05 PAYMENT(5) 14 05 PAYMENT(6) 15 05 PAYMENT(7) 16 05 PAYMENT(8) 17 05 PAYMENT(9)

INSYNC HANDBOOK

Page 69: In Oh

How can I create one dataset from another? 69

Use the MATCH command to establish an initial mapping from input fields to output fields of the same name. Alternatively, or in addition, use the MAP area alongside each output field to specify the sequence number of an input field whose contents are to be placed in this field. This technique means that:■ if an input field’s sequence number is not used in the MAP area,

that field’s data does not appear in the output dataset. Conversely, if an input field’s sequence number is used more than once, that field’s data is repeated in the output dataset.

■ if an output field’s MAP area is not used, that field is initialized according to its format.

Press Enter to validate the mappings you have defined, then press Enter again to initiate the processing.

Are these two datasets the same?InSync can compare two datasets and report on their differences. The option used depends on whether the datasets use a single copybook (and therefore have the same format) or are mapped by different copybooks (have different formats).

Same format To compare datasets that have the same format you use the COMPARE option (for datasets that have different formats you use the FIELDCOMPARE option – see ‘Different formats’ on page 72).

Select the COMPARE option from the InSync Primary Options menu; the Dataset Specification panel appears:

Within reason, the format of a field in the input dataset can be transformed to a different format in the output dataset.

InSync ---------------- COMPARE - Dataset Specification ---------------- InSync COMMAND ===>

INPUT FILE1 (OLD) ===> 'INO.TRG.DEM.POLICY1.SEQ' INPUT FILE2 (NEW) ===> 'INO.TRG.DEM.POLICY4.SEQ'

Use COBOL or PL/1 layout to format display ===> YES (COB, PLI, YES, NO) Display search criteria panels ===> NO (YES, NO)Display exclude field name panels ===> NO (YES, NO)Display additional fields (formatted) ===> NO (YES, NO)Max number of differences to be processed ===> (Blank = ALL)Max number of differences to be reported ===> (Blank = ALL)Read ahead count (non-keyed only) ===> 0 (0 - 9999

COPY LIBRARY: ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY LIST: MEMBER ===> DISPLAY ===> YES (YES, NO)

OTHER DATASET ===> 'INO.TRG.DEM.PRODCOPY(POLREC)'

These fields are specific to the COMPARE option

INSYNC HANDBOOK

Page 70: In Oh

CHAPTER 5 ■ Other dataset capabilities ■ How can I create one dataset from another?70

Type the names of two datasets to be compared, YES for Use COBOL or PL/I layout to format display, and supply the details of the copybook member in the usual way. Other optional controls are:

Press Enter. For unkeyed datasets, you are asked to specify the field(s) used to synchronize the comparison; supply the necessary information, and press Enter to continue.

If you chose an unformatted display in the above panel, you are asked to specify the output options:

CHANGED in 5.300Fields removed, added, and changed on COMPARE panel

Control Selected Otherwise

Display search criteria panels

YES: InSync presents the Selection Criteria panel, then compares only records (from both datasets) which meet criteria.

NO: InSync compares all records.

Display exclude field name panels

YES: InSync presents the Field Exclusion panel, then omits comparison of excluded fields.

NO: InSync compares all fields.

Display additional fields (formatted)

YES: InSync presents the Additional Fields panel, then outputs those fields in addition when reporting a record mismatch.

NO: For a mismatch, InSync reports only fields having differing values.

Max number of differences to be processed

number: InSync gives up after number record mismatches.

InSync processes all mismatches.

Max number of differences to be reported

number: InSync stops reporting differences after number record mismatches.

InSync reports all mismatches.

Read ahead count (non-keyed only)

number: InSync reads number records when trying to resynchronize after insertion/deletion.

Insertion/deletion causes mismatch on all following records.

CHANGED in 5.300Output options for COMPARE now on separate panel

INSYNC HANDBOOK

Page 71: In Oh

How can I create one dataset from another? 71

You also have the opportunity to specify output file names so that (for compares that synch on a key) InSync will write the actual records out to separate files:■ records that match■ records that have changed in file 2 compared to file 1■ records that have changed in file 1 compared to file 2■ records that are in file 1 but not in file 2■ records that are in file 2 but not in file 1.

Next, you are asked to allocate a temporary dataset for the report of mismatches; just press Enter to continue.

InSync now compares the two datasets, writes a mismatch report to that dataset, and then invokes ISPF Browse to display the report online. When you use END to terminate the browse, you are given the opportunity to output the report to a printer:

Control Selected Otherwise

Record print mode

CHAR: InSync outputs the character representation when reporting a record mismatch.

HEX: InSync outputs both character and hex representations.

Horizontal interspersed lines

YES: InSync shows two records one above the other when reporting a record mismatch.

NO: InSync shows two records side by side.

Print full record

YES: InSync shows the complete records when reporting a record mismatch.

NO: InSync shows only the differing fields in mismatched records (but all fields for inserted and deleted records).

Print Key YES: Specifies a print of defined keys.

NO: Defined keys not printed.

CHANGED in 5.300Can choose to write records that show as different to separate files

INSYNC HANDBOOK

Page 72: In Oh

CHAPTER 5 ■ Other dataset capabilities ■ How can I create one dataset from another?72

Check the displayed values, then press Enter to initiate the batch print job.

Different formats

To compare two datasets with different formats – comparing selected fields common to both files – you use the FIELDCOMPARE option.

Select the FIELDCOMPARE option from the InSync Primary Options menu. This option is very similar to the COMPARE option except that it also allows you to map fields from the two copybooks for comparison purposes, as shown below:

InSync ------------------- Print Dataset Disposition ------------------- InSync COMMAND ===>

Print comparison report ===> YES (YES, NO)

SYSOUT class ===> * OUTPUT destination node ===> OUTPUT destination user ===>

JOB STATEMENTS: ===> //M4PINO JOB (000),'PROGRAMMER',CLASS=A,MSGCLASS=T ===> ===> ===>

NEW in 5.300FIELDCOMPARE option

Enter FIELD COMPARE comparison data RDW OFF SEQ LVL FIELD NAME MAP# SEQ LVL FIELD NAME *********** TOP OF DATA ************ ************** TOP OF DATA ******** 1 01 DSN8610-EMP 1 01 DSN8710-EMP-TIAUL 2 10 Empno 2 2 10 EMPNO 3 10 FIRSTNME 3 10 FIRSTNME 4 15 FIRSTNME-LENGTH 4 4 15 FIRSTNME-LENGTH 5 15 FIRSTNME-DATA 5 5 15 FIRSTNME-DATA 6 10 miDinit 6 6 10 miDinit 7 10 LASTNAME 7 10 LASTNAME 8 15 LASTNAME-LENGTH 8 8 15 LASTNAME-LENGTH 9 15 LASTNAME-DATA 9 9 15 LASTNAME-DATA 10 10 WORKDEPT 10 10 10 WORKDEPT 11 10 PHONENO 11 10 WORKDEPT-NULL 12 10 HIREDATE 11 12 10 PHONENO 13 10 JOB-YYYYYYYYYYYYYYYYYYYYYY 13 10 PHONENO-NULL 14 10 EDLEVEL-NNNNNNNNNNNNNNNNNN 12 14 10 HIREDATE 15 10 SEX 15 10 HIREDATE-NULL 16 10 BIRTHDATE 13 16 10 JOB 17 10 SALARY 17 10 JOB-NULL 18 10 BONUS 18 10 EDLEVEL 19 10 COMM 19 10 EDLEVEL-NULL 20 10 WORKDEPT-NULLIND 15 20 10 SEX 21 10 PHONENO-NULLIND 21 10 SEX-NULL 22 10 HIREDATE-NULLIND 16 22 10 BIRTHDATE 23 10 JOB-NULLIND 23 10 BIRTHDATE-NULL 24 10 EDLEVEL-NULLIND 17 24 10 SALARY 25 10 SEX-NULLIND 25 10 SALARY-NULL 26 10 BIRTHDATE-NULLIND 18 26 10 BONUS 27 10 SALARY-NULLIND 27 10 BONUS-NULL 28 10 BONUS-NULLIND 19 28 10 COMM 29 10 COMM-NULLIND 29 10 COMM-NULL ********* BOTTOM OF DATA *********** ********** BOTTOM OF DATA *********

INSYNC HANDBOOK

Page 73: In Oh

Hardcopy output is probably handled by the PRINT option? 73

Hardcopy output is probably handled by the PRINT option?

That’s right. Select the PRINT option from the InSync Primary Options menu; the Dataset Specification panel appears:

The basic layout of the panel is similar to that for the BROWSE option; these are the print-specific control fields:

InSync ----------------- PRINT - Dataset Specification ----------------- InSync COMMAND ===>

INPUT DATASET ===> 'INO.TRG.DEM.POLICY1.SEQ' VOLUME SERIAL ===> (If not cataloged)

Use COBOL or PL/1 layout to format print ===> YES (COB, PLI, YES, NO) Record print mode (unformatted) ===> HEX (CHAR, HEX) New page for each record (unformatted) ===> NO (YES, NO) Display search criteria panels ===> NO (YES, NO) Display exclude field name (formatted) ===> NO (YES, NO) Print lower case characters ===> NO (YES, NO) Start record number ===> (Default = 1) Maximum number of records to be printed ===> (Blank = ALL)

COPY LIBRARY: ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY LIST: MEMBER ===> DISPLAY ===> YES (YES, NO)

OTHER DATASET ===> 'INO.TRG.DEM.PRODCOPY(POLREC)'

These fields are specific to the PRINT option

Control Selected Otherwise

Record print mode (unformatted)

CHAR: InSync outputs the character representation.

HEX: InSync outputs both character and hex representations.

New page for each record (unformatted)

YES: InSync starts each record on a new page.

NO: InSync fills each page.

Display search criteria panels

YES: InSync presents the Selection Criteria panel, then prints only records which meet criteria.

NO: InSync prints all records.

Display exclude field name (formatted)

YES: InSync presents the Field Exclusion panel, then omits excluded fields.

NO: InSync prints all fields.

Print lower case characters

YES: InSync prints lower case characters literally.

NO: InSync prints lower case characters as dots (in unformatted mode) or in hexadecimal (otherwise).

INSYNC HANDBOOK

Page 74: In Oh

CHAPTER 5 ■ Other dataset capabilities ■ Hardcopy output is probably handled by the PRINT option?74

Type the name of a dataset to be printed, YES for Use COBOL or PL/I layout to format display, and supply the details of the copybook member, just as you did for Browse.

Press Enter. The generated sysout and JCL statements are displayed on the Print Dataset Allocation panel:

Check the displayed values, then press Enter to initiate the print job.

Can I print just a single record?Use the IPRINT command (from a single-record display) or the P line command (from a multi-record display) during a Browse or Edit session. The record is printed when you exit that session.

Start record number

Maximum number of records to be printed

Use these two numbers to create a subset of records by numeric sampling

Your selection criteria are applied to all records.

Control Selected Otherwise

InSync -------------------- Print Dataset Allocation ------------------- InSync COMMAND ===>

PRINT DATASET ALLOCATION: Lines per page ===> Primary pages ===> 100 Secondary pages ===> 200

Data class ===> Management class ===> Storage class ===>

SYSOUT class ===> * DEST node ===> DEST userid ===>

JOB STATEMENTS: ===> //M4PINO JOB (000),'PROGRAMMER',CLASS=A,MSGCLASS=T ===> ===> ===>

You can set default allocation values for the Print dataset by selecting PARMS on the Primary Options menu, and then selecting PRINT.

INSYNC HANDBOOK

Page 75: In Oh

Did you know? 75

Did you know? ■ Use CREATE to key data directly into a dataset.■ Use EXTRACT to copy selected records from one dataset to

another.■ Use FIELDMAP to copy selected records from one dataset to

another, restructing the data as it’s copied.■ Use COMPARE to determine the differences between two datasets.■ Using PRINT for hardcopy output.

INSYNC HANDBOOK

Page 76: In Oh

CHAPTER 5 ■ Other dataset capabilities ■ Did you know?76

INSYNC HANDBOOK

Page 77: In Oh

77

CHAPTER 6

Chapter 6 More about formatting

You’ve probably already realised that one of InSync’s strengths is its ability to marry the records in a dataset with the COBOL or PL/I copybook defined the layout of those records, so that you can work with your files using familiar field names and meaningful data representations. Earlier on – see ‘How do I apply formatting to my displays?’ on page 26 – we explained how to specify the copybook to be used when browsing, editing or otherwise manipulating a dataset. In this chapter we describe some additional features in this area. See:■ ‘How do I display or print my record layout?’ on page 78■ ‘Can InSync handle complex record layouts?’ on page 79

INSYNC HANDBOOK

Page 78: In Oh

CHAPTER 6 ■ More about formatting ■ How do I display or print my record layout?78

How do I display or print my record layout?Select the LAYOUT option from the InSync Primary Options menu; the Layout Specification panel appears:

Supply the name of the copybook member. If you leave Layout lang blank, InSync inspects the copybook and attempts to deduce whether it’s written in COBOL or PL/I. You can tell InSync which language applies by typing C[OB] or P[LI].

If you press Enter with the Option field blank, InSync displays the record layout:

If you type “P” in the Option field, InSync asks you to allocate the print dataset, just as you did when printing a dataset (see page 73), and then initiates a batch print job.

InSync ---------------------- COBOL or PL/1 Layout --------------------- InSync OPTION ===>

P - Print COBOL or PL/1 Layout EF - Create Easytrieve Plus File Layout Macro EW - Create Easytrieve Plus Working Storage Macro D - Create DYL280 File Layout Macro

blank - Display COBOL or PL/1 Layout

COPY LIBRARY: ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY LIST: MEMBER ===> DISPLAY ===> YES (YES, NO)

OTHER DATASET ===> 'INO.TRG.DEM.PRODCOPY(POLREC)'

Layout Lang. ===> (Optional, COB or PLI)

InSync LAYOUT - INO.TRG.DEM.PRODCOPY(POLREC) ---------------------------------- COMMAND ===> SCROLL ===> PAGE

Record layout fixed length - 115

SEQ LVL FIELD NAME FORMAT START LENGTH ********************************** TOP OF DATA ********************************

1 01 POLICY-REC G 1 115 2 03 POL-NO C 9 1 9 3 03 CUST-ID C 9 10 9 4 03 POL-TYPE C 2 19 2 5 03 RENEWAL-DATE Z 8 21 8 6 03 YEARS-NCD Z 3 29 3 7 03 PREMIUM PS 7 2 32 5 8 03 NOTES C 79 37 79

********************************* BOTTOM OF DATA ******************************

Due to the specialized nature of the other options, they are not covered in this introduction to InSync.

INSYNC HANDBOOK

Page 79: In Oh

Can InSync handle complex record layouts? 79

Can InSync handle complex record layouts?Sure it can. In addition to the standard case – where all of the records in a dataset have the same layout, defined by a single copybook – InSync also supports:■ ‘Multiple layouts’ below■ ‘Compound layouts’ (see page 82)■ ‘Segmented layouts’, a hybrid of multiple and compound layouts,

in which the dataset contains records of several formats; a record can contain any mix of segments, each defined by a separate copybook. Due to their specialized nature, these are not covered in this introduction to InSync.

We’ll only sketch the process of defining these layouts rather than go through a full step-by-step procedure.

Multiple layouts In a multiple layout, the dataset contains records of several formats, each defined by a single separate layout:

Select the TABLES option from the InSync Primary Options menu; the Table Options menu appears:

Select the SELECT option from this menu; the Library panel appears:

A

AA

A

C

C

C

B

InSync ------------------------- TABLE Options ------------------------- InSync OPTION ===>

1 SELECT - Specify multiple format selection criteria

2 UPDATE - View/Update multiple format selection criteria

3 COMPOUND - Define compound record layout structure

R REVIEW - Review/update compound table

INSYNC HANDBOOK

Page 80: In Oh

CHAPTER 6 ■ More about formatting ■ Can InSync handle complex record layouts?80

Supply the name of a member of an appropriate copybook library which is to contain the definition of this multiple layout, and if necessary type YES for Replace like named members. If you supply a Format language, InSync takes this as the default for all of the copybooks in the multiple layout.

Press Enter; InSync repeatedly presents pairs of panels for you to define the multiple layout. The Copybook Library panel specifies the name of an individual copybook:

Supply a description for this layout. Type NO for Use Multiple FORMATDSN list (we’ll explain what that means shortly).

Following that, the Selection Criteria panel specifies the criteria which will determine whether this copybook should be used to display a given record. That is, when working with a multiple layout dataset, InSync tests each record against the various criteria which you’ve defined and uses the layout of the first entry which matches. (If you leave the selection criteria blank when defining the last copybook, InSync takes that layout as a default to be used when no match is found):

InSync --------------------- SELECT TABLE - Library -------------------- InSync COMMAND ===>

ISPF SELECT TABLE LIBRARY: PROJECT ===> GROUP ===> TYPE ===> MEMBER ===>

OTHER SELECT TABLE LIBRARY: DATASET NAME ===> 'INO.TRG.DEM.TABLES(CARTAB)'

OPTIONS: Replace like named members ===> YES (YES, NO) Format Language ===> (Optional, COB, PLI)

InSync ---------------- SELECT TABLE - Copybook Library ---------------- InSync COMMAND ===>

Record description ===> CAR MODEL RECORD Use multiple FORMATDSN list ===> NO (Yes, No) Format language ===> (Blank, COB or PLI)

COPY LIBRARY: ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY OR MULTIPLE FORMATDSN LIST: MEMBER ===> DISPLAY LIST ===> YES (YES, NO)

OTHER DATASET ===> 'INO.TRG.DEM.PRODCOPY(CARMOD)'

INSYNC HANDBOOK

Page 81: In Oh

Can InSync handle complex record layouts? 81

Use END to terminate the definitions. The member which you have created here can now be treated as a copybook anywhere within InSync when you are working with a dataset having this multiple layout.

You can view the new member if you wish; its contents are something like this:

FUNCTION=FORMAT RDW=OFF * CASE DESCRIPTION=CAR MODEL RECORD FORMATDSN=(INO.TRG.DEM.PRODCOPY) FORMATMBR=(CARMOD) SEARCHDATA=(MODOPT,EQ,X'4040')

* CASE DESCRIPTION=CAR MODEL STATS REC FORMATDSN=(INO.TRG.DEM.PRODCOPY) FORMATMBR=(CARMODST) SEARCHDATA=(OPTIND,NE,X'4040')

ENDCASE

The table contains a series of CASE keywords; each CASE specifies a logical method for detecting a record type (SEARCHDATA= ) and associates that record with a copybook library (FORMATDSN= ) and member (FORMATMBR= ). Using this table, InSync can navigate through the records in the dataset and, for each, identify the copybook which defines the layout of that record’s data.

InSync FIND - INO.TRG.DEM.PRODCOPY(CARMOD) ------------------------------------ COMMAND ===> SCROLL ===> PAGE

Description: CAR MODEL RECORD Enter search criteria for FORMAT option - CAPS OFF RDW OFF Use "EXCLUDE" command to exclude field(s) from processing

C LVL FIELD NAME FORMAT BOOL CN DATA ********************************** TOP OF DATA ******************************** 01 MODEL G 05 MODLNO C 3 05 MODOPT C 2 EQ X'4040' 05 DESC C 27

********************************* BOTTOM OF DATA ******************************

This panel also enables you to choose a subset from a copybook by using the S and E line commands to nominate a STARTFIELD and an ENDFIELD, useful if your copybook holds several different record formats.

Because the definition of a multiple layout enables InSync to select which copybook to apply to each record, it’s generally known as a select table.

INSYNC HANDBOOK

Page 82: In Oh

CHAPTER 6 ■ More about formatting ■ Can InSync handle complex record layouts?82

Optionally, a final CASE without a SEARCHDATA= keyword can be defined to handle the default record layout; this is applied if none of the preceding SEARCHDATA conditions matched the record:

...CASE DESCRIPTION=CAR MODEL SUMMARY FORMATDSN=(INO.TRG.DEM.PRODCOPY) FORMATMBR=(CARMODSU)

ENDCASE

You may remember that, when introducing InSync’s ability to display formatted records, we explained that your ‘concatenated library list’ is a personal list of PDS libraries; InSync searches those libraries and uses the first occurrence of the specified member name that it finds when creating the FORMATDSN and FORMATMBR keywords.

If you type YES for Use Multiple FORMATDSN list, InSync accesses an alternative personal library list, but that’s not the only difference. Instead of searching those libraries now for the specified member (and naming the appropriate library in the FORMATDSN keyword), it simply includes the entire contents of the list of libraries in the FORMATDSN keyword, and defers searching for the specified member until the select table is actually used. A typical CASE from the previous example might now look like this:

CASE DESCRIPTION=CAR MODEL STATS REC FORMATDSN=(INO.TRG.DEM.PRODCOPY,

INO.TRG.DEM.TESTCOPY,INO.TRG.USR.MYCOPY)

FORMATMBR=(CARMODST) SEARCHDATA=(OPTIND,NE,X'4040')

Compound layoutsIn a compound layout, all of the records in the dataset have the same format, specified by concatenating several copybooks one after the other:

For small changes to a select table definition, you may find it easier to edit the table member directly rather than manipulating it using the TABLES option.

INSYNC HANDBOOK

Page 83: In Oh

Can InSync handle complex record layouts? 83

Select the TABLES option from the InSync Primary Options menu; the Table Options menu appears:

Select the COMPOUND option from this menu; the Library Specification panel appears:

Supply the name of a member of an appropriate copybook library which is to contain the definition of this compound layout, and if necessary type YES for Replace like named members.

Press Enter; InSync repeatedly presents the Copy Library panel for you to specify the names of individual copybooks which together define the compound layout:

InSync ------------------------- TABLE Options ------------------------- InSync OPTION ===>

1 SELECT - Specify multiple format selection criteria

2 COMPOUND - Define compound record layout structure

R REVIEW - Review/update compound table

InSync ------------- COMPOUND TABLE - Library Specification ------------ InSync COMMAND ===>

ISPF COMPOUND LAYOUT LIBRARY: PROJECT ===> GROUP ===> TYPE ===> MEMBER ===>

OTHER COMPOUND LAYOUT LIBRARY: DATASET NAME ===> 'INO.TRG.DEM.TABLES(COMPTAB)'

LIBRARY OPTIONS: Replace like named members ===> YES (YES, NO)

INSYNC HANDBOOK

Page 84: In Oh

CHAPTER 6 ■ More about formatting ■ Can InSync handle complex record layouts?84

Use END to terminate the definitions. The member which you have created here can now be treated as a copybook anywhere within InSync when you are working with a dataset having this compound layout.

InSync ----------------- COMPOUND TABLE - Copy Library ----------------- InSync COMMAND ===>

RECORD DESCRIPTION ===> CAR REC

COPY LIBRARY: ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY LIST: MEMBER ===> DISPLAY ===> YES (YES, NO)

OTHER DATASET ===> 'INO.TRG.DEM.PRODCOPY(CARMOD)'

The member is generally known as a compound table. Its storage format is different from that used for select tables, and it isn’t intended to be user-editable. The TABLES option followed by the REVIEW option should be used to update a compound table.

INSYNC HANDBOOK

Page 85: In Oh

85

CHAPTER 7

Chapter 7 Dataset utilities

In addition to its capabilities for working with the contents of datasets, InSync also provides a powerful range of housekeeping tools for the datasets themselves. Although many of the features provided are also available as z/OS facilities, their ready accessibility within the InSync environment adds to convenience and productivity. See:■ ‘Working with datasets’ on page 86■ ‘Working with PDS members’ on page 87■ ‘Working with VTOCs’ on page 88

INSYNC HANDBOOK

Page 86: In Oh

CHAPTER 7 ■ Dataset utilities ■ Working with datasets86

Working with datasetsSelect the UTILITIES option from the InSync Primary Options menu; the Utility Options menu appears:

Defining VSAM datasetsSelect the VSAM option from the InSync Utility Options menu; the VSAM Utility menu appears:

From this menu you can:■ create, delete, rename, redefine and modify a VSAM catalog

entry■ model a new catalog entry on one that already exists■ initialize and verify a VSAM dataset.

You can choose to execute the IDCAMS task immediately, save the parameters for later execution, or both. InSync makes the definition of VSAM files much easier and more natural than using normal z/OS procedures.

InSync ------------------- Data Manipulation Utility ------------------- InSync OPTION ===>

1 LIBRARY - PDS directory and CSECT utility

2 SCAN - PDS scan utility

3 VSAM - VSAM utility

4 VTOC - VTOC utility

5 DATASET - DATASET utility

InSync -------------------------- VSAM Utility ------------------------- InSync OPTION ===>

1 - Define catalog entry 4 - Alter catalog entry 2 - Delete catalog entry 5 - Verify VSAM dataset 3 - Rename catalog entry 6 - Initialize VSAM dataset

blank - Display catalog information 7 - Build alternate index 8 - Redefine catalog entry

ENTRY NAME ===> 'INO.TRG.DEM.CARS.ESDS' USER CATALOG ===>

ENTRY TYPE ===> 2 (Required for option "1") 1 - KSDS Cluster 5 - Alternate Index 2 - ESDS Cluster 6 - Path 3 - RRDS Cluster 7 - Generation Data Group 4 - LINEAR Cluster

MODEL NAME ===>

RUN TYPE ===> EXEC (EXEC, PARM, BOTH)

INSYNC HANDBOOK

Page 87: In Oh

Working with PDS members 87

Working with general datasetsSelect the DATASET option; the Dataset Utility menu appears:

From this menu you can display a catalog list of datasets matching a name pattern, from which you can:■ allocate, delete and rename a dataset■ view information about a dataset■ modify a VSAM dataset’s characteristics■ catalog and uncatalog a non-VSAM dataset■ compress a PDS dataset■ use InSync’s BROWSE and EDIT options.

Working with PDS members

Searching for strings in PDS membersSelect the SCAN option from the InSync Utility Options menu; the PDS Scan menu appears:

The SCAN option enables you to define up to five character strings; InSync can search for those strings in a wide range of partitioned datasets, specified by:■ an explicit dataset name (for example, TEST.USER.MYPDS)

InSync ------------------------ DATASET UTILITY ------------------------ InSync OPTION ===>

Options: A - Allocate D - Delete Blank - Information

DATASET NAME ===> 'INO.TRG.DEM.POLICY1' VOLUME SERIAL ===>

Max # of DSNs ===> 99 (to show in a dataset list)

Model Dataset ===>

InSync ---------------------------- PDS Scan --------------------------- InSync OPTION ===>

1 - Display list of members containing scan string(s)

2 - Display records containing scan string(s)

3 - Print list of members containing scan string(s)

4 - Print records containing scan string(s)

5 - Update records containing scan string(s)

6 - Extract members containing scan string(s)

7 - Extract and update members containing scan string(s)

INSYNC HANDBOOK

Page 88: In Oh

CHAPTER 7 ■ Dataset utilities ■ Working with VTOCs88

■ a dataset pattern (for example, DSN='TEST.USER.MY*')■ a DDname currently allocated to the TSO session (for example,

DD=SYSPROC).

You can generate output at the level either of the individual matching record(s), or of the member(s) containing the matching record(s). Replacement of one string by another is also supported.

Manipulating PDS membersSelect the LIBRARY option from the InSync Utility Options menu; the Library Utility menu appears:

From this menu you can:■ display a list of PDS members■ allocate, delete and rename a member■ view and edit a member’s directory entry■ view a load member’s CSECT map■ compress a PDS dataset■ use InSync’s BROWSE option.

Working with VTOCsSelect the VTOC option from the InSync Utility Options menu; the VTOC Utility menu appears:

InSync ------------------------ Library Utility ------------------------ InSync OPTION ===>

S - Display directory entry for member U - Update directory entry for member A - Map load module in address sequence N - Map load module in name sequence R - Rename member D - Delete member B - Browse member L - Create an alias Z - Compress library

Blank - Display member list

ISPF: PROJECT ===> GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

NEW NAME ===> (If "R" or "L" selected)

OTHER LIBRARY ===> VOLUME SERIAL ===> (If not cataloged)

INSYNC HANDBOOK

Page 89: In Oh

Working with VTOCs 89

From this menu you can:■ display volume cache status■ list volumes and their space utilization■ list datasets in order of name or location.

InSync -------------------------- VTOC Utility ------------------------- InSync OPTION ===>

C - List Volume cache status L - List VTOC entries in pack location sequence N - List VTOC entries in dataset name sequence

blank or V - List Volume information

Volume Information: Volume serial ===> Unit addr(s)/name ===> (dddd, dddd-dddd or esoteric) Volume status ===> (blank, PRV, PUB or STG) SMS Storage Group ===>

Dataset Search Information: Max # of names ===> 99 (Options L and N only) Search mask ===>

INSYNC HANDBOOK

Page 90: In Oh

CHAPTER 7 ■ Dataset utilities ■ Working with VTOCs90

INSYNC HANDBOOK

Page 91: In Oh

91

CHAPTER 8

Chapter 8 Working in batch

In addition to its comprehensive online capabilities, InSync also includes a powerful batch processing language. Most online operations can also be performed in batch; the difference is that an online operation (for example, an EXTRACT option) is processed immediately; afterwards, there is no record of how you specified that option. A batch EXTRACT option, on the other hand, generates a job stream which can perform the same operation, copying from the same source with the same selection criteria, as and when required. See:■ ‘How do online and batch options match up?’ on page 92■ ‘How do I specify a batch option?’ on page 93■ ‘What on earth does that batch stream mean?’ on page 95■ ‘What about multiple-layout datasets?’ on page 97■ ‘Can I create temporary values during a batch run?’ on page 98■ ‘How can I tell what happened?’ on page 98

The InSync Batch User Guide gives full details of InSync’s batch processing, and the Quick Reference Guide is a convenient summary of batch options and their keywords.

INSYNC HANDBOOK

Page 92: In Oh

CHAPTER 8 ■ Working in batch ■ How do online and batch options match up?92

How do online and batch options match up?InSync’s online and batch options are pretty comparable. Here’s a rough comparison of options available in the two environments.

In general, anything of a rule-based or repetitive nature that’s available online can also be done in a batch job stream. The batch CHANGE and DELETE options are effectively just the CHANGE and DELETE commands available within an online EDIT session: find all records meeting some selection criteria, and either update one or more of their field values, or simply delete them. The batch LOAD option copies records from a dataset into a database; it’s available only with InSync for DB2 and InSync for IMS – see ‘DB2 and IMS databases’ on page 101.

NEW in 5.300FIELDCOMPARE function Online option Equivalent batch option

PARMS

TABLES

None – these options handle configuration tasks.

BROWSE None – this is inherently an online process.

EDIT

CREATE

CHANGE

DELETE

LOAD (DB2 and IMS)

PRINT PRINT

LAYOUT LAYOUT

EXTRACT EXTRACT

FIELDMAP FIELDMAP

COMPARE COMPARE

FIELDCOMPARE FIELDCOMPARE

DATEAGE DATEAGE

UTILITIES/LIBRARY

UTILITIES/SCAN

UTILITIES/VTOC

LIBRARY

SCAN

VTOC

INSYNC HANDBOOK

Page 93: In Oh

How do I specify a batch option? 93

How do I specify a batch option?Select the BATCH option from the InSync Primary Options menu; the Batch Options menu appears:

In most cases, the panel which you’ll see next after selecting one of the menu options is essentially identical to the panel for the equivalent online option. For example, if you select batch EXTRACT, you’ll see this panel:

That’s no different from the Dataset Specification panel you’ve already met when we introduced online EXTRACT – see ‘Can I select records from a dataset?’ on page 66 – nor do the following panels (where you allocate the output dataset and specify the record selection

NEW in 5.300FIELDCOMPARE function

The menu shown is from the InSync for z/OS base product. Similar, shorter, Batch Options menus are also available in InSync for DB2 and InSync for IMS.

InSync ------------------------- Batch Options ------------------------- InSync OPTION ===>

1 CHANGE - Specify record change criteria 2 DELETE - Specify record delete criteria 3 PRINT - Specify dataset print criteria 4 EXTRACT - Specify record extract criteria 5 FIELDMAP - Specify field mapping criteria 6 FIELDCOMPARE - Specify field compare criteria 7 COMPARE - Specify record compare criteria 8 DATEAGE - Specify date age criteria 9 SCAN - Specify PDS scan criteria 10 VTOC - Specify Batch VTOC criteria 11 LAYOUT - Specify Batch LAYOUT criteria 12 LIBRARY - Specify Batch LIBRARY criteria R REVIEW - Review / update old format batch parms S SUBMIT - Submit old format batch job

InSync ------------------------- BATCH EXTRACT ------------------------- InSync COMMAND ===>

INPUT DATA FILE ===> 'INO.TRG.DEM.POLICY1' OUTPUT DATA FILE ===> 'INO.TRG.DEM.POLICY4.SEQ'

Use COBOL or PL/1 layout to format display ===> YES (COB, PLI, YES, NO) Use multiple FORMATDSN list for batch job ===> NO (YES, NO) Add to existing records in output dataset ===> NO (YES, NO) If keyed, replace equal keyed records ===> NO (YES, NO) Number of records to skip before sample ===> (Default = 0) Number of records per sample ===> (Default = 1) Maximum number of records to be extracted ===> (Blank = ALL) Output File if new (KSDS/ESDS/RRDS/SEQ) ===> SEQ (Default = SEQ) Comma-delimited Output file ===> (YES, NO)

More: + COPY LIBRARY: ISPF: PROJECT ===>

GROUP ===> TYPE ===> MEMBER ===> (Blank or pattern for member selection list)

CONCATENATED LIBRARY OR MULTIPLE FORMATDSN LIST: MEMBER ===> DISPLAY LIST ===> YES (YES, NO)

INSYNC HANDBOOK

Page 94: In Oh

CHAPTER 8 ■ Working in batch ■ How do I specify a batch option?94

criteria) differ. What is different is what happens next. Online, the records are extracted there and then, and you’re returned to the EXTRACT Dataset Specification panel. In batch, the next thing that you see is the JCL Specification panel:

Check that the job statements are correct, and then press Enter.

The generated batch stream is displayed in ISPF Edit mode:

At this point you can:■ make any required changes to the batch stream, and then■ optionally, use the SUBMIT command to run it immediately.

In all cases, you next issue the END command. InSync presents the JCL Library panel:

InSync ----------------------- JCL Specification ----------------------- InSync COMMAND ===>

Lines per page ===> 65

SYSOUT class ===> * DEST node ===> DEST userid ===>

JOB STATEMENTS: ===> //M4PINO JOB (000),'PROGRAMMER',CLASS=A,MSGCLASS=T ===> ===> ===>

You can set default job parameters by selecting PARMS on the Primary Options menu, and then selecting PRINT.

File Edit Edit_Settings Menu Utilities Compilers Test Help

EDIT ASP.SPF.D040219.T143731.CNTL Columns 00001 00072 Command ===> Scroll ===> PAGE 000001 //M4PINO JOB (000),'PROGRAMMER',CLASS=A,MSGCLASS=T 000002 //* 000003 //STEP1 EXEC PGM=INSYNC,PARM=MVS 000004 //* 000005 //STEPLIB DD DISP=SHR,DSN=IN.ALPHA.LOADLIB 000006 //* 000007 //#ELIBDD DD DISP=SHR,DSN=IN.ALPHA.ELIB 000008 //SYSTSPRT DD SYSOUT=* 000009 //#LOG DD SYSOUT=* 000010 //#PRINT DD SYSOUT=* 000011 //#INDD DD DSN=INO.TRG.DEM.POLICY1.SEQ,DISP=SHR 000012 //#OUTDD DD DSN=INO.TRG.DEM.POLICY4.SEQ,DISP=SHR 000013 //#PARM DD * 000014 FUNCTION=EXTRACT 000015 INDD=#INDD 000016 OUTDD=#OUTDD 000017 RDW=OFF 000018 LANGUAGE=COB 000019 REPLACEDUPS=NO 000020 ADDTOOUTPUT=NO 000021 LINESPERPAGE=065 000022 FORMATDSN=(INO.TRG.DEM.PRODCOPY) 000023 FORMATMBR=(POLREC) 000024 SEARCHDATA=(YEARS-NCD,GT,Z'05')

INSYNC HANDBOOK

Page 95: In Oh

What on earth does that batch stream mean? 95

Here you can either discard the batch stream, or save it in a specified member for future submission. Press Enter to return to the Batch Options menu.

What on earth does that batch stream mean?It’s really quite straightforward. We’ll break the stream down into three parts. The first part is the job parameters that you set (or simply accepted) on the JCL Specification panel:

The second part defines the job step.

The statements here are more or less constant. The only values liable to change are the input and output datasets, specified by the DD names #INDD and #OUTDD respectively:

The final part is InSync’s batch processing language. The first line is always FUNCTION= to specify which batch option is to be performed. Following that are any number of keyword=value lines, each specifying some detail of that function’s behaviour:

InSync ---------------------- BATCH - JCL Library ---------------------- InSync COMMAND ===>

Save generated job stream ===> YES (YES, NO)

ISPF BATCH JCL LIBRARY: PROJECT ===> GROUP ===> TYPE ===> MEMBER ===>

OTHER BATCH JCL LIBRARY: DATASET NAME ===> 'INO.TRG.DEM.JCL(BATEXT)'

LIBRARY OPTIONS: Replace like named members ===> YES (YES, NO)

//M4PINO JOB (000),'PROGRAMMER',CLASS=A,MSGCLASS=T

Streams generated by InSync have a single step, though there’s nothing to prevent you from manually constructing more complex jobs having several steps, or several functions within a step.

//STEP1 EXEC PGM=INSYNC,PARM=MVS //* //STEPLIB DD DISP=SHR,DSN=IN.ALPHA.LOADLIB //* //#ELIBDD DD DISP=SHR,DSN=IN.ALPHA.ELIB //SYSTSPRT DD SYSOUT=* //#LOG DD SYSOUT=* //#PRINT DD SYSOUT=* //#INDD DD DSN=INO.TRG.DEM.POLICY1.SEQ,DISP=SHR //#OUTDD DD DSN=INO.TRG.DEM.POLICY4.SEQ,DISP=SHR //#PARM DD *

Your input and output datasets

INSYNC HANDBOOK

Page 96: In Oh

CHAPTER 8 ■ Working in batch ■ What on earth does that batch stream mean?96

We’ll go through the lines one by one.

Note the non-procedural nature of the language. InSync takes care of opening and closing the input and output datasets, reading and writing records, handling error conditions and so on. All you have to supply is a few basic controls over precisely how the EXTRACT is to behave. It’s really very simple... and yet extremely powerful.

FUNCTION=EXTRACT INDD=#INDD OUTDD=#OUTDD RDW=OFF LANGUAGE=COB REPLACEDUPS=NO ADDTOOUTPUT=NO LINESPERPAGE=065 FORMATDSN=(INO.TRG.DEM.PRODCOPY) FORMATMBR=(POLREC) SEARCHDATA=(YEARS-NCD,GT,Z'05')

There’s always a single FUNCTION statement

These KEYWORDS are the parameter values for the function

Statement Meaning

FUNCTION=EXTRACT In this step, InSync will copy selected records from one dataset to another.

INDD=#INDD OUTDD=#OUTDD

Supply the function with the input and output datasets, whose names you typed on the Dataset Specification panel.

RDW=OFF A variable-length Record Descriptor Word is not treated as a field in the record. This value is based on the current RDW ON|OFF setting in your user profile.

LANGUAGE=COB You specified that the copybook is written in COBOL, or InSync found it to be so.

REPLACEDUPS=NO You typed NO for If keyed, replace equal keyed records.

ADDTOOUTPUT=NO You typed NO for Add to existing records in dataset.

LINESPERPAGE=065 From the JCL Specification panel.

FORMATDSN=(INO.TRG.DEM.PRODCOPY)

FORMATMBR=(POLREC)

The copybook member whose name you typed on the Dataset Specification panel.

SEARCHDATA=(YEARS-NCD,GT,Z'05')

The condition you typed on the Selection Criteria panel.

INSYNC HANDBOOK

Page 97: In Oh

What about multiple-layout datasets? 97

What about multiple-layout datasets?InSync batch takes these in its stride. We’ll show how it’s done by extending our previous EXTRACT example to work with a multiple layout dataset – one whose ‘copybook’ is in fact a select table which we’ve defined. The first and second parts of the generated job stream will be exactly the same as before; the third part will now look something like this:

You can see the same FUNCTION= line and all of the same keywords. There are also a couple of additional ones brought into play: the CASE and ENDCASE keywords which we previously encountered in ‘Can InSync handle complex record layouts?’ on page 79.

Can I split my data into several streams?The CASE..ENDCASE isn’t just for multiple-layout datasets; you can also use it to perform conditional processing on data whose layout is the same for all records:

FUNCTION=EXTRACT INDD=#INDD OUTDD=#OUTDD RDW=OFF LANGUAGE=COB REPLACEDUPS=NO ADDTOOUTPUT=NO LINESPERPAGE=065 CASE FORMATDSN=(INO.TRG.DEM.PRODCOPY) FORMATMBR=(POLREC) SEARCHDATA=(POLNO NE C' '),AND,

(YEARS-NCD,GT,Z'05') CASE FORMATDSN=(INO.TRG.DEM.PRODCOPY) FORMATMBR=(POLTOTAL) ENDCASE

FUNCTION=EXTRACT INDD=#INDD OUTDD=#OUTDD RDW=OFF LANGUAGE=COB REPLACEDUPS=NO ADDTOOUTPUT=NO LINESPERPAGE=065 CASE FORMATDSN=(M4.TRGINO.DEM.CPYBOOKS) FORMATMBR=(SALESREC) WRITE=SALES03 SEARCHDATA=(STDATE,LT,Z'040000'),AND,

(STDATE,GE,Z'030000') CASE FORMATDSN=(M4.TRGINO.DEM.CPYBOOKS) FORMATMBR=(SALESREC) WRITE=SALESXX ENDCASE

INSYNC HANDBOOK

Page 98: In Oh

CHAPTER 8 ■ Working in batch ■ Can I create temporary values during a batch run?98

Here you can see two CASEs, both having the same FORMATDSN= and FORMATMBR= values. The first CASE has a SELECTDATA= keyword to identify a subset of records; the second one doesn’t, and thus acts as a default handler for records which weren’t selected by the first CASE.

You can also see a new WRITE= keyword, specifying a DDname which you’ve defined for this job step. When it encounters one of these, InSync ignores the ‘standard’ output dataset defined by #OUTDD and instead writes to the dataset which this DDname specifies.

You might wonder how that WRITE keyword was created, since there doesn’t appear to be a way of selecting this capability from the Batch EXTRACT Specification panels. You’re right: there isn’t; we’ve added it manually, by editing the generated batch stream. This is a common InSync technique; use the panels to generate a job stream that does roughly what you want, and then edit the stream to refine and extend the job as required.

Can I create temporary values during a batch run?A simple option is to add a line like ACCUM=(SALESVAL,'Sales total') to a batch stream; this builds a running total of the specified field, and then outputs the accumulated value with the explanatory text label at the end of the job.

InSync also provides a couple of special binary variables: # is a general-purpose number, and L refers to the length of the current input record. For example, the keyword ADD=(#,4,B,SALEVAL) accumulates a data value into the four-byte binary field

In addition, the workarea – a block of temporary storage – is available to you, and can be used to hold working values while an output record is created or manipulated, to accumulate counts and checksums, and for any other purposes. For example, the keyword ADD=(W+8,4,Z,SALEVAL) accumulates a data value into a four-byte zoned numeric field starting at the eighth byte of the workarea. You could output the accumulated value using WRITE=(SYSOUT,W+8,4).

How can I tell what happened?InSync creates various reports when running a batch job. The #STATS Batch Action Summary report lists all of the keywords and provides counts of how many times each keyword was actioned. The briefer #LOG Batch Control Totals report provides counts of the numbers of records read and processed. By default, both reports are printed on SYSOUT.

INSYNC HANDBOOK

Page 99: In Oh

Did you know? 99

Did you know?■ If you want to create a batch job for some specific purpose, your

best approach is to set up a job that’s roughly correct using InSync’s menu panels, and then customize it by editing the batch stream manually.

■ When InSync builds a batch stream, it places each function within a separate batch step. However, you can manually combine several functions within a single step if you wish.

INSYNC HANDBOOK

Page 100: In Oh

CHAPTER 8 ■ Working in batch ■ Did you know?100

INSYNC HANDBOOK

Page 101: In Oh

101

CHAPTER 9

Chapter 9 DB2 and IMS databases

Most of InSync’s basic support for viewing and updating datasets is also available for DB2 and IMS data. That is, you can work with rows in a DB2 table, and with segments in an IMS database, using exactly the same interface as when working with a z/OS dataset. In this chapter we briefly introduce InSync’s database features: See:■ ‘How do I work with DB2 tables?’ on page 102■ ‘How do I work with IMS databases?’ on page 108

The InSync for DB2 User Guide and InSync for IMS User Guide give full details of the material introduced in this chapter.

INSYNC HANDBOOK

Page 102: In Oh

CHAPTER 9 ■ DB2 and IMS databases ■ How do I work with DB2 tables?102

How do I work with DB2 tables?InSync for DB2 is a separate product, but you start it from the InSync Primary Options menu. Select the DB2 option; the DB2 Primary Options menu appears:

I want to view the rows in a tableSelect the BROWSE option from the Primary Options menu; the Table/View Specification panel appears:

Part of the installation process for InSync for DB2 is to define the various DB2 systems running at your site. Each system is identified by its DB2 Subsystem ID, and you can switch between systems by changing the value of the DB2ID field.

Optionally, you can enter your SQLID value, and you can specify a remote DB2 Location.

The basic layout of the panel is similar to that for the dataset BROWSE option; these are the additional control fields:

InSync ------------ Data Manipulation Utility for DB2 ------------ Ver version OPTION ===>

0 PARMS - Specify InSync parameters 1 BROWSE - Table browse 2 EDIT - Table edit 3 PRINT - Table print 4 COPY - Table row copy 5 EXTRACT - Extract table records 6 LOAD - Load extracted table records 7 RELATE - Relationship Management 8 RESERVED B BATCH - InSync for DB2 batch functions T TUTORIAL - Display information about InSync for DB2

Software Excellence from Macro 4 (c) Copyright Macro 4 1991-2004. All rights reserved

InSync --------------- BROWSE - Table/View Specification --------------- InSync COMMAND ===>

DB2ID ==> DSN1 SQLID ==> LOCATION ==>

Creator ===> DSN8710

Table/View name ===> EMP

First row to retrieve ===> (Optional - default = 1) Maximum # of rows to retrieve ===> (Optional - default is maximum) Uncommitted read ===> NO (YES, NO)

Use selection criteria ===> YES (YES, NO) Use existing selection criteria ===> NO (YES, NO)

Relationship DSN ===>

These fields define your environment

This is the DB2 table or view to be browsed

You can modify your personal DB2 definitions by selecting PARMS on the Primary Options menu, and then selecting ENVIRONMENT.

INSYNC HANDBOOK

Page 103: In Oh

How do I work with DB2 tables? 103

Type the name of a table to be viewed (this can be the full, 128-character, long name) and type YES for Use selection criteria.

The Selection Criteria panel is displayed:

This is similar to the facility that you met much earlier – see ‘What are “subset selection criteria”?’ on page 34 – but with some changes and extensions:■ you are shown the primary keys marked as “P1”, “P2”, etc., and (if

selected in your user profile) any foreignkey columns marked as “F”;

■ you can specify that you want the rows sorted according to the values of one or more columns, in ascending or descending sequence;

■ you can specify that you wish to display only selected columns, or to exclude selected columns, and you can define the sequence in which columns are presented;

Control Selected Otherwise

First row to retrieve

Maximum # of rows to retrieve

Use these two numbers to create a subset of records by numeric sampling

Your selection criteria are applied to all records.

Uncommitted read

YES: InSync opens the table even if another user has an Exclusive lock.

NO: InSync won’t open the table if it’s locked.

Relationship DSN

This field is used only by the RELATE command – see ‘What’s this ‘relationship’ stuff all about?’ on page 106.

ENHANCED in 5.300Entry of long Creator and Table/View names allowed

InSync SELECT - TABLE DSN8710.EMP --------------------------------------------- COMMAND ===> SCROLL ===> PAGE

Select/order columns "S"/"n", Order rows "A(n)", "D(n)", enter WHERE clause

Display/Edit generated SQL ===> NO (YES, NO) Display Save SQL panel ===> NO (YES, NO)

COLS 1-29 C COL COLUMN NAME FORMAT K SEL O WHERE MORE-> ********************************** TOP OF DATA ********************************

1 EMPNO CHAR(6) P1 2 FIRSTNME VARCHAR(12) 3 MIDINIT CHAR(1) 4 LASTNAME VARCHAR(15) 5 WORKDEPT CHAR(3) F 6 PHONENO CHAR(4) 7 HIREDATE DATE 8 JOB CHAR(8) 9 EDLEVEL SMALLINT

10 SEX CHAR(1) 11 BIRTHDATE DATE 12 SALARY DECIMAL(7,2) 13 BONUS DECIMAL(7,2) 14 COMM DECIMAL(7,2)

********************************* BOTTOM OF DATA ******************************

ENHANCED in 5.300Can now exclude columns – as well as select columns

INSYNC HANDBOOK

Page 104: In Oh

CHAPTER 9 ■ DB2 and IMS databases ■ How do I work with DB2 tables?104

■ you specify which rows to display using terms such as “='SALES'” or “BETWEEN 1 AND 99”, just as you would when writing SQL to retrieve information from a database.

For example:

Press Enter. The first row in the table is displayed:

The navigation commands are the same as before. You can also use the TFORMAT command to display several rows at the same time:

InSync SELECT - TABLE DSN8710.EMP --------------------------------------------- COMMAND ===> SCROLL ===> PAGE

Select/order columns "S"/"n", Order rows "A(n)", "D(n)", enter WHERE clause

Display/Edit generated SQL ===> NO (YES, NO) Display Save SQL panel ===> NO (YES, NO)

COLS 1-29 C COL COLUMN NAME FORMAT K SEL O WHERE MORE-> ********************************** TOP OF DATA ********************************

1 EMPNO CHAR(6) P1 S a2 > 100 2 FIRSTNME VARCHAR(12) 1 d1

RHS of WHERE clause

First sort column, descending

Display this column first

Second sort column, ascending

Display this column

LHS of WHERE clause

InSync BROWSE - TABLE DSN8710.EMP --------------------------------------------- COMMAND ===> SCROLL ===> PAGE

Row 1 of 43 selected rows

COL COLUMN NAME FORMAT/LENGTH K N DATA ********************************** TOP OF DATA ********************************

1 EMPNO CHAR(6) P1 000010 2 FIRSTNME VARCHAR(12) 9

CHRISTINE 3 MIDINIT CHAR(1) I 4 LASTNAME VARCHAR(15) 4

HAAS 5 WORKDEPT CHAR(3) F N A00 6 PHONENO CHAR(4) N 3978 7 HIREDATE DATE(10) N 1965-01-01 8 JOB CHAR(8) N PRES 9 EDLEVEL SMALLINT(2) N 18

10 SEX CHAR(1) N F 11 BIRTHDATE DATE(10) N 1933-08-14 12 SALARY DECIMAL(7,2) N +52750.00 13 BONUS DECIMAL(7,2) N +1000.00 14 COMM DECIMAL(7,2) N +99.00

********************************* BOTTOM OF DATA ******************************

INSYNC HANDBOOK

Page 105: In Oh

How do I work with DB2 tables? 105

I want to modify the rowsSelect the EDIT option from the Primary Options menu; the Table/View Specification panel appears:

The basic layout of the panel is similar to that for the BROWSE option; these are the additional control fields:

InSync BROWSE DSN8710.EMP ROW 1 OF 43 COLS 1 - 80 COMMAND ===> SCROLL ===> PAGE

EMPNO FIRSTNME MIDINIT LASTNAME WORKDEPT PHONENO HIREDATE CHAR(6) VARCHAR(12) CHAR(1) VARCHAR(15) CHAR(3) CHAR(4) DATE(10) -PKEY1- -------------- ------- ----------------- -F-NULLA ---NULL ---NULLA ********************************* TOP OF DATA ********************************* 000010 CHRISTINE I HAAS N A00 N 3978 N 1965-0 000020 MICHAEL B THOMPSON N B01 N 3476 N 1973-1 000030 SALLY A KWAN N C01 N 4738 N 1975-0 000050 JOHN B GEYER N E01 N 6789 N 1949-0 000060 IRVING F STERN N D11 N 6423 N 1973-0 000070 EVA D PULASKI N D21 N 7831 N 1980-0 000090 EILEEN W HENDERSON N E11 N 5498 N 1970-0 000100 THEODORE Q SPENSER N E21 N 0972 N 1980-0 000110 VINCENZO G LUCCHESI N A00 N 3490 N 1958-0 000120 SEAN O'CONNELL N A00 N 2167 N 1963-1 000130 DOLORES M QUINTANA N C01 N 4578 N 1971-0 000140 HEATHER A NICHOLLS N C01 N 1793 N 1976-1 000150 BRUCE ADAMSON N D11 N 4510 N 1972-0 000160 ELIZABETH R PIANKA N D11 N 3782 N 1977-1 000170 MASATOSHI J YOSHIMURA N D11 N 2890 N 1978-0 000180 MARILYN S SCOUTTEN N D11 N 1682 N 1973-0 000190 JAMES H WALKER N D11 N 2986 N 1974-0

There is no ‘unformatted display mode’ in InSync for DB2 – rows and columns are displayed using their DB2 data definitions. However, you can use the ZOOM command to provide an unformatted display of the values in a single column.

InSync ---------------- EDIT - Table/View Specification ---------------- InSync COMMAND ===>

DB2ID ==> DSN1 SQLID ==> LOCATION ==>

Creator ===> DSN8710

Table/View name ===> PROJ

Lock table during edit ===> NO (YES, NO) First row to retrieve ===> (Optional - default = 1) Maximum # of rows to retrieve ===> (Optional - default is maximum) Write audit report ===> NO (YES, NO) Uncommitted read ===> NO (YES, NO)

Use selection criteria ===> YES (YES, NO) Use existing selection criteria ===> NO (YES, NO)

Relationship DSN ===>

Control Selected Otherwise

Lock table during edit

YES: InSync locks the table; this disables the SAVE command and the auto-commit of changes.

NO: You can update the table normally.

INSYNC HANDBOOK

Page 106: In Oh

CHAPTER 9 ■ DB2 and IMS databases ■ How do I work with DB2 tables?106

Type the name of a table to be modified (this can be the full, 128-character, long name) and press Enter. The first row in the table is displayed.

PRINT, COPY, EXTRACT and LOAD: any surprises?No. The PRINT option prints selected rows from a table, the COPY option copies selected rows to another table, the EXTRACT option copies selected rows to a dataset, and the LOAD option reverses that flow. You have the usual controls over how the options behave, but there’s nothing significant you haven’t met before.

What’s this ‘relationship’ stuff all about?InSync enables you to define relationships between data in different tables. You do this either using native DB2 Referential Integrity (RI) information, or explicitly by mapping columns between tables.

Relationships online

In the online options BROWSE and EDIT, you can employ relationships (using RI information or defining a relationship dataset) to work with rows from up to three related tables simultaneously.

For example, if you use RELATE RI while browsing a table, InSync lists the relevant RI definitions in the DB2 catalog:

The panel provides a list of tables which are dependent on the table currently being displayed, together with the names of the relationships. Select the appropriate item, and then press Enter. A two-way split screen is used to display one row from the original table, together with any dependent rows from the related table which you selected. For example:

Write audit report

YES: InSync writes before-and-after images of each edited row, to form a human-readable record of your changes.

NO: An audit report is not generated.

Control Selected Otherwise

ENHANCED in 5.300Entry of long Creator and Table/View names allowed

InSync ------------------ RELATED TABLE SELECTION ------------------ InSync COMMAND ===> SCROLL ===> PAGE

C Related table Relname D/P Index DSN8710.PROJ RPP D DSN8710.PROJACT RPAP D DSN8710.DEPT DEPTNO P DSN8710.EMP RESPEMP P DSN8710.PROJ RPP P

********************************* BOTTOM OF DATA **************************

INSYNC HANDBOOK

Page 107: In Oh

How do I work with DB2 tables? 107

You can use RELATE twice, so that related rows from three tables are simultaneously display. At any time only one of the tables is ‘active’ and scrollable; the JUMP command moves focus between them.

Relationships in batch

In the batch options R-EXTRACT, R-DELETE and R-LOAD, you must always define a relationship dataset. You can unload and reload data from up to 100 related tables: these options provide a convenient way of copying information from one database to another.

InSync BROWSE DSN8710.PROJ ROW 3 OF 22 COLS 1 - 80 COMMAND ===> SCROLL ===> PAGE

PROJNO PROJNAME DEPTNO RESPEMP PRSTAFF PRSTDATE

AD3111 PAYROLL PROGRAMMING D21 000230 N +2.00 N 1982-01-0 ------------------------------------------------------------------------------ InSync BROWSE DSN8710.PROJACT ROW 1 OF 7 COLS 1 - 80 COMMAND ===> SCROLL ===> PAGE PROJNO ACTNO ACSTAFF ACSTDATE ACENDATE ********************************* TOP OF DATA ********************************* AD3111 60 N +0.80 1982-01-01 N 1982-04-15 AD3111 60 N +0.50 1982-03-15 N 1982-04-15 AD3111 70 N +1.50 1982-02-15 N 1982-10-15 AD3111 70 N +0.50 1982-03-15 N 1982-10-15 AD3111 80 N +1.25 1982-04-15 N 1983-01-15 AD3111 80 N +1.00 1982-09-15 N 1983-01-01 AD3111 180 N +1.00 1982-10-15 N 1983-01-15 ******************************** BOTTOM OF DATA *******************************

The upper pane displays a single row

The lower pane displays rows which are dependent on that row

INSYNC HANDBOOK

Page 108: In Oh

CHAPTER 9 ■ DB2 and IMS databases ■ How do I work with IMS databases?108

How do I work with IMS databases?Like InSync for DB2, InSync for IMS is a separate product, started from the InSync Primary Options menu. Select the IMS option; the IMS Primary Options menu appears:

I want to view the segments in a databaseSelect the BROWSE option from the Primary Options menu; one of two Database Specification panels appears. If you’re using dynamic PSBs you see this:

Alternatively, if you’re using static PSBs you see this panel:

InSync ------------ Data Manipulation Utility for IMS ------------ Ver version OPTION ===>

0 PARMS - Specify InSync parameters 1 BROWSE - Database browse 2 EDIT - Database edit 3 PRINT - Database print 4 FORMAT - Segment format tables 5 EXTRACT - Extract database records 6 LOAD - Load extracted database records 7 RELATE - Extract Relationships B BATCH - InSync for IMS batch functions T TUTORIAL - Display information about InSync for IMS

Software Excellence from Macro 4 (c) Copyright Macro 4 1991-2004. All rights reserved

InSync ---------------- BROWSE - Database Specification ---------------- InSync COMMAND ===> IMSID => IMS7

Region type ===> DLI (DLI, BMP)

DBDLIB Dsname1 ===> 'IMS7.DBDLIB' Dsname2 ===>

Member name ===> DI21PART (Blank or pattern for selection list)

Exclude segments ===> YES (YES, NO) Use dynamic allocation dataset names ===> YES (YES, NO) Use record layout to format display ===> NO (COB, PLI, YES, NO) Initial segment is: FIRST, or found using OLD or NEW selection criteria ===> FIRST (FIRST, OLD, NEW) Use secondary indexes ===> NO (YES, NO)

FORMAT LIBRARY: (to use concatenated library list, specify Member name only) Dataset name ===> Member name ===> (Blank or pattern for selection list) Display Library List ===> YES (YES, NO)

These fields define your environment

This is the IMS database to be browsed

INSYNC HANDBOOK

Page 109: In Oh

How do I work with IMS databases? 109

Part of the installation process for InSync for IMS is to define the various IMS systems running at your site. Each system is identified by its IMS Subsystem ID, and you can switch between systems by changing the value of the IMSID field. One of the properties of an IMS system definition is whether to use dynamic PSBs.

The basic layout of the panel is similar to that for the dataset BROWSE option; these are the additional control fields:

InSync ---------------- BROWSE - Database Specification ---------------- InSync COMMAND ===> IMSID => IMS7

Region type ===> DLI (DLI, BMP)

PSBLIB Dsname1 ===> Dsname2 ===>

Member name ===> (Blank or pattern for selection list)

DBDLIB Dsname1 ===> 'IMS7.DBDLIB' Dsname2 ===>

Member name ===> DI21PART (Blank or pattern for selection list)

Use dynamic allocation dataset names ===> YES (YES, NO) Use record layout to format display ===> NO (COB, PLI, YES, NO) Initial segment is: FIRST, or found using OLD or NEW selection criteria ===> FIRST (FIRST, OLD, NEW)

FORMAT LIBRARY: (to use concatenated library list, specify Member name only) Dataset name ===> Member name ===> (Blank or pattern for selection list) Display Library List ===> YES (YES, NO)

When using static PSBs, these fields are additionally present.

The Exclude Segments and Use Secondary Indexes fields are omitted.

You can modify your personal IMS definitions by selecting PARMS on the Primary Options menu, and then selecting ENVIRONMENT.

Control Selected Otherwise

Exclude segments

(Dynamic PSBs only)

YES: InSync presents the Segment Exclusion panel, then omits excluded segments.

NO: InSync presents all segments.

Use dynamic allocation dataset names

YES: InSync automatically allocates the dataset names for this DLI region. Always YES for a BMP region.

NO: You must supply matching dataset names for each of the DD names associated with the database.

Initial segment is: FIRST, or found using OLD or NEW selection criteria

FIRST: InSync initially displays the first segment in the database.

OLD: InSync uses saved selection criteria to select the initial segment for display.

NEW: InSync uses the criteria specifed next.

INSYNC HANDBOOK

Page 110: In Oh

CHAPTER 9 ■ DB2 and IMS databases ■ How do I work with IMS databases?110

Type the name of a database to be viewed, YES for Use COBOL or PL/I layout to format display, and supply the details of the format member. Press Enter. The first segment in the database is displayed:

The navigation commands are the same as before. You can view in single-segment formatted mode, single-segment unformatted mode, and multiple-segment (full screen) unformatted mode.

Use secondary indexes

(Dynamic PSBs only)

YES: InSync presents list of secondary indexes, uses that specified.

NO: No secondary index is used.

Before you can select a formatted display of your data, you must have defined a format table – a mapping from segment types to copybook members. A format table is very similar to the select tables described in ‘Multiple layouts’ on page 79.

Control Selected Otherwise

InSync BROWSE - DI21PART ------------------------------------------------------ COMMAND ===> SCROLL ===> PAGE

Segment - PARTROOT - ROOT SEGMENT

Key: 02AN960C10 LVL FIELD NAME FORMAT POS K DATA

********************************** TOP OF DATA ******************************** 01 PART-INFO-REC G 1 02 PART-NO-ID C 2 1 K 02 02 PART-NO C 15 3 K AN960C10 02 FILLER1 C 9 18 02 ROOT-DESC C 20 27 WASHER 02 FILLER2 C 4 47 MAC4

********************************* BOTTOM OF DATA ******************************

ENHANCED in 5.300Prompt message for STORFIND command in IMS Browse/Edit

If you successfully enter a Browse or Edit session by using new FIND criteria, you are prompted “Use STORFIND command to save FIND criteria”. This enables you to save the FIND criteria in a PDS member for re-use.

INSYNC HANDBOOK

Page 111: In Oh

How do I work with IMS databases? 111

I want to modify the segmentsSelect the EDIT option from the Primary Options menu; the Database Specification panel appears – here we show the variant for dynamic PSBs:

The basic layout of the panel is similar to that for the BROWSE option; these are the additional control fields:

InSync BROWSE - DI21PART ----------------------------------------- COLS 1 - 60 COMMAND ===> SCROLL ===> PAGE

LEVEL SEGMENT

__ 1 PARTROOT 02AN960C10 WASHER MAC4 __ 2 STANINFO 02 742 1200 14 __ 2 STOKSTAT 00 AA16511 000000000 EACH000000000000000000 __ 2 STOKSTAT 00 AK2877F M000000000 EACH000000000000270000 __ 2 STOKSTAT 0028009126 000000000 EACH 0000000000 __ 1 PARTROOT 02CK05CW181K CAPACITOR __ 2 STANINFO 02 742 1200 82 __ 2 STOKSTAT 00 VF52906 000001000 EACH000000000000400000 __ 2 STOKSTAT 0025900326 000000340 000000 __ 2 STOKSTAT 0025910926 000000340 000000 __ 1 PARTROOT 02CSR13G104KL KR1J50KS __ 2 STANINFO 02 742 1200 82 __ 2 STOKSTAT 00 DB7455R M000002710 EACH000000000000000000 __ 2 STOKSTAT 00 SK21713 M000002710 EACH000000000000000000 __ 2 STOKSTAT 0025502526 000000000 008000 __ 1 PARTROOT 02JAN1N976B DIODE CODE-A __ 2 STANINFO 02 742 1200 72 __ 2 STOKSTAT 0025509126 000000000 004000 __ 3 BACKORDR 30PR237942

Tabular format displays aren’t available in InSync for IMS.

InSync ----------------- EDIT - Database Specification ----------------- InSync COMMAND ===> IMSID => IMS7

Region type ===> DLI (DLI, BMP)

DBDLIB Dsname1 ===> 'IMS7.DBDLIB' Dsname2 ===>

Member name ===> DI21PART (Blank or pattern for selection list)

Exclude segments ===> YES (YES, NO) Use dynamic allocation dataset names ===> YES (YES, NO) Use record layout to format display ===> NO (COB, PLI, YES, NO) Write audit report ===> NO (YES, NO) DLI log dataset disposition ===> KEEP (KEEP, DELETE) Initial segment is: FIRST, or found using OLD or NEW selection criteria ===> FIRST (FIRST, OLD, NEW) Use secondary indexes ===> NO (YES, NO)

FORMAT LIBRARY: (to use concatenated library list, specify Member name only) Dataset name ===> Member name ===> (Blank or pattern for selection list) Display Library List ===> YES (YES, NO)

INSYNC HANDBOOK

Page 112: In Oh

CHAPTER 9 ■ DB2 and IMS databases ■ How do I work with IMS databases?112

Type the name of a database to be modified, and press Enter. The first segment is displayed.

In full-screen mode, commonly-used line commands include:

Control Selected Otherwise

Print audit report

YES: InSync writes before-and-after images of each edited segment, to form a human-readable record of your changes.

NO: An audit report is not generated.

DLI log dataset disposition

KEEP: InSync retains the log dataset at the end of the session.

DELETE: The dataset is deleted.

To do this use Notes

insert a new segment

I

insert a new segment based on the marked segment

N → overtype_key

insert a new segment structure based on the marked segment and its dependents

NA → overtype_key(s)

insert a copy of the marked segment

R → specify_parent_key

insert a copy of the marked segment and its dependents

RA → specify_parent_key

delete marked segments

D

print marked segments

P

INSYNC HANDBOOK

Page 113: In Oh

How do I work with IMS databases? 113

PRINT, EXTRACT and LOAD: all as expected?Yes. The PRINT option prints selected segments from a table, the EXTRACT option copies selected segments to a dataset, and the LOAD option reverses that flow. You have the usual controls over how the options behave, but there’s nothing significant you haven’t met before.

INSYNC HANDBOOK

Page 114: In Oh

CHAPTER 9 ■ DB2 and IMS databases ■ How do I work with IMS databases?114

INSYNC HANDBOOK

Page 115: In Oh

115

Index

INSYNC HANDBOOK

Aadministering

datasets 87PDS members 88VSAM datasets 86VTOCs 89

audit trails 50, 54, 61

Bbatch processing 91–99batch workarea 98BDAM datasets 17browsing

datasets 19–32DB2 tables 102IMS databases 108record layouts 78

CCOBOL copybooks 17, 26, 30, 78commands

CANCEL 31, 52, 57CAPS 47CHANGE 58, 59, 60COLWIDTH 47COPY 58, 60CREATE 58, 60DELETE 58DOWN 15, 23, 25, 32

END 15, 31, 32, 52, 57EXCLUDE 41, 43, 48EXPAND 47FIND 23, 44, 45, 48FINDSTR 45, 48FLIP 57FORMAT 29, 32FREEZE 43FS 24, 29, 32HELP 15, 16HEX 22, 32, 40HORIHOLD 46INDENT 46INSERT 58IPRINT 74JUMP 107KEY 23LAYOUT 47LEFT 15, 25LOCATE 30MATCH 69NEXT 15, 22, 25, 32PFSHOW 15PREVIOUS 15, 22, 25, 32RBA 23RCHANGE 15, 58, 60RDW 46RECORD 23REFRESH 57RELATE 106

Page 116: In Oh

Index116

RESET 57RETRIEVE 15RETURN 15RFIND 15RIGHT 15, 25SAVE 52, 57SELECT 39, 48, 57SHADOW 42SHOW88 46SORT 55SPLIT 15SUBMIT 94SWAP 15TFORMAT 27, 32UNDO 52, 57, 61UP 15, 23, 25, 32VERTHOLD 46ZOOM 105

comparingdatasets 69

compound tables 84concatenated library lists 30, 82copybooks 17, 26, 30, 78copying

DB2 tables 106

Ddatasets 17, 21

administration 87browsing 19–32comparing 69editing 49–61extracting records 66inserting records 56, 64navigating through 22, 25, 29printing 73rearranging fields 67VSAM administration 86

DB2 tables 14, 17, 102–107browsing 102copying 106editing 105extracting 106loading 106printing 106relationships 106

display modesformatted 27, 28, 58, 59multi-record 24, 27, 28, 59, 60

single-record 21, 27, 28, 58unformatted 21, 24, 28, 58, 60

Eediting

datasets 49–61DB2 tables 105IMS databases 111

error messages 16exiting from InSync 31extracting

dataset records 66DB2 tables 106IMS databases 113

Fformat tables 110formatted display mode 27, 28, 58,

59function keys 15

Hhelp 16HFS files 17

IIMS databases 14, 17, 108–113

browsing 108editing 111extracting 113loading 113printing 113

insertingdataset records 56, 64

InSyncexiting 31starting 20

Lloading

DB2 tables 106IMS databases 113

log dataset 50, 51, 53, 61

Mmenu options

BATCH 93

INSYNC HANDBOOK

Page 117: In Oh

INSYNC HANDBOOK

Index 117

batch CHANGE 92batch COMPARE 92batch DATEAGE 92batch DELETE 92batch EXTRACT 92batch FIELDCOMPARE 92batch FIELDMAP 92batch LAYOUT 92batch LIBRARY 92batch PRINT 92batch SCAN 92batch VTOC 92BROWSE 21, 26, 32, 49, 61, 92COMPARE 69, 72, 75, 92COMPOUND 83CREATE 64, 65, 75, 92DATASET 87DATEAGE 65, 92DB2 14, 20, 102DB2 batch LOAD 92DB2 batch R-DELETE 107DB2 batch R-EXTRACT 107DB2 batch R-LOAD 107DB2 BROWSE 102DB2 COPY 106DB2 EDIT 105DB2 EXTRACT 106DB2 LOAD 106DB2 PRINT 106EDIT 50, 61, 64, 65, 92EXTRACT 66, 67, 75, 91, 92FIELDCOMPARE 92FIELDMAP 67, 75, 92IMS 14, 20, 108IMS batch LOAD 92IMS BROWSE 108IMS EDIT 111IMS EXTRACT 113IMS LOAD 113IMS PRINT 113LAYOUT 78, 92LIBRARY 88, 92LOG/AUDIT 54PARMS 45, 48, 54, 92PRINT 73, 75, 92PROFILE 45, 48SCAN 87, 92SELECT 79TABLES 79, 83, 92TUTORIAL 16

UTILITIES 86, 92VSAM 86VTOC 88, 92

menus 13, 14messages 16multiple FORMATDSN lists 82multi-record display mode 24, 27,

28, 59, 60

Oonline help 16

Ppartitioned datasets 17

searching 87PDS members

administration 88PF keys 15PL/I copybooks 17, 26, 30, 78prefixing name with TSO userid 21Primary Options menu 13, 14, 16,

20, 102, 108printing

datasets 73DB2 tables 106IMS databases 113record layouts 78

RREAD-ONLY mode 43, 51, 55record layouts

browsing 78compound 82multiple 79printing 78segmented 79

relationships between DB2 tables 106

Ssearching

partitioned datasets 87select tables 81, 97sequential datasets 17single-record display mode 21, 27,

28, 58starting InSync 20subset selection criteria 34–41, 48,

Page 118: In Oh

Index118

51, 61

Uunformatted display mode 21, 24,

28, 58, 60

VVSAM datasets 17, 86VTOC administration 89

Wworkarea 98

INSYNC HANDBOOK

Page 119: In Oh

INSYNC HANDBOOK

Page 120: In Oh

www.macro4.com

I N T E L L I G E N T • S Y S T E M S • M A N A G E M E N T


Recommended