CONTENTS
Acknowledgments = xiii
Introduction = xv
Environments Where VSAM Is Used = xv
VSAM Hardware and Software Environments = xvii
How This Book Is Organized = xvii
Part 1
Chapter 1. Introduction to VSAM = 3
Fundamental Advantages of VSAM = 5
Three Major Types of VSAM Data Sets = 7
Pre (Non) VSAM Data Set Organizations = 8
Keyed Sequenced Data Set = 9
Entry Sequenced Data Set = 10
Relative Record Data Set = 10
Comparing VSAM Data Set Organizations = 11
Processing Records = 12
VSAM Alternate Indexes = 12
IBM Reference Manuals = 13
The IDCAMS Utility Program = 15
VSAM Data Set Components = 17
VSAM Catalogs = 18
VSAM Data Set Structure = 20
Storing VSAM Control Intervals on Disk = 22
Disk-Specific Advantages of VSAM Data Sets = 27
Determining Control Area Size = 28
Exercises = 29
Chapter 2. Internal Structure of VSAM Data Sets = 33
The Structure of a Control Interval = 33
The Control Interval Descriptor Field = 34
The Record Definition Field = 35
Non-Spanned KSDS and ESDS Records = 37
Spanned Records (KSDS and ESDS) = 38
Control Interval Summary = 40
Internal Structure of the KSDS Index Component = 40
Defining the KSDS Used to Illustrate I/O Operations = 49
Experimental Verification = 59
Analyzing an Index Record = 60
Exercises = 62
Part 2
Chapter 3. The IDCAMS Utility = 67
Introduction to IDCAMS = 67
The IDCAMS Program Structure = 69
Syntax Fundamentals = 70
Command Condition Codes = 72
The IDCAMS Commands = 76
Parameter Syntax = 76
Control Statement Comments and Blank Lines = 78
Continuing IDCAMS Commands = 79
Detailed IDCAMS Syntax Example = 80
Static and Dynamic Data Set Allocation Concepts = 81
Generic Data Set Names - LISTCAT, ALTER, and DELETE Commands = 84
Data Set Identification Via Catalog Entry = 84
The CATALOG Parameter = 85
JOBCAT and STEPCAT DD Statements = 85
First Level of Data Set Name Qualification = 86
System Master Catalog = 86
IDCAMS Error and Diagnostic Messages = 87
Exercises = 87
Chapter 4. The DEFINE CLUSTER Command = 89
The DEFINE CLUSTER Command and JCL = 89
IDCAMS - an Alternative to JCL = 91
DEFINE CLUSTER Parameters = 92
The NAME (Data Set Name) Parameter = 92
Structural Parameters = 95
CONTROLLINTERVALSIZE (Size) = 98
RECORDSIZE (Average Maximum) = 99
Unique Cluster Space and Suballocated Clusters = 102
Specifying Control Area Size = 105
Disk Timing Conslderations - REPLICATE and IMBED = 106
REPLICATE Coded Only with a KSDS = 107
IMBED Coded Only with a KSDS = 107
The ERASE Parameter = 108
VOLUME (volser1) or VOLUME (volser1 volser2 ... volserN) = 109
REUSE = 109
Data Set Security = 110
RECATALOG = 114
SHAREOPTIONS (value1 value2) = 114
MODEL = 115
DEYRANGES ((low1 high1) (low2 high2) ... (lowN highN)) = 117
ORDERED = 117
SPEED and RECOVERY = 117
Processing Existing VSAM Data Sets = 118
Complete DEFINE CLUSTER examples = 119
Exercises = 121
Chapter 5. IDCAMS Commands for Record Processing = 123
Record Processing Commands = 123
The REPRO Command = 125
The PRINT Command = 136
The EXPORT Command = 142
The IMPORT Command = 148
Exercises = 149
Chapter 6. IDCAMS System - Component Commands = 151
The LISTCAT Command = 152
The ALTER Command = 159
The DELETE Command = 166
The VERIFY Command = 170
Exercises = 172
Chapter 7. Understanding LISTCAT Reports = 175
The Four General Component Categories = 176
STATISTICS Information = 179
ALLOCATION Information = 180
VOLUME Information = 181
Modifying the Standard LISTCAT Report = 182
Part 3
Chapter 8. Alternate Indexes and Secondary Key Processing = 185
Secondary Key Processing Concepts = 185
Performing Secondary Key Processing with Data Sets = 189
Using Alternate Key Indexes with VSAM Data Sets = 193
Constructing a VSAM Alternate Index = 197
Defining a VSAM Alternate Index Data Set = 201
The UPGRADE (UPG) or NOUPGRADE (NUPG) (Cluster Only) Parameters = 202
Other DEFINE ALTERNATEINDEX Parameters = 203
The DEFINE PATH Command = 209
Using Alternate Keys in Application Programs = 213
Exercises = 214
Chapter 9. Processing VSAM Data Sets in a COBOL Application Program = 219
COBOL VSAM Processing = 220
The SELECT Statement = 220
SELECT Statement Clauses = 222
The ACCESS Clause = 223
The FILE STATUS Clause = 225
I-O-CONTROL SECTION Paramotors = 231
The FD Statement and Associated 01 Level Structure = 231
Error Detection and Error handling In a COBOL Program = 233
Using the DECLARATIVES SECTION = 236
COBOL I/O Statements Available with VSAM Data Sets = 237
Detailed VSAM Statement Syntax = 238
VSAM Processing Options Not Available with COBOL = 246
Tracing Execution in a COBOL Program = 250
Exercises = 252
Chapter 10. Entry Sequenced Data Sets = 257
Processing Non-Indexed Data Sets = 257
Overview of ESDS Processing = 258
ESDS Processing Limitations = 259
Internal Structure of an ESDS = 259
Using IDCAMS Commands with an ESDS = 260
ESDS Processing with the IDCAMS Commands = 261
COBOL Syntax for ESDS Processing = 263
Random Processing with an ESDS = 264
Future ESDS Developments = 269
Exercises = 270
Chapter 1. Relative Record Data Sets (RRDS) = 273
Overview of RRDS Processing = 273
RRDS Processing Limitations = 274
Using IDCAMS to Process an RRDS = 278
COBOL Programming Considerations with an RRDS = 281
Dynamic COBOL Update Program = 282
Future RRDS Developments = 286
Exercises = 286
Part 4
Chapter 12. VSAM Catalog Structures = 291
Early VSAM Eras = 291
The Most Recent Major VSAM Era = 295
Catalogs - Their Prupose, Creation, and Management = 296
Exercises = 302
Chapter 13. The Relationship between VSAM Data Sets and MVS JCL Concepts = 305
DD Statements for VSAM Data Sets = 305
VSAM and the SORT/MERGE (SYNCSORT and DFSORT) Programs = 308
VSAM Work Data Sets = 309
The ADRDSSU Utility Program = 309
Describing VSAM Data Sets with the AMP DD Parameter = 309
IDCAMS Commands for Processing Non-VSAM Data Sets = 312
Performing Data Management Functions with IDCAMS and JCL = 314
The Storage Management System (SMS) = 314
New JCL Parameters = 316
Managing VSAM Data Set Parameters = 321
Exercises = 322
Chapter 14. Generation Data Groups = 323
Grouping Multiple Data Sets = 324
Using IDCAMS to Create GDG = 324
Creating Generation Data Sets = 327
Subscript Conventions = 328
Defining a Model Data Set Control Block (DSCB) = 329
Absolute GDG Names = 330
Using IEHPROGM to Create Generation Data Groups = 331
Concatenating Generation Data Sets = 331
Manually Deleting Generation Data Sets = 332
Renaming Generation Data Sets = 332
Exercises = 332
Chapter 15. Linear Data Sets = 335
General Description of the LDS = 335
The General LDS Picture = 339
Data Spaces and Hiperspaces = 340
Callable Services Call Functions = 341
Exercises = 342
Chapter 16. VSAM Processing with CICS = 343
File Processing Operations with a TP Monitorlike CICS = 343
VSAM I/O Operations with CICS = 345
CICS Data Set Organizations = 347
CICS Syntax for Processing VSAM Data Sets = 348
The File Control Table (FCT) = 350
CICS Commands for Processing VSAM Data Sets = 351
Detailed Command Parameter Syntax = 353
VSAM Input Operations with CICS = 354
Full and Partial Keys and Generic Processing = 357
Deadly Embrace Situations = 358
Browse Operations - the STARTBR and RESETBR Commands = 359
Random VSAM Operations with CICS = 362
Alternate Key Processing with CICS = 367
Exceptional CICS Conditions = 369
Exercises = 371
Chapter 17. Optimizing VSAM's Performance = 375
Scope of Optimization = 375
Buffers and Buffer Space = 376
Skip Sequential Processing = 378
String Numbers = 379
Disk I/O Considerations = 379
Locking Out a User Application = 381
Placing Data and Index Components on Different Volumes = 383
Dynamic Allocation Control Interval Size = 383
Catalog Structure and Catalog Search = 384
Exercises = 385
Index = 387