Changes with PKZIP Version 2.5 for MVS

PKZIP Version 2.5 for MVS
User Reference
T4ASI025-00-00
Ascent Solutions Inc.
9009-Springboro Pike,
Miamisburg
Ohio 45342,
USA
Support:
Sales:
Fax:
Internet:
E-Mail:
+1 937 847 2687
+1 937 847 2374
+1 937 847 2375
http://www.asizip.com
sales@asizip.com
support@asizip.com
Targetfour Limited
Imperial House
8 Oaklands Park
Fishponds Road
Wokingham
Berkshire RG41 2FD
United Kingdom
Telephone:
Fax:
Internet:
E-Mail:
HelpDesk:
+44 (0)118 936 4300
+44 (0)118 936 4329
http://www.target4.com
sales@target4.com
+44 (0) 118 936 4100
helpdesk@target4.com
First Edition (September 1999)
This edition applies to the following ASi licensed program:
PKZIP Version 2.5 for MVS (Level 1, September 1999)
All trademarks acknowledged.
Any reference to licensed programs or other material, belonging to any
company, is not intended to state or imply that such programs or material
are available or may be used.
The copyright in this work is vested in Ascent Solutions Inc. and Targetfour Limited and the
document is issued in confidence for the purpose only for which it is supplied. It must not
be reproduced in whole or in part or used for tendering purposes except under an
agreement or with the consent in writing of Ascent Solutions Inc. or Targetfour Limited and
then only on condition that this notice is included in any such reproduction. No information
as to the contents or subject matter of this document or any part thereof either directly or
indirectly arising therefrom shall be given or communicated in any manner whatsoever to a
third party being an individual firm or company or any employee thereof without the prior
consent in writing of Ascent Solutions Inc. or Targetfour Limited.
Copyright© 1989-1999 ASi®, PKWare Inc.® and Targetfour Ltd. All
rights reserved.
Preface
This manual provides usage and reference information, together with
conceptual and functional descriptions of PKZIP Version 2.5 for MVS,
which is called PKZIP for MVS (or PKZIP 2.5 for MVS when it is
necessary to distinguish this level from previous levels of the product) in
this manual.
Users migrating from previous levels of PKZIP for MVS should review
Migration Considerations on page 23.
About this Manual
This manual covers all aspects of PKZIP Version 2.5 for MVS. It provides
all the information required to use PKZIP Version 2.5 for MVS.
 Part 1. An Introduction to PKZIP for MVS provides a general
description of the PKZIP product, which is applicable to all supported
platforms. It goes on to describe the MVS specific features of the
PKZIP for MVS product and provides a simple description of how the
PKZIP for MVS product is used to provide the compression and
decompression of datasets.
 Part 2. File Processing provides more detailed examples of how
specific file types should be processed by PKZIP for MVS.
 Part 3. Advanced Topics provides detailed advice and guidance on
customising and tuning PKZIP specifically to your installation needs.
 Part 4. Additional Facilities provides instructions on the use of other
facilities provided with PKZIP for MVS, specifically the ISPF panel
interface.
 Part 5. GZIP (GNU zip) Processing provides a description of the
GZIP format archive and the GZIP processing supported by PKZIP
for MVS.
 Part 6. Reference Section provides a comprehensive description of
the commands and messages found in PKZIP for MVS.
 Part 7. Appendices provides instructions for the installation and
licensing of the product along with summary of the changes made to
PKZIP version 2 for MVS through the product's history.
 Part 8. Glossary and Index contains a glossary of terms and a
detailed index of the contents of this document.
This manual is intended for persons responsible for implementing and
using PKZIP Version 2.5 for MVS. The manual assumes that the reader
has a good understanding of JCL and dataset processing.
T4ASI025-00-00
Preface
iii
Conventions Used in this Manual
Throughout this manual, the conventions are used:
 Bullets indicate items, or instructions, in a first level unordered list.
The use of the Courier font indicates text used in JCL or JES logs.
The use of <angle brackets> in a command syntax description indicates
a mandatory command parameter.
The use of [square brackets] in a command syntax description indicates
an optional command parameter.
A vertical bar, |, is used in a command syntax description to separate
mutually exclusive command parameter options.
The use of italics indicates a value that must be substituted by the user
(e.g. a dataset name in an example job) or a manual name or section in a
reference.
Related Publications
[1] PKZIP Multiplatform General Information T4008-01. This provides
information on the PKZIP product set and the platforms on which it is
available. Also provided is a general introduction to data compression
and answers to frequently asked questions on the subject.
iv
PKZIP for MVS: User Reference
T4ASI025-00-00
Related IBM Publications
Where necessary, this manual references information in IBM manuals,
using a shortened version of the book title. The full title of the book may
vary depending on the level of the Operating system and the companion
products that are installed. This following table presents the shortened
title and briefly describes the important information contained in the
manual. This information should be sufficient to determine the correct
title for the system on which PKZIP for MVS is executing.
T4ASI025-00-00
Title
Description
Access Method Services
Describes how to create and manage VSAM
datasets. Most installations should use the
Integrated Catalog Facility version of this
manual.
Assembler Programming
Guide
A guide to coding IBM assembler programs.
Authorised Assembler
Language Programs
This manual describes some of the more
technical processing used by PKZIP for MVS,
including dynamic allocation (DYNALLOC).
This manual also lists and explains return
codes from dynamic allocation.
JCL User’s Guide
Describes how to code JCL statements, such
as DD statements.
Macro Instructions for
Datasets
This manual lists the instructions used to
access various IBM datasets. More
importantly, it lists the possible return codes
and reasons codes that can result when
accessing a dataset. The explanation of
these codes can be very helpful in determining
what has gone wrong in PKZIP processing.
System Messages
Explains the messages that are output by
programs while processing on the system.
These messages may be in a number of
different manuals depending on the prefix
used.
Using Data Sets
Describes the attributes and how to process
the various dataset types, including GDGs.
Preface
v
Contents
Preface .................................................................................................................. iii
About this Manual .................................................................................................. iii
Conventions Used in this Manual .......................................................................... iv
Related Publications .............................................................................................. iv
Related IBM Publications ........................................................................................ v
Part 1. An Introduction to PKZIP for MVS
1
Chapter 1. An Introduction to PKZIP ................................................................. 3
Data compression................................................................................................... 3
ZIP archives ............................................................................................................ 3
Cyclic Redundancy Check ...................................................................................... 4
Data Encryption ...................................................................................................... 5
Cross Platform Compatibility .................................................................................. 5
Chapter 2. PKZIP Version 2.5 for MVS............................................................... 7
General features of PKZIP for MVS ....................................................................... 7
MVS specific features of PKZIP Version 2.5 for MVS ............................................ 8
Changes with PKZIP Version 2.5 for MVS ........................................................... 10
Changes with PKZIP Version 2.2 for MVS ........................................................... 19
Restrictions for PKZIP Version 2.5 for MVS ......................................................... 21
Migration Considerations ...................................................................................... 23
Chapter 3. Getting Started ................................................................................ 27
Introduction to PKZIP for MVS.............................................................................. 27
Invoking PKZIP or PKUNZIP using JCL ............................................................... 28
Essentials for running PKZIP and PKUNZIP ........................................................ 29
Compressing a dataset......................................................................................... 31
Viewing the contents of an archive ....................................................................... 32
Decompressing a dataset ..................................................................................... 34
Updating or Refreshing a file ................................................................................ 35
Testing a ZIP archive ............................................................................................ 36
Deleting a file ........................................................................................................ 36
Part 2. File Processing
39
Chapter 4. File Selection and Name Processing ............................................ 41
Selecting files for compression ............................................................................. 41
Selecting files for decompression ......................................................................... 41
Chapter 5. ZIP Files ........................................................................................... 45
File formats ........................................................................................................... 45
File attributes ........................................................................................................ 47
Large file support .................................................................................................. 48
File Size Recommendations ................................................................................. 49
T4ASI025-00-00
Contents
vii
Chapter 6. Processing Sequential Files .......................................................... 51
Processing Sequential files using JCL DD cards ................................................. 52
GDG support ........................................................................................................ 54
Chapter 7. Processing PDS Members ............................................................. 57
Selecting PDS members for compression............................................................ 57
ZIP Archives as PDS members ............................................................................ 59
Creating PDS datasets and members on extraction ............................................ 60
Compressing Load libraries .................................................................................. 61
Chapter 8. Processing VSAM Files .................................................................. 63
Compressing a VSAM File ................................................................................... 64
VSAM ZIP Archives .............................................................................................. 64
Decompressing to a VSAM file ............................................................................. 65
Processing ‘sparse’ RRDS files ............................................................................ 67
Processing unsupported file types ........................................................................ 67
Chapter 9. Processing Magnetic Tapes or Cartridges ................................... 69
Compression of data residing on Tape................................................................. 70
Decompression of data onto Tape ....................................................................... 72
Zip Archives on Tape ............................................................................................ 73
Part 3. Advanced Topics
79
Chapter 10. ZIP Archives .................................................................................. 81
ZIP Archives in MVS ............................................................................................. 81
Old and New ZIP archives .................................................................................... 82
Temporary datasets .............................................................................................. 82
Chapter 11. Compatibility Issues ..................................................................... 85
Using PKZIP 2.5 for MVS with PKZIP version 2 on other platforms ..................... 85
Using PKZIP 2.5 for MVS with PKZIP 2.2 for MVS for MVS ................................ 86
Using PKZIP 2.5 for MVS with PKZIP 2.1 for MVS for MVS ................................ 86
Chapter 12. Cross Platform Support ............................................................... 89
Transferring ZIP archives to and from other platforms ......................................... 89
Unzipping on MVS ................................................................................................ 90
Compressing on VM and decompressing on MVS ............................................... 92
Compressing on WinZip Version 5 and decompressing on MVS ........................ 92
Chapter 13. Performance .................................................................................. 93
I/O implications ..................................................................................................... 93
Use of extended storage by PKZIP ...................................................................... 93
PKZIP speed versus compressed file size ........................................................... 94
HyperZIP License ................................................................................................. 94
Chapter 14. Command Input............................................................................. 99
Configuration File.................................................................................................. 99
PARM parameter ................................................................................................ 100
SYSIN ................................................................................................................. 101
Command Continuation Characters ................................................................... 102
Comment Lines .................................................................................................. 103
viii
PKZIP for MVS: User Reference
T4ASI025-00-00
Chapter 15. Calling PKZIP from a Program................................................... 105
Resource Allocation and Deallocation ................................................................ 105
Invoking PKZIP/PKUNZIP from an assembler program ..................................... 107
Invoking PKZIP/PKUNZIP from a COBOL program ........................................... 109
Chapter 16. Translation and Translation Tables .......................................... 111
PKZIP Translation............................................................................................... 111
Modifying a translation table ............................................................................... 113
Code Pages ........................................................................................................ 116
The supplied translation tables ........................................................................... 118
Part 4. Additional Facilities
121
Chapter 17. Using the ISPF Panel Interface .................................................. 123
Starting the Panel Interface ................................................................................ 123
Main Menu .......................................................................................................... 124
Configuration Panel ............................................................................................ 124
Using the Panels................................................................................................. 125
Compressing Data .............................................................................................. 126
Decompressing Data .......................................................................................... 127
Viewing Archives ................................................................................................ 128
Product License Information ............................................................................... 129
Exiting the Panel Interface .................................................................................. 131
Error Recovery.................................................................................................... 131
Restrictions ......................................................................................................... 131
Part 5. GZIP (GNU zip) Processing
133
Chapter 18. An Introduction to GZIP (GNU zip) ............................................ 135
Why use a GZIP archive?................................................................................... 135
Deflate compression ........................................................................................... 136
GZIP file format .................................................................................................. 136
File contents ....................................................................................................... 137
Cross Platform Compatibility .............................................................................. 137
Chapter 19. Processing GZIP Format Archives ............................................ 139
Creating GZIP archives ...................................................................................... 139
Extracting GZIP files ........................................................................................... 141
GZIP restrictions ................................................................................................. 142
Sample GZIP processing.................................................................................... 144
Part 6. Reference Section
149
Chapter 20. Introduction to PKZIP Commands ............................................ 151
Chapter 21. PKZIP Commands ....................................................................... 153
Summary of available PKZIP commands ........................................................... 154
General PKZIP commands ................................................................................. 159
<dataset name> .................................................................................................. 159
-ADD command .................................................................................................. 161
-ALIASMEMBER................................................................................................. 162
T4ASI025-00-00
Contents
ix
-ARCHBLKSIZ .................................................................................................... 162
-ARCHDCLASS .................................................................................................. 162
-ARCHDIRBLKS ................................................................................................. 163
-ARCHDSORG ................................................................................................... 164
-ARCHINDD........................................................................................................ 164
-ARCHIVE........................................................................................................... 165
-ARCHLRL .......................................................................................................... 166
-ARCHMCLASS.................................................................................................. 166
-ARCHNORLSE.................................................................................................. 167
-ARCHOUTDD ................................................................................................... 167
-ARCHPRIMARY ................................................................................................ 168
-ARCHRLSE ....................................................................................................... 169
-ARCHSCLASS .................................................................................................. 169
-ARCHSECONDARY.......................................................................................... 169
-ARCHSPACE .................................................................................................... 170
-ARCHTYPE ....................................................................................................... 170
-ARCHUNIT ........................................................................................................ 171
-ARCHVOL ......................................................................................................... 171
-ATTRIB .............................................................................................................. 172
-ATTRIBCENTRAL ............................................................................................. 172
-ATTRIBLOCAL .................................................................................................. 172
-BINARY ............................................................................................................. 173
-CACHEMEMORY .............................................................................................. 173
-DELETE command............................................................................................ 174
-DELIM................................................................................................................ 174
-ECHO ................................................................................................................ 175
-FILEPROCERR ................................................................................................. 176
-FILESELERR..................................................................................................... 176
-FRESHEN command ........................................................................................ 177
-FTRAN .............................................................................................................. 178
-GZIP .................................................................................................................. 178
-INDD .................................................................................................................. 178
-KEEPINORDER ................................................................................................ 179
-METHOD ........................................................................................................... 180
-NIA..................................................................................................................... 181
-NIASEP ............................................................................................................. 185
-NOALIASMEMBER ........................................................................................... 186
-NOATTRIB ........................................................................................................ 186
-NOECHO ........................................................................................................... 187
-NOKEEPINORDER ........................................................................................... 187
-NOPATH ........................................................................................................... 187
-NORECURSE.................................................................................................... 188
-NOSYSIN .......................................................................................................... 188
-NOVSAM ........................................................................................................... 188
-PASSWORD ..................................................................................................... 189
-PATH ................................................................................................................. 189
-PCP ................................................................................................................... 190
-RECURSE ......................................................................................................... 191
-STRIP ................................................................................................................ 192
-TAPETODISK .................................................................................................... 192
-TASKS ............................................................................................................... 193
-TEMPBLKSIZ .................................................................................................... 194
-TEMPDCLASS .................................................................................................. 194
-TEMPPRIMARY ................................................................................................ 194
-TEMPSCLASS .................................................................................................. 195
-TEMPSECONDARY .......................................................................................... 195
x
PKZIP for MVS: User Reference
T4ASI025-00-00
-TEMPSPACE .................................................................................................... 195
-TEMPTYPE ....................................................................................................... 196
-TEMPUNIT ........................................................................................................ 196
-TEMPVOL ......................................................................................................... 196
-TERM ................................................................................................................ 197
-TEXT ................................................................................................................. 198
-TIMESTAMP ..................................................................................................... 198
-TRAN ................................................................................................................. 199
-UPDATE command ........................................................................................... 200
-VIEW command ................................................................................................ 200
-ZDW .................................................................................................................. 200
-ZIPCUR ............................................................................................................. 201
Chapter 22. VSAM Specific PKZIP Commands ............................................. 203
General Syntax for creating a VSAM archive ..................................................... 203
Summary of VSAM cluster level commands ...................................................... 204
Summary of VSAM data level commands .......................................................... 205
VSAM Cluster Level commands ......................................................................... 207
-ARCHBUFSPACE ............................................................................................. 207
-ARCHCATALOG ............................................................................................... 207
-ARCHCISZ ........................................................................................................ 207
-ARCHEEXT ....................................................................................................... 208
-ARCHERASE .................................................................................................... 208
-ARCHFILE ......................................................................................................... 208
-ARCHFOR ......................................................................................................... 209
-ARCHFREECA .................................................................................................. 209
-ARCHFREECI ................................................................................................... 209
-ARCHNOERASE ............................................................................................... 210
-ARCHNONSPANNED ....................................................................................... 210
-ARCHNOREUSE............................................................................................... 210
-ARCHNOWRITECHK ....................................................................................... 210
-ARCHOWNER .................................................................................................. 211
-ARCHRECORDSIZE ......................................................................................... 211
-ARCHREUSE .................................................................................................... 212
-ARCHSHR ......................................................................................................... 212
-ARCHSPACE .................................................................................................... 212
-ARCHSPANNED ............................................................................................... 213
-ARCHTO ........................................................................................................... 213
-ARCHWRITECHK ............................................................................................. 214
VSAM Data Level commands ............................................................................. 215
-ARCHDATACISZ .............................................................................................. 215
-ARCHDATAEEXT ............................................................................................. 215
-ARCHDATAFILE ............................................................................................... 216
-ARCHDATANAME ............................................................................................ 216
-ARCHDATANORD ............................................................................................ 216
-ARCHDATANRUS ............................................................................................ 217
-ARCHDATANWCK ........................................................................................... 217
-ARCHDATAORD ............................................................................................... 217
-ARCHDATAOWNER ......................................................................................... 218
-ARCHDATAPRI ................................................................................................. 218
-ARCHDATARUS ............................................................................................... 218
-ARCHDATASEC ............................................................................................... 219
-ARCHDATASHR ............................................................................................... 219
-ARCHDATASPACE........................................................................................... 219
-ARCHDATAVOL ............................................................................................... 220
T4ASI025-00-00
Contents
xi
-ARCHDATAWCK .............................................................................................. 221
Chapter 23. PKUNZIP Commands.................................................................. 223
Summary of general PKUNZIP commands ........................................................ 224
General PKUNZIP commands............................................................................ 228
<dataset name> .................................................................................................. 228
-ALIASMEMBER................................................................................................. 230
-ARCHINDD........................................................................................................ 230
-ARCHIVE........................................................................................................... 230
-ATTRIB .............................................................................................................. 231
-BINARY ............................................................................................................. 231
-CACHEMEMORY .............................................................................................. 231
-CNVEXT ............................................................................................................ 232
-DELIM................................................................................................................ 233
-ECHO ................................................................................................................ 234
-EXTRACT command......................................................................................... 235
-FILEPROCERR ................................................................................................. 235
-FILESELERR..................................................................................................... 236
-FTRAN .............................................................................................................. 237
-HIERARCHY ..................................................................................................... 237
-HLQ ................................................................................................................... 238
-INSERTMEMBER.............................................................................................. 241
-MAKEPDS ......................................................................................................... 241
-MAKESEQ ......................................................................................................... 242
-MAKEVSAM ...................................................................................................... 242
-NOALIASMEMBER ........................................................................................... 243
-NOATTRIB ........................................................................................................ 243
-NOCRLF ............................................................................................................ 243
-NOECHO ........................................................................................................... 244
-NOHIERARCHY ................................................................................................ 244
-NOSYSIN .......................................................................................................... 244
-OUTBLKSIZ ...................................................................................................... 245
-OUTDCLASS .................................................................................................... 245
-OUTDD .............................................................................................................. 246
-OUTDIRBLKS ................................................................................................... 248
-OUTLRL ............................................................................................................ 249
-OUTMCLASS .................................................................................................... 249
-OUTNORLSE .................................................................................................... 250
-OUTPRIMARY................................................................................................... 250
-OUTRLSE ......................................................................................................... 251
-OUTSCLASS ..................................................................................................... 251
-OUTSECONDARY ............................................................................................ 251
-OUTSPACE ....................................................................................................... 252
-OUTTYPE ......................................................................................................... 253
-OUTUNIT .......................................................................................................... 254
-OUTVOL ............................................................................................................ 254
-OVERWRITE .................................................................................................... 255
-PAD ................................................................................................................... 255
-PASSWORD ..................................................................................................... 256
-TAPETODISK .................................................................................................... 256
-TEMPBLKSIZ .................................................................................................... 257
-TEMPDCLASS .................................................................................................. 257
-TEMPPRIMARY ................................................................................................ 258
-TEMPSCLASS .................................................................................................. 258
-TEMPSECONDARY .......................................................................................... 258
-TEMPSPACE .................................................................................................... 259
xii
PKZIP for MVS: User Reference
T4ASI025-00-00
-TEMPTYPE ....................................................................................................... 259
-TEMPUNIT ........................................................................................................ 260
-TEMPVOL ......................................................................................................... 260
-TERM ................................................................................................................ 260
TEST command ................................................................................................. 262
-TEXT ................................................................................................................. 262
-TRAN ................................................................................................................. 263
-VIEW command ................................................................................................ 263
-ZDW .................................................................................................................. 267
-ZIPCUR ............................................................................................................. 268
Chapter 24. VSAM Specific PKUNZIP Commands ....................................... 269
General Syntax for creating an extracted VSAM dataset ................................... 269
Summary of VSAM cluster level commands ...................................................... 271
Summary of VSAM data level commands .......................................................... 273
Summary of VSAM index level commands ........................................................ 274
VSAM Cluster Level commands ......................................................................... 276
-NOPADVSAM.................................................................................................... 276
-PADVSAM ......................................................................................................... 276
-OUTATTR ......................................................................................................... 277
-OUTBUFSPACE ............................................................................................... 277
-OUTCATALOG.................................................................................................. 278
-OUTCISZ ........................................................................................................... 278
-OUTDUPLICATES ............................................................................................ 278
-OUTEEXT ......................................................................................................... 279
-OUTERASE ....................................................................................................... 279
-OUTFILE ........................................................................................................... 279
-OUTFOR ........................................................................................................... 280
-OUTFREECA .................................................................................................... 280
-OUTFREECI ...................................................................................................... 281
-OUTIMBED ....................................................................................................... 281
-OUTKEYS ......................................................................................................... 282
-OUTNOERASE ................................................................................................. 282
-OUTNOIMBED .................................................................................................. 283
-OUTNONSPANNED ......................................................................................... 283
-OUTNOREPLICATE ......................................................................................... 283
-OUTNOREUSE ................................................................................................. 284
-OUTNOWRITECHK .......................................................................................... 284
-OUTOWNER ..................................................................................................... 284
-OUTPRIMARY................................................................................................... 285
-OUTRECORDSIZE ........................................................................................... 285
-OUTRECOVERY ............................................................................................... 285
-OUTREPLICATE ............................................................................................... 286
-OUTREUSE ...................................................................................................... 286
-OUTSECONDARY ............................................................................................ 286
-OUTSHR ........................................................................................................... 287
-OUTSPACE ....................................................................................................... 287
-OUTSPANNED ................................................................................................. 288
-OUTSPEED ....................................................................................................... 288
-OUTTO .............................................................................................................. 289
-OUTWRITECHK ............................................................................................... 289
VSAM Data Level commands ............................................................................. 290
-OUTDATACISZ ................................................................................................. 290
-OUTDATAEEXT ................................................................................................ 290
-OUTDATAFILE.................................................................................................. 291
T4ASI025-00-00
Contents
xiii
-OUTDATANORD............................................................................................... 291
-OUTDATANRUS ............................................................................................... 291
-OUTDATANWCK .............................................................................................. 292
-OUTDATAORD ................................................................................................. 292
-OUTDATAOWNER ........................................................................................... 293
-OUTDATAPRI ................................................................................................... 293
-OUTDATARUS.................................................................................................. 294
-OUTDATASEC .................................................................................................. 294
-OUTDATASHR.................................................................................................. 295
-OUTDATASPACE ............................................................................................. 295
-OUTDATAVOL .................................................................................................. 296
-OUTDATAWCK................................................................................................. 296
VSAM Index Level commands ........................................................................... 297
-OUTINDXCISZ .................................................................................................. 297
-OUTINDXEEXT ................................................................................................. 297
-OUTINDXFILE................................................................................................... 298
-OUTINDXNORD................................................................................................ 298
-OUTINDXNRUS ................................................................................................ 298
-OUTINDXNWCK ............................................................................................... 299
-OUTINDXORD .................................................................................................. 299
-OUTINDXOWNER ............................................................................................ 300
-OUTINDXPRI .................................................................................................... 300
-OUTINDXRUS................................................................................................... 301
-OUTINDXSEC ................................................................................................... 301
-OUTINDXSHR................................................................................................... 302
-OUTINDXSPACE .............................................................................................. 302
-OUTINDXVOL ................................................................................................... 303
-OUTINDXWCK.................................................................................................. 303
Chapter 25. What To Do If You Have a Problem ........................................... 305
Problems using the product ................................................................................ 305
Failures using the product .................................................................................. 306
Patch Notes ........................................................................................................ 308
The Patch Process ............................................................................................. 308
PKZIP for MVS Trace facilities ........................................................................... 311
Chapter 26. PKZIP and PKUNZIP Messages ................................................. 315
Message format .................................................................................................. 315
Details of messages produced by PKZIP and PKUNZIP ................................... 315
Chapter 27. User Abend Codes ...................................................................... 385
WTO Message format ........................................................................................ 385
JES Message format .......................................................................................... 385
Details of WTO messages produced by PKZIP and PKUNZIP .......................... 386
Chapter 28. Licensing Messages ................................................................... 387
Message format .................................................................................................. 387
Details of messages ........................................................................................... 387
Part 7. Appendices
399
Appendix A. Installation Guide ....................................................................... 401
Prerequisites ....................................................................................................... 401
MVS Installation .................................................................................................. 402
Licensing............................................................................................................. 412
xiv
PKZIP for MVS: User Reference
T4ASI025-00-00
Apply Maintenance ............................................................................................. 415
Installation Verification Procedure ...................................................................... 415
Further Tailoring ................................................................................................. 420
ISPF Integration .................................................................................................. 420
Getting Started.................................................................................................... 421
Appendix B. Licensing Guide ......................................................................... 423
Licenses.............................................................................................................. 423
Effects of PKZIP Licensing ................................................................................. 426
Reporting current Licenses ................................................................................. 426
Updating current Licenses .................................................................................. 427
Short Term Licenses .......................................................................................... 428
Appendix C. Change Summaries ................................................................... 431
PKZIP 2.1 Level 0 for MVS (October 1994) ....................................................... 431
PKZIP 2.1 Level 1 for MVS (November 1994) .................................................... 432
PKZIP 2.1 Level 2 for MVS (February 1995) ...................................................... 433
PKZIP 2.1 Level 4 for MVS (August 1995) ......................................................... 434
PKZIP 2.1 Level 7 for MVS (November 1995) .................................................... 435
PKZIP 2.2 Level 1 for MVS (October 1997) ....................................................... 436
PKZIP 2.2 Level 1b for MVS (July 1998) ............................................................ 437
PKZIP 2.2 Level 1c for MVS (July 1999) ............................................................ 439
Appendix D. Characteristics of Data Compression ..................................... 441
Random data ...................................................................................................... 441
Best compression ............................................................................................... 441
Run-length encoding........................................................................................... 442
Lempel-Ziv-Welch compression algorithm ......................................................... 443
Probabilistic compression methods .................................................................... 443
The PKZIP compression algorithms ................................................................... 444
The GZIP compression algorithm - Deflate ........................................................ 445
Part 8. Glossary and Index
447
Glossary ............................................................................................................ 449
Index .................................................................................................................. 451
T4ASI025-00-00
Contents
xv
Part 1. An Introduction to PKZIP for MVS
T4ASI025-00-00
Introduction
1
Chapter 1. An Introduction to PKZIP
PKZIP is a high performance data compression product, containing two
main programs, PKZIP and PKUNZIP:
 The PKZIP program is used to compress or store files into a ZIP
format archive.
This process can be comprehensively controlled using options
allowing such things as compression speed adjustment, password
encryption etc.
 The PKUNZIP program is used to decompress data compressed by
PKZIP.
A 32-bit Cyclic Redundancy Check (CRC) is used to guarantee data
integrity.
A ZIP archive is platform independent, therefore data compressed
(zipped) on one platform (e.g. UNIX) can be decompressed (unzipped)
on another platform (e.g. MVS) by using a compatible version of
PKUNZIP.
Data compression
Data compression is generally achieved by eliminating redundancy within
a data stream. This is normally done by identifying areas of the data that
contain repeated data patterns and replacing them with smaller coded
sequences.
For example, a simple technique known as Run Length Encoding (RLE),
compresses the following sequence of 10 bytes:
E0 E0 E0 E0 E0 E0 E0 E0 E0 E0
by representing it as:
10 E0
PKZIP however, uses far more advanced algorithms to provide enhanced
compression performance. For a more detailed discussion of data
compression techniques and further information on the algorithms used
by PKZIP, please refer to Appendix D. Characteristics of Data
Compression.
ZIP archives
PKZIP uses ZIP archives to store compressed data. You may create as
many ZIP archives as you like. ZIP archives have the following features:
T4ASI025-00-00
An Introduction to PKZIP
3
 Ability to store up to 16,383 files in one ZIP archive.
 Ability to compress files with sizes up to 4 Gigabytes uncompressed.
If files that are greater than 4 Gigabytes need to be processed, then
see Part 5. GZIP (GNU zip) Processing on page 133.
 Ability to create archives up to 4 Gigabytes in size.
Along with the compressed data, the following information is stored for
each file contained within the archive:
 The name of the file.
 The directory date and time of the file.
 The CRC value prior to compression (See the Cyclic Redundancy
Check section below).
 The compression method used on the file.
 The uncompressed and compressed sizes of the file.
 The minimum version of PKZIP required to extract the file.
In addition to this, some versions of PKZIP may also store the following
extra information for each file:
 The version of PKZIP that created the archive.
 A comment about each file in the archive (if any).
 File attributes (hidden, read only, system).
 The ZIP archive comment (if any).
Finally, ZIP archives can also store platform specific information (for
instance, DCB information on MVS) for each file in the archive. When
unzipping a file from a ZIP archive, PKUNZIP will determine if the
information is relevant to the platform on which it is decompressing, if so
this information may be used to create the decompressed file.
Cyclic Redundancy Check
When a Cyclic Redundancy Check (CRC) is performed on a file, the data
making up the file is passed through an algorithm which computes a
value based on the contents of the file. The result is an eight
hexadecimal digit number for that file. A change in the contents of the file
will produce a different CRC value.
The CRC process provides a very good means of determining whether
one file exactly matches another – if the CRC values are the same then
the contents should be the same.
4
PKZIP for MVS: User Reference
T4ASI025-00-00
PKZIP calculates a CRC value for a file before it is compressed and
stores the value, with the compressed version of the file, in the ZIP
archive. When the file is extracted by PKUNZIP, a CRC value is
computed for the extracted file data and compared with the original CRC
value.
If the CRC values stored in the archive and the CRC calculated do not
match, this is reported by PKUNZIP. In this circumstance, it is likely that
there has been some corruption of the data in the ZIP archive.
Data Encryption
PKZIP provides the ability to encrypt compressed data, a password being
required to decompress the data. It is important to note however that
although PKZIP provides an added level of security, it is not 100% secure
and should not be relied upon to protect extremely sensitive data. Please
remember that PKZIP is a data compression tool, not an encryption tool!
Cross Platform Compatibility
A ZIP archive can be transferred from one platform to another, and can
be decompressed or modified by a copy of PKZIP or PKUNZIP which is
running on that platform. The internal format of a ZIP archive is identical
no matter which platform compressed the files that it contains.
To ensure compatibility ZIP archives must be created by PKZIP 2.04g
running on MS-DOS or PKZIP version 2 on other platforms.
If you wish to transfer data across platforms using any other version of
PKZIP you should check with your supplier first to confirm that your
versions of PKZIP are compatible. Please also note that the PKZIP DCL
products are not compatible with the PKZIP 2.04g for MS-DOS or PKZIP
version 2 products.
T4ASI025-00-00
An Introduction to PKZIP
5
Chapter 2. PKZIP Version 2.5 for MVS
PKZIP Version 2.5 for MVS is a full version of the PKZIP product running
on the MVS platform; providing compression and decompression of files
in an MVS environment, and full compatibility with PKZIP 2.04g running
on MS-DOS and PKZIP version 2 on other platforms.
PKZIP for MVS allows for conversion between the ASCII and EBCDIC
character sets. Compressed text files can therefore be transparently
moved between IBM Mainframe environments and systems based on the
ASCII character set, such as MS-DOS or UNIX.
The ZIP file format used by PKZIP for MVS is identical to that used by
version 2.04g of PKZIP on MS-DOS and by version 2 of PKZIP on other
platforms. Compressed files can be copied to another platform and
interpreted by the appropriate version of PKZIP on that platform.
PKZIP Version 2.5 for MVS supersedes all previous versions of PKZIP
Version 2 for MVS. Many new features have been introduced in PKZIP
Version 2.5 for MVS that enhance the performance and capabilities of the
product. The features of the product are summarised in this chapter.
In addition to supporting the PKZIP format archives, PKZIP for MVS can
also be used to create and process GZIP format archives. Further
information on this is included in Part 5. GZIP (GNU zip) Processing.
This chapter focuses on the use of PKZIP for MVS with PKZIP format
archives.
General features of PKZIP for MVS
PKZIP for MVS has the following general features; they also apply to
PKZIP 2.04g for MS-DOS and all other PKZIP version 2 products:
 Compatible with PKZIP on other platforms, such as MS-DOS, UNIX,
VM, VSE, AS/400 etc.
 High compression ratio (variable dependent upon file type)
 Ability to store up to 16,383 files in one ZIP archive
 Ability to compress files with sizes up to 4 gigabytes uncompressed
 Ability to create archives up to 4 gigabytes in size
 32-Bit CRC error checking to ensure data integrity
 Provision of platform independent data for file transfer.
T4ASI025-00-00
PKZIP 2.5 for MVS
7
MVS specific features of PKZIP Version 2.5 for MVS
The following features of PKZIP 2.5 for MVS are specific to the MVS
platform:
 PKZIP 2.5 for MVS supports the compression of, and extraction of,
files to the following:
 Sequential files.
 PDSs and PDS members.
 VSAM files.
 Magnetic tapes and cartridges.
 When compressing files, PKZIP 2.5 for MVS can store allocation
information, such as dataset type, record length with the file in the
ZIP archive. This information should be sufficient to recreate the file
with the same attributes during UNZIP operations. This file attribute
information may also be used by other platforms (for example PKZIP
for VM).
 PKZIP 2.5 for MVS supports the compression of, and extraction to
MVS Load Libraries. Extracted load modules will remain executable
so long as their original blocksize is preserved. See also Restrictions
for PKZIP Version 2.5 for MVS later in this chapter.
 PKZIP 2.5 for MVS supports the compression of, and extraction to
Generation Data Groups (GDGs). A GDG generation may also be
used as an archive.
 PKZIP 2.5 for MVS supports ZIP archives of the following file types:
 Sequential files.
 PDS members.
 VSAM ESDS files.
 Magnetic tapes and cartridges.
 Datasets processed by PKZIP Version 2.5 can be selected and
specified from SYSIN or via a DD statement chosen by the user.
 An ISPF panel interface is available to simplify the use of the various
features within PKZIP 2.5 for MVS.
 PKZIP 2.5 for MVS can be executed in batch from JCL, from ISPF
Panels or invoked from a user’s program (COBOL, ASSEMBLER
etc.).
 PKZIP 2.5 for MVS is Year 2000 compliant.
8
PKZIP for MVS: User Reference
T4ASI025-00-00
All dates displayed by PKZIP 2.5 for MVS use four characters e.g.
1997. Dates stored in ZIP archives on all platforms use six bits to
represent the year offset from 1980, therefore ZIP archives will not
encounter a problem until 2043 (1980+(26-1)). Licensing dates are
based on Local Time expressed as a TOD value which is also not
subject to a problem with Year 2000 dates.
 PKZIP 2.5 for MVS runs on MVS/ESA and higher.
PKZIP 2.5 for MVS runs in AMODE 31 using storage above the
16Mb line wherever possible. When an I/O call is made it switches
temporarily to AMODE 24 and uses only data below the 16Mb line.
 PKZIP 2.5 for MVS offers more control and increased performance
over previous versions. For example, a user can specify that PKZIP
should use more storage to improve performance.
 Configuration file(s) can be used with PKZIP 2.5 for MVS. This allows
default commands to be specified in one place and shared between
users or groups of users. Using the configuration file removes the
need for commonly used commands to be repeatedly specified (for
example, in each user’s commands).
 PKZIP 2.5 for MVS allows specific product components to be
licensed. During evaluation all components are made available to the
user. After evaluation, various components may be selectively
licensed according to the requirements. Please refer to Appendix B.
Licensing Guide for more details.
T4ASI025-00-00
PKZIP 2.5 for MVS
9
Changes with PKZIP Version 2.5 for MVS
Where appropriate, please refer to Part 6. Reference Section for details
of the changed commands. Users migrating from Version 2.2 of PKZIP
for MVS, with a level less than 1c may be interested to review the later
sections, which describe changes introduced at Level 1c.
Commands new with PKZIP Version 2.5
The following commands are new in PKZIP Version 2.5 for MVS:
10
Command
Affects
Description
ALIASMEMBER
Both
Indicates that PDS Alias entries should be
processed
ATTRIBCENTRAL
PKZIP
Extended attributes should be stored in the
Central Directory only
ATTRIBLOCAL
PKZIP
Extended attributes should be stored in the
Local Directory only
DELIM
PKUNZIP
Specifies a record delimiter string to be
removed for text files.
FILEPROCERR
Both
Indicates whether processing will continue
after a processing error with a file.
FILESELERR
Both
Indicates whether processing will continue
after a selection error with a file.
GZIP
PKZIP
Indicates that the output archive will be
created in GZIP (GNU zip) format.
NIA
PKZIP
Name In Archive specification is an
improved PCP command with pattern
matching and multiple commands possible
NIASEP
PKZIP
Name in Archive Separator character.
Character used to separate ‘levels’ for the
Archive name
NOALIASMEMBER
Both
Indicates that PDS Alias entries should not
be processed
NOECHO
Both
Suppresses –ECHO
TAPETODISK
Both
Specifies that a temporary disk base archive
should be used instead of directly
processing an archive from a magnetic
cartridge.
TERM
PKUNZIP
Specifies a file delimiter string to be
removed for text files.
TIMESTAMP
PKZIP
Specifies which if the available dates/times
will be used to set the timestamp for the file
in the PKZIP archive
PKZIP for MVS: User Reference
T4ASI025-00-00
Commands changed with PKZIP Version 2.5
The following commands have been changed at this level of the product.
Command
Affects
Description of change
ARCHVOL
PKZIP
Supports up to 31 volumes
ARCHDATAVOL
PKZIP
Supports up to 31 volumes
HLQ
PKUNZIP
Multiple HLQs can be used, with improved
matching capabilities
INDD
PKZIP
Multiple INDDs can be used
OUTVOL
PKUNZIP
Supports up to 31 volumes
OUTDATAVOL
PKUNZIP
Supports up to 31 volumes
OUTINDXVOL
PKUNZIP
Supports up to 31 volumes
TEMPVOL
Both
Supports up to 31 volumes
Messages changed with PKZIP Version 2.5
The following messages are new or have changed:
T4ASI025-00-00

Licensing system messages 52, 53, 54, 90 and 91 are new.

010, 011, 012, 015 and 017 - display input commands/comments
when these are sourced from SYSIN, PARM or Configuration file.

091 – new message which indicates a processing problem within
ZIP.

092 – new message which indicates that a file that has been selected
for processing will not be processed because of a detected error.
Previously the user would not know which files had not been
processed as a result of an error.

099 – new message used for ZIP processing only to confirm that the
ZIP archive has been created or updated.

101 – start-up message now displays highest patch and date/time.

104 – text has been clarified.

106 – now indicates that the archive could not be opened.

108 – new message to indicate error in GZIP processing.

109 – new message warning that the input archive does not start with
the correct identifier.
PKZIP 2.5 for MVS
11
12

129 – text changed to indicate selections may not match when
selected files are not available for processing (e.g. someone else has
them open).

180 – now includes a dataset name (if appropriate). This message
will cause ZIP processing to stop.

207, 208 – indicates a continuation error in commands that have
been continued on following lines.

237, 238, 239 – generic messages which indicate problems detected
in numerical checks of input parameters.

240, 241 – new messages to indicate redundant or replaced
commands.

329, 330 – now include 331 and 332 (with the STRIP being replaced
with PAD) and the new NIASEP command. These messages have
become generic to other commands rather than specific to STRIP.

331 is now a generic message indicating that the parameter supplied
to a command is not recognised.

350 – indicates that the ARCHINDD is being copied to the
ARCHOUTDD.

360, 361 - these messages have become generic to other
commands (including NIA and HLQ (removing 298 and 299)) rather
than specific to PCP.

402 – message changed to apply to ZIP and GZIP archives.

403 – new message when a ZIP archive can not be processing.

408/409 – new messages used by GZIP processing.

453 and 459 – File added and File Updated messages have been
clarified.

501, 502, 503, 505 and 506 – format changed to output large file
sizes.

521 – new GZIP archive message.

599, 600 – new messages warning of a mismatch of attributes
between UNZIP commands and the files in the archive.

605 – was just a Warning indicating that the Local File Attributes
were not matched correctly, but processing continued. This is now
an error and processing for the file will stop.

612-616 – new messages outputting information for GZIP
processing.
PKZIP for MVS: User Reference
T4ASI025-00-00

796 – new message indicating when record(s) in the output file have
been truncated.

865 – this message is output prior to PKZIP or PKUNZIP starting a
compression to or extraction from a GZIP archive and indicates
which file is currently being processed.

873 – new message indicating internal processing error.

929 – new message indicating if PKZIP suspects that the indicated
load module will not execute correctly when restored.

931 – message has been clarified.

932 – message has been clarified and both the ZIP archive name
and the ‘converted’ name are output.

933 – now includes an attribute indicator flag that can be used to
interpret the unsupported attribute reported.

944 – new message to indicate error in member name when
extracting to a PDS.

945, 946 – new messages to indicate a problem when selecting files
- see FILESELERR command.

947 – new message for PDS Member Alias processing.

948-950 – new messages related to files and archives > 4GB.

951 – new message related to Archive ‘directory’ entries.

953 – new message to indicate that a file has been skipped because
it is ‘busy’.

954 – new warning message to indicate that a non PDS file (with no
member name) has been selected for placement in a PDS dataset.

955 – new warning message indicating that the Global Configuration
file is busy.

956 – new error message to indicate that to unzip the selected file, a
non PDS file would have to be overwritten with a PDS dataset.

957 – new error message indicating that a selected file could not be
found – usually associated with a missing DD statement.
ISPF Interface Changes
The Interface has been updated and made more user friendly. In
addition:

T4ASI025-00-00
Job cards can now be supplied for the generated batch JCL
PKZIP 2.5 for MVS
13

SMS allocation details and a UNIT specification are now supported
for the temporary ‘Browse’ datasets.

The Translation Tables specified on the Configuration panel are used
for all ISPF processing.

The interface can now use either the Userid or the TSO PREFIX as
the high level qualifier for the configuration and work datasets.

Values entered in most panels are now ‘remembered’ across uses of
the panel (within the same TSO session).

Dataset names are displayed in quotes to indicate that the TSO User
prefix will not be concatenated in front of the specified name.

There is no longer a requirement for each user to specify the load
library to be used, as it is set during installation for all users.

The ‘V’ command option, previously used only in the ZIP panel, is
now specified using ‘View’ and is available from both the ZIP and
UNZIP panels.
Other changes with PKZIP Version 2.5
PKZIP 2.5 for MVS has introduced other changes. These and the impact
that these might have on existing PKZIP processing are documented in
this section:
14

File selection has been re-written for both PKZIP and PKUNZIP to;
simplify the processing, remove a number of anomalies and to speed
up the process. There is a small chance that for complicated
selections, the same selection string will not select the same files in
PKZIP 2.2 for MVS and PKZIP 2.5 for MVS. Where complicated
selection criteria is used, it is recommended that the user check that
the same file(s) are selected under both levels.

PKZIP and PKUNZIP will now, by default, output the input
commands. This output can be suppressed using the –NOECHO
command. Users who do not wish to see the input commands will
need to change their input commands to specify –NOECHO,
however –ECHO is recommended.

The ability to continue commands on subsequent SYSIN or
Configuration File records, as described in Chapter 14. Command
Input.

The ability to include comments as SYSIN or Configuration File
records (in both system wide and step specific configuration files), as
described in Chapter 14. Command Input.

The output now distinguishes commands input from SYSIN, the
PARM option and the Configuration file (system wide or step specific)
using different message numbers, 010, 011 and 012 respectively.
PKZIP for MVS: User Reference
T4ASI025-00-00
T4ASI025-00-00

For VSAM processing, ARCHVOL and OUTVOL processing has
been changed so that they specify the volumes at the cluster level
only. In PKZIP 2.2 for MVS, the use of these commands was
equivalent to coding the associated *DATAVOL and *INDXVOL with
the same volume identified. Now it is possible (though not
necessarily desirable) to independently specify cluster, data and
index level volume specifications.

When compressing a VSAM datasets, the associated VOLUME
information (for the DATA and INDEX components) is now collected
into a single attribute, which may be used when extracting the
dataset. In PKZIP 2.2 for MVS, the volume information was collected
into multiple attributes and only the first was used when extracting the
dataset.

In previous releases, the record format and block size for the
temporary file (TEMPTYPE and TEMPBLKSIZ) have defaulted to the
same values as the equivalent ARCH command. In this release, the
record format defaults to Undefined record format (TEMPTYPE(U))
and the block size for the temporary file is calculated to give ½ track
blocking.

PKUNZIP will warn the user:
* If ZDW is specified on UNZIP but was not specified on ZIP and
* If the TEXT/BINARY and the file’s Text/Binary flag are mismatched.
In addition, invalid ZDW values are now detected and processing is
stopped.

In previous releases of PKZIP, the PAD character, which can be
specified to pad fixed length records, was assumed to be in ASCII.
However the documentation suggested that the PAD character was
specified in EBCDIC. In this release the product now matches the
documentation, i.e. the PAD character is specified in EBCDIC. Any
PKUNZIP processing that included the –PAD command should be
checked to ensure that the appropriate PAD character has been
specified.

The functionality provided by the PCP command is provided more
effectively using the NIA command. The PCP command will be
removed in a future release. It is recommended that users replace
PCP commands with NIA commands. Note that in some situations,
particularly when processing members of a PDS, the direct
replacement of the ‘PCP’ command with a ‘NIA’ command might
produce different file names. Users currently using PCP commands
with PDS members are advised to carefully review the two
commands and adjust the parameters of the NIA command
appropriately - it is possible to achieve equivalent conversion. In
general, when converting PCP to NIA commands, review the
descriptions of both commands to ensure equivalent function.

The functionality provided by the HLQ command is been improved
and the separator character has changed from ‘/’ to ‘,’ (‘/’ is still
supported but may be withdrawn in a future release). Review the
descriptions of the new command to ensure continued compatibility.
PKZIP 2.5 for MVS
15
16

The Licensing System has been updated to Version 4.04. The only
visible difference is the inclusion of a CPU Table when reporting on
the current licenses. This level uses Local time when PKZIP is
installed for evaluation and provides a new Short Term License
facility.

When using the system wide Configuration file
(PKZIP.CONFIG.UNZIP and PKZIP.CONFIG.ZIP), previous
processing would terminate immediately if the file was held for
update by another task. The processing will now attempt the access
the configuration file a number of times, warning the user if the file is
not available. This processing will output message 955 (a number of
times) to the console.

Some error detection processing has changed resulting in slightly
different messages with different return codes. In all cases however
the return code will still be greater than 16.

The SMS Classes for VSAM files are now retained in the archive. –
OUTSMSxCLASS commands are now used for output VSAM
clusters.

When using PKZIP with ARCHINDD and ARCHOUTDD, previous
processing would not create the ARCHOUTDD file if there is no
match for file selections made. PKZIP 2.5 will create the output
archive as a copy of the input archive, and issue message 350
(Warning) to indicate that this is what it has done.

PKZIP and PKUNZIP both ENQ using the Archive name specified in
the -ARCHIVE command to prevent other tasks attempting to update
the archive while it is in use.

PKZIP will now prevent files > 4GB being processed and archives >
4GB being created. PKUNZIP will not read an archive > 4GB.

Storage ‘leaks’ and file allocation processing has been significantly
improved to assist in the use of ZIP processing via an API.

A Patch module and Patch report are now used to make it easier to
determine which patches have and have not been applied.

In previous releases, some VSAM attributes that were (NULL) or
(NONE) indicating no such value, where still stored in the archive
(OWNER was one such attribute). These are now not stored. No
processing is effected by these changes, but anyone viewing the
details of an archive might see differences.

When unzipping to VSAM datasets using NOCRLF processing it was
possible through a combination of OUTRECORDSIZE and existing
attributes, to get output that contained a Record Descriptor Word
(RDW, normally of the form X’LLLL0000’ where LLLL is the record
length). This possibility has been removed. Any UNZIP processing
using NOCRLF to VSAM files should be reviewed.
PKZIP for MVS: User Reference
T4ASI025-00-00
T4ASI025-00-00

The Operating System identifier used for AS/400 is the same as that
used for Operating Systems using the NTFS file system. When
doing a VIEWDETAIL the source operating system for archives from
either of these platforms will be “NTFS/AS400”, whereas it was just
“AS/400”.

Attributes are now created in a different order. Users using
VIEWDETAIL will see similar attributes but not necessarily in the
same order as for previous releases. Note that the order of the
attributes is not defined. Note also that the PDS User detail attribute
may look different in a VIEWDETAIL but this is does not effect the
used portions of this attribute.

The new TIMESTAMP command has resulted in a change to the way
the time associated with a file in the archive is defined. If the default
option is chosen, the time associated with each file in the archive will
be the time at which the PKZIP processing started. Previously the
time at which the file was written to the archive was used. This time
has no meaning and it is no longer possible to create an archive with
the time set in this way. Review the TIMESTAMP command for more
details.

When unzipping using a combination of the default/stored attributes
and input commands it was possible to get an unusual combination
of Blocksize and Record Length for Record Format F and V files. In
addition, Record Format U output files would usually get the Record
Length set to the Blocksize. This processing has been tidied up so
that output datasets are validly defined when using the defaults and
Record Format U files will get an output Record Length of 0. This
processing will also ‘correct’ (without warning) datasets’ definitions
where these are thought to be invalid, for example Record Format F
dataset with a Record Length and Blocksize that are different will
have the Record Length set to the Blocksize.

When creating a new ZIP archive using a combination of the default
attributes and input commands it was possible to get an unusual
combination of Blocksize and Record Length for Record Format F
files. In addition, Record Format U output files would usually get the
Record Length set to the Blocksize. This processing has been tidied
up in the same way as the output datasets described above.

MVS file attributes can now be directed to the Central Directory (at
the end of the ZIP archive), the Local Directory or both (the default).
Use the new ATTRIB, ATTRIBLOCAL or ATTRIBCENTRAL
commands to control the location of the attributes, as appropriate
when an MVS archive is to be transferred to another platform that
requires the attributes in a specific place.
PKZIP 2.5 for MVS
17
18

ZIP processing now uses the DYNALLOC Dynamic Request Block
Extension so additional allocation messages may be output to the
system log and/or programmer log (and TSO screen when running
under TSO) when a new file is created. This change assists in
problem resolution when there is a dynamic allocation error because
in most cases users can use this text rather than look up the dynamic
allocation error codes. However some informational messages are
also output even when the allocation is successful, so users might
notice additional output. These messages usually indicate default
actions taken by the system when no value is specified and can
usually be suppressed by specifically coding the appropriate
command so that the default is not taken.
For example the following message:
IGD01008I UNIT ASSIGNED UNITSYSALLDA
could be suppressed by coding a UNIT command.

When extracting files, it is possible that jobs that previously ended
with return code of 0 will end with return code of 4 because of new
message 796 (records truncated). Previous levels of PKUNZIP did
not warn users when the output record length was less than the
record length of extracted records.

In previous releases, a number of attributes of a new archive,
including the record length, were incorrectly set to default values
(e.g. record length was set to the blocksize), if they were not
specified, even when an SMS Class (especially Data Class) was
being used. In this release, these values are not set. This may
mean archives are created with different (and perhaps incorrect)
attributes. This can result in unreadable archives, especially if the
archives have been created with record format of F or FB. PKZIP
processing that specifies an ARCHTYPE(F) or ARCHTYPE(FB)
should be checked to ensure that the record length will be set
correctly.

In previous releases when compressing a file, it was possible to
specify a member selection but select a matching sequential file. For
example, the file selection ZIP.INPUT.FILE(MEM) would compress
the member MEM if ZIP.INPUT.FILE was a PDS, but could also
compress the file ZIP.INPUT.FILE if it was a sequential file.
In this release, if a ‘member selection’ has been specified, then only
PDS files will match the selection. Any selections specifying
members where the required dataset may not be a PDS should be
altered appropriately – potentially by coding the file name with and
without member selection.

PKZIP RECURSE processing has been improved and will more
accurately match files. Any commands using the RECURSE option
should be checked to ensure that extra files that may be selected are
actually required.

Each command specified using the PARM JCL option or passed via
the parameter list when using the API, is now each printed on a
separate line. All commands specified via the parameter list will now
be printed – previously only the first 256 bytes would be output.
PKZIP for MVS: User Reference
T4ASI025-00-00

Additional sequential file formats, including VA, VM, VBA, VBM, FA,
FM, FBA, FBM and FBS, are now supported as input and output files.
The Record Format FBS may also be used for a ZIP archive.

The default value for ARCHBLKSIZ and/or ARCHLRL and whether
these values are used, now depends on the ARCHTYPE being
created.

ZIP processing will detect when an archive might exceed 4 GB and
will stop adding files to the archive. Also ZIP processing will detect if
an input file exceeds 4GB and will stop processing that file.

It is possible to specify 0 for both ARCHBLKSIZ and OUTBLKSIZ,
which will allow the system to determine the blocksize.

PKZIP will now detect and prevent compression of VSAM Alternate
Indexes.
In addition, there have been many editorial Changes and improvements
to this manual.
Changes with PKZIP Version 2.2 for MVS
Command changed with PKZIP Version 2.2 Level 1c
With this level, the TEMPMCLASS command has been removed. For
compatibility reasons, support for this command is still included in the
product but this support may be withdrawn in future releases and patches
to this level. It is recommended that users migrating to this level remove
any uses of the command.
Commands new with PKZIP Version 2.2 Level 1b
The following commands are new in PKZIP Version 2.2 Level 1b for
MVS:
-PADVSAM
T4ASI025-00-00
-NOPADVSAM
PKZIP 2.5 for MVS
19
Commands changed with PKZIP Version 2.2 Level 1b
With this level, many redundant and duplicated options and commands
have been removed. For compatibility reasons, support for many of
these commands is still included in the product but this support may be
withdrawn in future releases and patches to this level. It is recommended
that users migrating to this level review the following table and remove
any uses of the commands listed. Where the command has been
removed because it is duplicated, the retained command is listed in
brackets following the removed command.
PKZIP Changes
PKUNZIP Changes
OLDRETURNCODE
OLDRETURNCODE
ARCHATTEMPTS
OUTATTEMPTS
ARCHAUTH
OUTAUTH
ARCHCODE
OUTCODE
ARCHRECOVERY, ARCHSPEED
OUTKEYRANGES
ARCHDATAATT
OUTDATAATT
ARCHDATAAUTH
OUTDATAAUTH
ARCHDATABUFSP (use ARCHBUFSPACE)
OUTDATABUFSP (use OUTBUFSPACE),
ARCHDATACODE
OUTDATACODE
ARCHDATAERAS (use ARCHERASE)
OUTDATAERAS (use OUTERASE)
ARCHDATAFREECA (use ARCHFREECA)
OUTDATAFREECA (use OUTFREECA)
ARCHDATAFREECI (use ARCHFREECI)
OUTDATAFREECI (use OUTFREECI)
OUTDATAKRNG
ARCHDATANERAS (use ARCHNOERASE)
OUTDATANERAS (use OUTNOERASE),
ARCHDATANSPND (use ARCHNOSPANNED)
OUTDATANSPND (use OUTNOSPANNED),
ARCHDATARCVY
OUTDATARCVY (use OUTRECOVERY)
ARCHDATARECSZ (use ARCHRECORDSIZE)
OUTDATARECSZ (use OUTRECORDSIZE)
ARCHDATASPEED
OUTDATASPEED (use OUTSPEED)
ARCHDATASPND (use ARCHSPANNED)
OUTDATASPND (use OUTSPANNED)
OUTINDXATT
OUTINDXAUTH
OUTINDXCODE
OUTINDXIMBD (use OUTIMBED)
OUTINDXNIMBD (use OUTNOIMBED)
OUTINDXNREPL (use OUTNOREPLICATE)
OUTINDXREPL (use OUTREPLICATE)
20
PKZIP for MVS: User Reference
T4ASI025-00-00
Restrictions for PKZIP Version 2.5 for MVS
The following restrictions apply to PKZIP Version 2.5 for MVS.
 ZIP archives created with the PKZIP Data Compression Library
Version 1.5 for MVS cannot be processed.
 In environments that do not use the Integrated Catalog Facility (ICF),
PKZIP cannot function fully. It is unable to rename the temporary
dataset it creates as a ZIP archive to the name specified by the user.
The integrity of the ZIP archive is not impaired in any way and
archived files can be extracted successfully. However, the temporary
dataset name of the ZIP archive should be changed to the name
required by the user after PKZIP has completed.
Most MVS sites use ICF and therefore do not encounter this problem.
 When two (or more) files from a ZIP archive are extracted with the
same MVS dataset name, the last file will overwrite any previous
file(s).
 GDG Bases cannot be compressed or extracted.
 PKZIP for MVS does not support the compression of, and extraction
of, files to the following:
 Spooled datasets
 PDSE files or members
 HFS files
 Spanned files.
 File types and attributes that are supported by PKZIP for MVS are
documented in the following chapters:
 Sequential File support is documented in Chapter 6. Processing
Sequential Files.
 PDS file support is documented in Chapter 7. Processing PDS
Members.
 VSAM file support is documented in Chapter 8. Processing
VSAM Files.
 Tape file support is documented in Chapter 9. Processing
Magnetic Tapes or Cartridges.
 PKZIP for MVS will not process datasets that are spread over more
than 31 volumes.
T4ASI025-00-00
PKZIP 2.5 for MVS
21
 The number of files or PDS members that can be processed in one
operation may be restricted by the number of concurrent DD’s that
can be used in the address space, i.e. the size of the TIOT. In most
installations this will restrict the number of files that can be processed
to around 1630, however increasing the size of the TIOT can
increase this limit. For further information on this limit, see the
documentation for DD statements in the IBM JCL User’s Guide.
 Some IDCAMS DEFINE Cluster options can be specified at the
Cluster, Data (and Index if appropriate) levels. However a few of
these options, when specified using ARCH* or OUT* commands
during PKZIP or PKUNZIP operations, will set only the Data (and
Index) components. This is because some PKZIP ARCH* and
PKUNZIP OUT* commands which apply to Cluster, Data and Index
components, currently set both the data and index attributes and
ignore the Cluster level component. These may in future, set the
Cluster level option only. Commands that may change in this way are
shown in the following table. For these commands, it is
recommended that the ARCHDATA* and ARCHINDX, or OUTDATA*
and OUTINDX* options be used, as these will not change in the
future.
PKUNZIP Command
Comments
ARCHEEXT
Is effectively the same as setting both
ARCHDATAEEXT and ARCHINDXEEXT
ARCHOWNER
Is effectively the same as setting both
ARCHDATAOWNER and ARCHINDXOWNER
OUTEEXT
Is effectively the same as setting both
OUTDATAEEXT and OUTINDXEEXT
OUTOWNER
Is effectively the same as setting both
OUTDATAOWNER and OUTINDXOWNER
 Some IDCAMS DEFINE Cluster options which can be specified at
the Cluster, Data (and Index if appropriate) levels are only retained in
the archive for the Data (and Index) components only. In future, the
Cluster level option may also be stored in the archive. PKUNZIP
options associated with attributes that could change in this way are
shown in the following table:
PKUNZIP Command
OUTOWNER
22
PKZIP for MVS: User Reference
T4ASI025-00-00
 When processing Tape datasets, without a Tape license, PKZIP and
PKUNZIP may request that a Tape be mounted, prior to checking
that the product is not actually licensed to process the Tape. In this
circumstance, the Tape mount must be satisfied before PKZIP for
MVS processing will proceed, even when this processing will just
inform the user that it is not possible to process the Tape.
 PKZIP for MVS will not process catalogued Tape datasets using the
file name. To process a Tape dataset, one of the ‘DD’ commands
must be used and the Tape dataset must be defined using a DD card
in JCL.
 PDS members containing positioning information (for example Load
members with Overlay sections) are not supported. In certain
circumstances these might be processed – see Chapter 7.
Processing PDS Members.
 GZIP (GNU zip) file processing has a number of restrictions as
documented in GZIP restrictions on page 142.
 A ZIP archive is restricted to 4 Gigabytes. However, to ensure that
there is sufficient space to write the control information at the end of
the archive, ZIP processing will calculate the expected size of this
information and will stop adding files when this, added to the size of
next compressed file, exceeds 4 Gigabytes. In practise this means
that the largest amount of compressed data that may be included in
the archive is restricted to 132 Kilobytes less than 4 Gigabytes.
 Dataset Alias entries cannot be used to select datasets.
Specification of alias entries as part of file selection, may cause
unexpected ZIP errors when it attempts to find the associated
dataset. PDS Member Aliases are supported.
Migration Considerations
Compatibility Issues with archives created by previous levels of PKZIP for
MVS are presented in Chapter 11. Compatibility Issues.
Migration considerations from PKZIP Version 2.2
Some processing in PKZIP Version 2.5 has corrected or subtly changed
the way certain commands worked in PKZIP Version 2.2 and before.
When migrating to PKZIP Version 2.5, a PKZIP Version 2.2 user should
review the changes documented in Changes with PKZIP Version 2.5 for
MVS presented earlier in this chapter. In addition to the migration
considerations described in that section, a PKZIP Version 2.2 user should
be aware of the following:
T4ASI025-00-00
PKZIP 2.5 for MVS
23

Cartridge (3480 and 3490) processing has been changed so that by
default these archives are processed directly from the tape rather
than being copied to a temporary (DISK) file. This change has been
found to improve performance. If required, processing can be forced
to use a temporary (DISK) file by specifying the -TAPETODISK
command.

The PKUNZIP –HLQ command has been changed to support
multiple translations. This may cause two problems:

Command input which specified two HLQ commands, would in
previous releases, only use the last command specified. With
PKZIP 2.5 for MVS, all HLQ commands will be used. PKUNZIP
command input should be checked to ensure that this change
does not impact processing.

This translation is now performed in EBCDIC. Previously this
command was translated to ASCII prior to its use. This change
should have no effect, where standard ASCII translation is used.
If non standard translation is used, particularly involving the file
separator characters (‘/’, ‘\’ or ‘.’), these commands should be
reviewed to ensure that they continue to work as required.

The PKZIP –INDD command has been changed to support multiple
input datasets. In previous releases only the last INDD command
would be used. Users who have coded multiple INDDs will see
different results.

When using INDD, it was possible (though not documented in the
manual) to specify a member in the INDD JCL DD card, with a
member selection on the –INDD command. In this situation, only the
member(s) specified on the -INDD command would be compressed
into the archive, the member specified on the JCL DD card would be
ignored. (This is the same processing that would occur if no member
had been specified on the JCL DD card.) This processing has
changed in PKZIP 2.5 for MVS. Now if a member is specified on the
JCL DD statement, this member only is compressed into the archive.
Any member specifications on the INDD command are ignored
(without warning). To ensure compatibility between PKZIP 2.5 for
MVS and PKZIP 2.2 for MVS, any member specification on any DD
statement used for INDD processing should be removed.
Migration considerations from PKZIP Version 2.1
Some processing in PKZIP Version 2.5 has corrected or subtly changed
the way certain commands worked in PKZIP Version 2.1/7 and before. In
addition to noting the considerations listed for PKZIP Version 2.2, when
migrating to PKZIP Version 2.5, a PKZIP Version 2.1 user should be
aware of the following:
24
PKZIP for MVS: User Reference
T4ASI025-00-00

The PKUNZIP –HLQ command now works as documented in the
manual. In PKZIP Version 2.1, in some cases when the <old name>
did not match, the substitution to the <new name> was still made.
For example, when the <old name> was “* *” (i.e. two asterisks
separated by a blank), this could be treated as a match. Users
should verify that –HLQ commands have been coded correctly.

In an SMS environment, where an SMS class had been specified, the
PKZIP 2.1 default values for block size, record length and space
information (type, primary and secondary), directory block (if
applicable), organisation and record format were still specified on the
allocation – (potentially) overriding the SMS class specification. In
PKZIP 2.5 for MVS, these values are only specified on the allocation
if they are actually used, i.e. if the associated commands have been
specified. So an allocation in PKZIP 2.1 could be forced to the
PKZIP default values, whereas using the same commands in PKZIP
2.5 for MVS would allow the SMS class would decide.
All jobs that specify an SMS class should be checked to ensure that
the resultant files will have the correct attributes. Note that this
change could affect both archives and output files.

In PKZIP 2.1 for MVS, –VIEWing an empty file gave no messages
and a return code of 0. In PKZIP 2.5 for MVS this will give message
402 and a return code of 24.

Licensing: PKZIP 2.5 for MVS uses a new licensing utility which
removes some of the restrictions of the licensing system used by
PKZIP 2.1 for MVS. As a result, users migrating to PKZIP 2.5 for
MVS will need to obtain and apply a new license key, as documented
in Appendix B. Licensing Guide.

PKZIP 2.5 for MVS (by default) stores file attributes in the archive.
These provide the default attributes when PKZIP 2.5 for MVS is used
to UNZIP an archive. This could cause archives that are created and
extracted on MVS to behave differently in PKZIP 2.5 for MVS. For
example, PDS members will by default be restored to a PDS,
whereas in PKZIP 2.1 for MVS, the default processing was to restore
each PDS member as a separate sequential file (unless –MAKEPDS
was specified). To replicate PKZIP 2.1 for MVS processing, the
PKZIP 2.5 for MVS command –NOATTRIB may be used for PKZIP
and PKUNZIP, in which case:

PKZIP will not store file attributes in the archive. This is not
recommended.

PKUNZIP will ignore attributes in the archive. This option is
recommended, as it ensures attributes are available if needed.
The new Configuration file (see Chapter 14. Command Input) provides a
useful place to specify standard PKZIP 2.5 for MVS commands without
changing existing command files.
T4ASI025-00-00
PKZIP 2.5 for MVS
25
Chapter 3. Getting Started
This chapter describes some of the most frequently used features and
commands of PKZIP for MVS and how to use them. This chapter covers:

Introduction to PKZIP for MVS.

Invoking PKZIP and PKUNZIP using JCL

Essentials for PKZIP and PKUNZIP.
It then reviews various examples of PKZIP for MVS processing,
specifically:

Compressing a dataset

Viewing the contents of an archive

Decompressing a dataset

Updating or Refreshing a file

Testing a ZIP archive

Deleting a file.
Introduction to PKZIP for MVS
PKZIP for MVS consists of two separate programs:

PKZIP which provides compression of datasets into an archive

PKUNZIP which provides decompression of datasets from an
archive.
To use either of these programs, the user must specify:
T4ASI025-00-00

Commands, which tell PKZIP or PKUNZIP what processing they are
to perform and how they are to do it. Commands are identified by a
preceding hyphen (“-“). For example, -ECHO is the command that
specifies that command input should be reported in the output for the
program.

File selections, which identify the files to compressed into an archive
(PKZIP) or decompressed from an archive (PKUNZIP). File
selections are distinguished from commands because they are not
preceded by a hyphen (“-“).
Getting Started
27
These commands and file selections can be specified in a number of
ways. The most common way, which is the way that will be used in the
examples presented in this chapter, is to run PKZIP and PKUNZIP as
batch jobs using JCL and specify the commands and file selections using
via SYSIN, as shown in the next section.
Invoking PKZIP or PKUNZIP using JCL
In these examples we will be running PKZIP for MVS in batch by
submitting JCL. However, if required, PKZIP for MVS can also be run via
the ISPF panel interface (see Part 4. Additional Facilities) or it can be
called from a user written program (see Chapter 15. Calling PKZIP from
a Program).
The example below demonstrates the basic JCL statements required to
run PKZIP.
//<job card>1
//ZIP
EXEC PGM=PKZIP2,REGION=2M3
//STEPLIB4 DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*5
//SYSIN
DD *6
-ECHO
<commands>7
/*
//
Notes
28
1.
<job card> should be replaced with the job details required for
running this job, in accordance with your installation standards.
2.
To add (compress), update, freshen, delete or view compressed
files within a ZIP archive use the ‘PKZIP’ program. To extract
(decompress), test or view compressed files in a ZIP archive use
the ‘PKUNZIP’ program.
3.
PKZIP for MVS should normally run within a region size of 2Mb,
however this value is dependent on the number and type of files
being processed. If you encounter storage problems then this
value should be increased but please refer to Use of extended
storage by PKZIP in Chapter 13. Performance first.
4
STEPLIB specifies the library that contains PKZIP for MVS.
PKZIP may be placed in the JOBLIB or in one of the libraries
shared by all MVS processing (e.g. LNKLST), in which case
there would be no need to use the STEPLIB DD.
5
SYSPRINT contains all the messages output by PKZIP. The
optional DD statement SYSUDUMP may also be included to
provide additional information in the event of a problem.
6
SYSIN is the usual mechanism for supplying commands to
PKZIP. Alternatively you can use the PARM parameter on the
EXEC statement, or the Configuration file as described in
Chapter 14. Command Input for more information.
PKZIP for MVS: User Reference
T4ASI025-00-00
7
The remaining commands specify the processing to be carried
out by PKZIP. See the examples in this chapter for more details.
Return Codes
PKZIP issues a completion code dependant on the results of the
processing that was carried out. The completion code can take the
following values:
0
Processing has completed without errors being detected.
4
A warning message has been output but processing has
continued.
8 or higher
An error has occurred during processing, please refer to the
error messages for more details.
Each message issued by PKZIP has a completion code value associated
with it. The final completion code issued is the maximum value of the
codes associated with the messages issued during the job step. A return
code greater than zero indicates that there are one or more warning or
error messages in the job output.
Note that throughout the evaluation period, PKZIP issues the warning
message ZIP023W which reminds the user that the license period will
soon expire. As a result, jobs run during evaluation will have a minimum
return code of 04. During this period, it is important that you check all
messages output by PKZIP to ensure that no other warnings have been
overlooked.
Please refer to Chapter 26. PKZIP and PKUNZIP Messages, for details
of the various messages that can be output by PKZIP.
Essentials for running PKZIP and PKUNZIP
As noted previously, the programs PKZIP and PKUNZIP are responsible
for compression and decompression respectively. This section describes
the essential requirements for using these two programs.
PKZIP
PKZIP is used to take a number of datasets and compress these into a
single dataset (ZIP archive). To achieve this, PKZIP needs to be told
three things:
T4ASI025-00-00
1.
The action to perform – this is PKZIP command as shown below
2.
The archive into which the datasets are to be compressed
3.
The files that are to be added to the archive.
Getting Started
29
PKZIP can perform various actions according to one of the following
commands:
[ -ADD | -DELETE | -FRESHEN | -UPDATE | -VIEW ]
The actions are described below. -ADD is the default action if none of the
above actions are specified.
Command
Description
-ADD
Used to add files that are not already present
into a new or existing ZIP archive.
-DELETE
Used to delete selected files from an existing
ZIP archive.
-FRESHEN
Used to update existing files in an existing ZIP
archive.
-UPDATE
Used to add new files to or update existing files
in an existing ZIP archive.
-VIEW
Used to display details of selected files in an
existing ZIP archive.
Each of the actions requires a ZIP archive to process so the
-ARCHIVE(<ZIP dataset name>)
command (or alternative) must always be specified.
Finally we must specify the dataset(s) to be added, deleted, freshened,
updated or viewed in the archive. We can do this using standard MVS
dataset naming, for example:
MY.INPUT.DATA.SEQ
This line identifies a single file that is to be processed by PKZIP.
PKUNZIP
PKUNZIP is used to extract a number of compressed datasets (ZIP files)
from single dataset (ZIP archive). To achieve this, PKUNZIP needs to be
told three things:
1.
The action to perform – this is PKUNZIP command as shown
below
2.
The archive from which the datasets are to be decompressed
3.
The files that are to be extracted from the archive.
PKUNZIP can perform various actions according to one of the following
commands:
[ -EXTRACT | -TEST | -VIEW ]
30
PKZIP for MVS: User Reference
T4ASI025-00-00
The actions are described below. -EXTRACT is the default action if none
of the above actions are specified.
Command
Description
-EXTRACT
Used to extract selected files from an existing
ZIP archive.
-TEST
Used to delete selected files from an existing
ZIP archive.
-VIEW
Used to display details of selected files in an
existing ZIP archive.
Each of the actions requires a ZIP archive to process so the
-ARCHIVE(<ZIP dataset name>)
command (or alternative) must always be specified.
Finally we must specify the dataset(s) to be extracted, tested or viewed in
the archive. We can do this using standard MVS dataset naming, for
example:
MY.INPUT.DATA.SEQ
This line identifies a single file that is to be processed by PKUNZIP.
Compressing a dataset
The following example shows how to compress a dataset using PKZIP
for MVS.
//ZIP
EXEC PGM=PKZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)1
-ARCHUNIT(SYSDA)2
MY.INPUT.DATA.SEQ3
/*
This step could give the following output:
ZIP101I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP453I
ZIP102I
PKZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-ARCHUNIT(SYSDA)
MY.INPUT.DATA.SEQ
Compressed file MY.INPUT.DATA.SEQ as MY/INPUT/DATA/SEQ4 (Deflated 85%)
PKZIP MVS
2.5
level x ending.
T4ASI025-00-00
Getting Started
31
Notes
In this case, the sequential dataset MY.INPUT.DATA.SEQ is to be
compressed into the new ZIP archive OUTPUT.FILE.ZIP, which is
created on a SYSDA volume.
Please refer to Part 6. Reference Section for more information on
individual commands if required.
1.
ZIP archives can be considered as a large envelope or box into
which the compressed files are placed. Please note however that
an empty dataset is not the same as an empty archive. ZIP
archives created by PKZIP for MVS cannot be pre-allocated,
only PKZIP should be used to create new archives.
2.
You should tell PKZIP how to create the ZIP archive, the
recommended minimum information is a volume name, unit
name or a DFSMS storage class. By default ZIP archives are
created as sequential datasets but, if required, you have full
control over the type of archive created using the various -ARCH
commands available.
3.
You tell PKZIP what to compress using a ‘file selection’. Any
command which does not begin with a "-" is considered to be a
file selection. In this example we tell PKZIP to compress the
sequential dataset MY.INPUT.DATA.SEQ.
You can specify a file for compression via a DD statement if you
prefer (see -INDD in Chapter 21. PKZIP Commands) but a file
selection has the advantage of wildcards. For example, to zip up
all your input data files you could type MY.INPUT.DATA.* (see
<dataset name> in Chapter 21. PKZIP Commands for more
information).
4.
To ensure cross platform compatibility, all MVS dataset names
are converted to the standard PKZIP MS-DOS format i.e.
MY/INPUT/DATA/SEQ. When you unzip the file, the conversion
is reversed to recreate the original MVS name.
The compressed version of the sequential dataset is known as a ZIP file
within the ZIP archive.
Viewing the contents of an archive
The following example shows how to view the contents of a ZIP archive
(created in the previous example), using PKZIP for MVS.
//STPZIP
EXEC PGM=PKZIP1,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-VIEW2
/*
32
PKZIP for MVS: User Reference
T4ASI025-00-00
This step could give the following output:
ZIP101I
ZIP010I
ZIP010I
ZIP010I
ZIP501I
ZIP502I
ZIP503I
ZIP505I
ZIP506I
ZIP102I
PKZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-VIEW
Length Method
Size Ratio
Date
Time CRC-32
Name3
---------- ------- ---------- ----- ---------- ----- ----------1969 DeflatN
188 91% 04-04-19xx 11:19 4DA4CA28
MY/INPUT/DATA/SEQ
------------------- ----1969
188 91%
PKZIP MVS
2.5
level x ending.
Notes
1.
The -VIEW command is available via the programs PKZIP or
PKUNZIP.
2.
The -VIEW command has various options that can be used to
tailor the output. For example, if you have multiple files within the
archive then the output can be sorted by the file’s attributes
including name, size and compression ratio.
3.
This example demonstrates a standard view of the archive. It
displays information about the files in the archive including the
original length of the file, the compression method and the
compressed file size.
For a full description of the information provided by the -VIEW command
and the various options available please refer to Chapter 23. PKUNZIP
Commands.
-VIEWDETAIL
One useful option is the -VIEWDETAIL command. It displays the full
technical details, including any file attributes stored, for each file in the
archive.
Running a -VIEW or -VIEWDETAIL on an existing archive can be very
helpful if you are experiencing problems with unzipping from, or adding
to, that archive. For more information on problem solving please refer to
Chapter 25. What To Do If You Have a Problem.
//STPZIP
EXEC PGM=PKZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-VIEWDETAIL
/*
This step could give the following output:
T4ASI025-00-00
Getting Started
33
ZIP101I
ZIP010I
ZIP010I
ZIP010I
ZIP507I
ZIP508I
ZIP509I
ZIP510I
ZIP511I
ZIP512I
ZIP513I
ZIP514I
ZIP515I
ZIP520I
ZIP519I
ZIP519I
ZIP519I
ZIP519I
ZIP519I
ZIP519I
ZIP519I
ZIP519I
ZIP519I
ZIP501I
ZIP102I
PKZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-VIEWDETAIL
Filename: MY/INPUT/DATA/SEQ
File type: Text
Date and Time: 04-Apr-19xx 11:19:16
Compression Method: DeflatN
Compressed Size:
188
Uncompressed Size:
1969
32 bit CRC value : 4DA4CA28
Created by: PKZIP: 2.0 under MVS
Needed to extract: PKUNZIP: 2.0
File attributes
Secondary quantity: 5
Space allocation: Tracks
Record format: Undefined
Volume serial(s): TSTVOL
Block size: 6160
Record length: 6160
Dataset organisation: Sequential
File Creation Date: 19xx0101
Last Reference Date: 19xx0404
PKZIP MVS
2.5
level x
ending.
Note:

The order in which attributes are displayed may vary.
Decompressing a dataset
The following example shows how to extract ("unzip") a dataset using
PKZIP for MVS.
//UNZIP
EXEC PGM=PKUNZIP1,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-OUTVOL(NEWVOL)2
/*
This step could give the following output:
UNZIP101I
UNZIP010I
UNZIP010I
UNZIP010I
UNZIP609I
UNZIP102I
PKUNZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-OUTVOL(NEWVOL)
ZIP file MY/INPUT/DATA/SEQ inflated to MVS file MY.INPUT.DATA.SEQ
PKUNZIP MVS
2.5
level x ending.
Notes
1.
34
To extract files from an archive you must call the PKUNZIP
program.
PKZIP for MVS: User Reference
T4ASI025-00-00
2.
The extracted dataset is created according to the stored file
attributes (if any) and the -OUT commands that override them. In
this case the dataset will be created on the volume NEWVOL.
Information required to create the dataset which is not provided
by the stored file attributes or overridden by the -OUT commands
may be defaulted by PKUNZIP.
If the extracted dataset already exists, then (by default) PKUNZIP will not
overwrite it. To overwrite a dataset or PDS member please use the
-OVERWRITE command. To add new members to existing PDSs use
the -INSERTMEMBER command. Alternatively the extracted file can be
given a new name if required by using the -HLQ command. These
commands are documented in Chapter 23. PKUNZIP Commands.
By default, PKUNZIP will extract all files in the archive. If you have more
than 1 file in the archive, then individual or groups of files can be selected
for extraction if required. See <dataset name> in Chapter 23. PKUNZIP
Commands for more information.
Updating or Refreshing a file
You cannot -ADD a file that already exists in a ZIP archive, however you
can update it using the -UPDATE or -FRESHEN commands.
The –UPDATE and –FRESHEN commands differ in their processing of
files that do not already exist in the archive. If a file selected for
compression doesn't already exist in the archive then -UPDATE will add
it, but -FRESHEN will ignore it.
The following example shows how to update a file in a ZIP archive using
PKZIP for MVS.
//UPDATE
EXEC PGM=PKZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-ARCHUNIT(SYSDA)1
-UPDATE
MY.INPUT.DATA.SEQ
/*
This step could give the following output:
ZIP101I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP459I
ZIP102I
PKZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-ARCHUNIT(SYSDA)
-UPDATE
MY.INPUT.DATA.SEQ
Updated file MY.INPUT.DATA.SEQ as MY/INPUT/DATA/SEQ (Deflated 85%).
PKZIP MVS
2.5
level x ending.
T4ASI025-00-00
Getting Started
35
Notes
1.
It is not necessary but is recommended that you specify a
volume, unit or DFSMS storage class for a new or updated ZIP
archive.
Testing a ZIP archive
The following example shows how to test the integrity of files contained
within a ZIP archive using PKZIP for MVS.
//TEST
EXEC PGM=PKUNZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-TEST1
/*
This step could give the following output:
UNZIP101I
UNZIP010I
UNZIP010I
UNZIP010I
UNZIP608I
UNZIP102I
PKUNZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-TEST
File T4ZIP/SYSTST/SEQ tested ok.
PKUNZIP MVS
2.5
level x ending.
Note
1.
When processing the –TEST command, PKUNZIP will perform
all the actions which would normally occur during an -EXTRACT
command, except that no data is actually extracted or written to a
file. The validity of the data is confirmed by checking it against
the stored CRC value (see Cyclic Redundancy Check in Chapter
1. An Introduction to PKZIP, for more details).
Deleting a file
The following example shows how to remove a file from a ZIP archive
using PKZIP for MVS.
//UPDATE
EXEC PGM=PKZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-ARCHUNIT(SYSDA)1
-DELETE
MY.INPUT.DATA.SEQ
/*
36
PKZIP for MVS: User Reference
T4ASI025-00-00
This step could give the following output:
ZIP101I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP352I
ZIP102I
PKZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-ARCHUNIT(SYSDA)
-DELETE
MY.INPUT.DATA.SEQ
Deleted file MY/INPUT/DATA/SEQ from ZIP archive
PKZIP MVS
2.5
level x ending.
Note
1.
T4ASI025-00-00
It is not necessary but is recommended that you specify a
volume, unit or DFSMS storage class for a new or updated ZIP
archive.
Getting Started
37
Part 2. File Processing
T4ASI025-00-00
File Processing 39
Chapter 4. File Selection and Name Processing
This chapter describes in overview, how to select files for compression
and decompression and how ZIP files (in an archive) and created MVS
datasets are actually named.
Selecting files for compression
Files can be selected for compression in two ways:

Using one or more file selections. This method allows the use of
wildcards to select multiple files.

Via a DD name in the JCL that is referenced using the -INDD
command. This method is useful when writing JCL procedures or
compressing special files such as GDGs.
For more details on selecting files, please refer to the <dataset name>
and -INDD commands in Chapter 21. PKZIP Commands.
ZIP file names
When an MVS file is added to a ZIP archive, its name is converted to the
UNIX like format supported by PKZIP on other platforms.
By default this processing just involves converting the file name to ASCII
and changing the ‘.’ MVS qualifier separators to UNIX directory levels.
So the file MY.INPUT.DATA.SEQ will be stored as
MY/INPUT/DATA/SEQ. PDS members are treated as another level in
the hierarchy, so the member MY.INPUT.DATA.PDS(MEMBER) will be
stored as MY/INPUT/DATA/PDS/MEMBER.
PKZIP processing includes a number of commands that will alter the
default processing, including -PATH/-NOPATH and -NIASEP. The most
important is the –NIA command, which provides the ability to create
almost any combination of characters for the output file name. When
using the –NIA command, be careful to ensure that the generated name
is valid for the target platform.
Selecting files for decompression
ZIP file names
When selecting a file from a ZIP archive, it is helpful to understand ZIP
file names (i.e. the names of files in the archive) and how MVS file names
are converted to ZIP file names that are stored in a ZIP archive.
T4ASI025-00-00
File Selection
41
ZIP file names in a ZIP archive are stored in UNIX format, with ‘/’
separators between levels of the directory and ‘.’ characters between
names and extensions. For example, the file SYSTEM.INI in the
directory WINDOWS could be stored in a ZIP archive with the name
WINDOWS/SYSTEM.INI.
ZIP file selection
There are two ways to select a file:
1.
Using an MVS name.
2.
Using a UNIX style name – this is distinguished from an MVS
name by being surrounded in “” (double quote) characters.
To understand both these options, consider an example ZIP archive,
from which the ZIP file with the name WINDOWS/SYSTEM.INI is to be
extracted.
If the file selection in placed in double quotes, then the file selection is
just compared with the ZIP file name.
e.g. "WINDOWS/SYSTEM.INI" will match.
If it is not in quotes then the file selection is assumed to be an MVS style
dataset name. To do the comparison PKUNZIP must convert the MVS
style name into a 'ZIP file' type name.
e.g. WINDOWS.SYSTEM.INI gets converted to
"WINDOWS/SYSTEM/INI".
Unfortunately this means that the .INI is not interpreted as an extension
(it gets interpreted as a dataset component) so it will not match.
In general, when unzipping a file from another platform, it is best to VIEW
the contents of the ZIP archive and then use the ZIP file name in quotes
to select the file, ensuring that the correct case is used.
e.g. To select: Windows/Autoexec.bat enter
"Windows/Autoexec.bat".
For more details on selecting files for decompression, please refer to
<dataset name> in Chapter 23. PKUNZIP Commands.
Note:
42

In general, use the UNIX style name (i.e. the quotes) to select the
file(s) when the archive is not from an IBM MVS, VSE or VM
platform.

When using an MVS style name (i.e. without quotes) for a file name
that has an extension (e.g. SOURCE.TXT), the file must be selected
using wild cards. For example, if the archive contains the file
SOURCE.TXT, then the MVS selection SOURCE** can be used.
PKZIP for MVS: User Reference
T4ASI025-00-00
MVS file names
When a file is extracted from a ZIP archive, its name must be converted
from the UNIX like format supported by PKZIP on other platforms, to an
MVS format name.
By default, this processing just involves converting the Zip file name to
EBCDIC and changing the ‘\’ separators to ‘.’ MVS level separators. This
conversion is not appropriate if the Zip file name is not suitable for use on
an MVS system (for example it contains blanks).
PKUNZIP processing includes a number of commands that will alter this
default processing, including -CNVEXT. The most important is the –HLQ
command, which can be very useful when the Zip file name is not
appropriate for an MVS system.
T4ASI025-00-00
File Selection
43
Chapter 5. ZIP Files
File formats
A ZIP archive holds files internally in either Text or Binary format, both
formats are compatible with other platforms supported by PKZIP.
Text files contain alphanumeric data which is "human readable" and can
include the characters A-Z, a-z, 0-9 along with various punctuation and
special characters such as ",.@#%()&*. Text files should be compressed
using the -TEXT command.
Binary files contain raw, "machine readable" data i.e. a stream of
hexadecimal values whose meaning is interpreted by the application
which processes it. For example, the value x'1AFE' could be interpreted
as the number 6910. Binary files should be compressed with the
-BINARY command.
If a file contains both text and binary data, then the file should be treated
as all binary and compressed with the -BINARY command. This data
may cause problems when moving ZIP archives across platforms, please
refer to the section on Mixed Binary and Text Files in Chapter 12. Cross
Platform Support for more guidance.
If neither -TEXT nor -BINARY is specified when compressing a file,
PKZIP will read a portion of the selected file to determine its most likely
file type, and will compress it appropriately. The determination process
can affect performance so it is recommended that you specify either the
-BINARY or the -TEXT command if the file type is known.
The -VIEWDETAIL command (see the -VIEW command in Chapter 23.
PKUNZIP Commands for more details) can be used to examine whether
a particular file in a ZIP archive is in binary or text format.
Special consideration must be given to binary files that have variable
record lengths, as discussed later in this chapter.
Text files
Text files held by PKZIP are always in ASCII format, and will normally
have embedded delimiters at the end of each record. This format may
appear strange to an MVS user, but it is common across all versions of
PKZIP and ensures that a text file compressed on an EBCDIC platform
can be decompressed on an ASCII platform (and vice-versa) without the
data content changing.
PKZIP for MVS transforms text files into the required format as they are
compressed. This transformation involves; translating each character in
the file from EBCDIC to ASCII using a translation table, adding a record
delimiter to the end of each record compressed, and adding a file
terminator to the final record in the file.
T4ASI025-00-00
ZIP Files
45
By default, PKZIP uses ASCII CR/LF (x'0D0A') as the record delimiter
and ASCII CR/LF/Ctrl-Z (x'0A0D1A') as the file terminator. These defaults
can be changed using the -DELIM and -TERM commands respectively
(see Chapter 21. PKZIP Commands for more details). It may be useful to
change the record delimiters and file terminator when moving an MVS file
to another platform, such as UNIX (see Record delimiters and file
terminators in Chapter 12. Cross Platform Support for more information).
By default, PKZIP uses a translation table called ASCII for the translation
of characters from EBCDIC to ASCII (and vice-versa). Several translation
tables are available on the installation media, one of which should be
selected for use as the default. The installation process selects the
required table from those available, copying it and naming the copy
ASCII.
It is recognised that the available translation tables may not suffice for all
countries or all situations, especially on those sites where text files are
received from several different countries for processing into a single
format. The source of the translation table used by PKZIP and PKUNZIP
has been supplied, together with instructions for modifying the table to
create new tables (see Chapter 16. Translation and Translation Tables
for more details). This enables sites to modify the translation tables as
required. The -TRAN and -FTRAN commands (see Chapter 21. PKZIP
Commands) can be used to specify a new or different translation table to
be used for a particular operation.
When text files held in a ZIP archive are to be decompressed, PKUNZIP
for MVS will transform them from text files into MVS format files.
PKUNZIP for MVS will examine the files for CR/LF or CR/LF/Ctrl-Z
sequences to determine the record delimiters, and will use these
delimiters to mark the end of each record. Each record is then written into
the format of the dataset specified. Records that are written into fixed
length record datasets are truncated or expanded (with space characters)
as necessary (see also the -STRIP command in Chapter 21. PKZIP
Commands and the -PAD command in Chapter 23. PKUNZIP
Commands). The -NOCRLF command (see Chapter 23. PKUNZIP
Commands) can be used to specify that PKUNZIP for MVS should not
examine the data for record delimiters but should instead use the record
length of the dataset into which the file is being decompressed.
PKUNZIP for MVS will also translate characters within text format files
from ASCII to EBCDIC as they are decompressed. This is done using the
translation table, as described above, or different translation tables can
be specified using the -TRAN command (see Chapter 23. PKUNZIP
Commands).
Note that for text files compressed and decompressed entirely on an
MVS system, the transformation of files into and out of ZIP text format is
entirely transparent.
Binary files
Binary files compressed by PKZIP for MVS are compressed exactly as
found in the MVS files - no translation of the data is performed.
46
PKZIP for MVS: User Reference
T4ASI025-00-00
As a result, no record delimiters are held within binary format files.
Record delimiters cannot be distinguished from data (e.g. is the
sequence x'0A0D' the decimal number '2573' or is it the ASCII CR/LF
record delimiter?). This means that when a binary format file is
decompressed, it is always decompressed at the record size which is the
maximum supported by the dataset into which it is being decompressed.
For certain variable format files, this may mean that the file record
structure is lost, as the file will no longer be identical to that which was
compressed. For these files, it is recommended that the -ZDW command
is used, see below.
Binary files with variable length records
You must use the -ZDW command to preserve the record lengths of a
binary format file with variable record lengths. If you specify the -ZDW
command you should also specify the -BINARY command.
Binary files compressed by PKZIP for MVS with the -BINARY -ZDW
commands are compressed exactly as found in the MVS files - no
translation of the data is performed. In addition, the ZIP file contains, for
each record, the exact size of that record in an area known as the ZDW
(Zip Descriptor Word). When the file is decompressed, these ZDWs are
used to determine the length of the original record. Note that these
records must still fit into the output dataset. Records which are written
into fixed length record datasets are truncated or expanded (with binary
zero characters) as necessary (see also the -STRIP command in
Chapter 21. PKZIP Commands and the -PAD command in Chapter 23.
PKUNZIP Commands).
The -ZDW command was written specifically for IBM mainframe users
(MVS, VM and VSE) and may not be supported on other platforms yet. If
your target platform does not support the -ZDW command then it may not
be possible to preserve variable record lengths of a binary file, in these
cases the file should be compressed with just the -BINARY command
before transfer.
Please refer to the -ZDW command in Chapter 21. PKZIP Commands
for more guidance.
File attributes
When compressing files PKZIP for MVS will store allocation information,
such as dataset type, record length with the file in the ZIP archive. This
information should be sufficient to recreate the file with the same
attributes during UNZIP operations.
This file attribute information may also be used by other platforms (for
example PKZIP for VM or PKZIP for VSE).
T4ASI025-00-00
ZIP Files
47
Attributes created by PKZIP may not be recognised on other platforms
and other platforms may generate attributes that are not recognised by
PKZIP for MVS. Attributes may be displayed using the DETAIL option of
the –VIEW command. Using this command, attributes will be displayed
with a text indicator of their meaning - attributes that are not recognised
will generate a 518 warning message.
File Attribute Storage
File attributes may be stored in two places in the ZIP archive:

In the Central Directory which is at the end of the archive.

In the Local Directory with each file in the archive. PKZIP for MVS
does not use the attributes that are stored in the Local Directory.
When creating an archive, commands can be used to indicate whether
attributes should be stored in the Central Directory, the Local Directory,
both, or neither. If the archive is to be used on the MVS platform, then
the attributes must be in the Central Directory. If the archive is to be used
by a product that supports the file attribute information (e.g. PKZIP for
VM), then the attribute location (Local Central or both) will depend on
what the target product will support. If the archive is intended for a
platform that does not support MVS file attributes (e.g. PC), then these
can be suppressed. Further information is included in Chapter 11.
Compatibility Issues.
The location of attributes is specified using the ATTRIB,
ATTRIBCENTRAL, ATRRIBLOCAL and NOATTRIB commands when
creating the archive. By default attributes are created in both the Local
and Central Directories.
The additional storage requirements for file attributes depends on the
type of file and how it was defined, but the following figures give an
indication:

PDS member: 200 bytes

Sequential file: 100 bytes

VSAM file: 350 bytes
Large file support
When compressing large files, consider the following:

48
The choice of block size will significantly effect the amount of data
that will fit on a single volume. In general, half track blocking (so that
two blocks fit in one track) will give the best performance as well as
best space utilisation for both ZIP archives and ZIP temporary files.
Note that the default allocation for ZIP temporary files is half track
blocking.
PKZIP for MVS: User Reference
T4ASI025-00-00

ZIP Temporary files hold the ‘compressed’ form of the input dataset –
changing the compression method will change the space
requirement for this file and the resultant archive.

When updating an existing archive, sufficient space must be
available for the old archive, the new archive and the temporary files.

When creating a new archive (unless the processing is using
ARCHOUTDD), there should be no need to specify the size
parameters for temporary files (i.e. TEMPSPACE, TEMPPRIMARY
and TEMPSECONDARY) as these will use the ARCH* values by
default. The largest temporary file will be the size of the largest
(compressed) file being added to the archive. Temporary files should
never be larger than the archive. See File Size Recommendations
next.

When using ARCHOUTDD to create a new archive, ensure that the
TEMP* parameters are specified appropriately. Temporary files must
be large enough to hold the ‘compressed’ version of the largest file
being processed. See File Size Recommendations next.
File Size Recommendations
When compressing large files, the default space allocations for the
archive and the temporary files may be insufficient. The following general
rules may be used to calculate more appropriate sizes for the primary
and secondary extents.
Note that it is possible to use a Temporary disk archive when processing
a Tape based archive. In this case, the size specified should match the
data in the Tape archive.
Archive File Size
These sizes are specified using the ARCHPRIMARY and
ARCHSECONDARY commands.

Primary: One quarter (25%) of the total size of the file(s) to be
compressed.

Secondary: One tenth (10%) of the total size of the file(s) to be
compressed.
Temporary File Size
These sizes are specified using the TEMPPRIMARY and
TEMPSECONDARY commands.
T4ASI025-00-00

Primary: One quarter (25%) of the size of the largest file to be
compressed.

Secondary: One tenth (10%) of the size of the largest file to be
compressed.
ZIP Files
49
50
PKZIP for MVS: User Reference
T4ASI025-00-00
Chapter 6. Processing Sequential Files
PKZIP for MVS is capable of:

Compressing Sequential files into a ZIP archive

Creating and processing ZIP archives which are Sequential files

Decompressing data from a ZIP archive into Sequential files.
Examples showing PKZIP for MVS working with Sequential files are
included in Chapter 3. Getting Started (page 27). In particular, review
the sections Compressing a dataset, Viewing the contents of an archive
and Decompressing a dataset.
These examples show PKZIP for MVS processing a single, fully specified
dataset. Wild card processing and/or multiple specifications of fully
specified files can be used to add or extract a number of files to/from an
archive.
In addition to specifying an input dataset by name, PKZIP for MVS
supports the use of JCL DD cards to define sequential datasets to be
processed, as discussed in Processing Sequential files using JCL DD
cards later in this chapter.
Special consideration must be given when processing Generation Data
Groups using PKZIP for MVS, as explained in GDG support later in this
chapter.
The Sequential file handling capability is a licensable option in PKZIP for
MVS. More details on licensing can be found in Appendix B. Licensing
Guide or directly from your PKZIP supplier.
Supported Sequential Record Formats
PKZIP for MVS supports the compression and decompression of the
following sequential Record Formats:

Undefined (U).

Fixed and Variable record formats, specifically F, FA, FB, FM, FBA,
FBM, V, VA, VB, VM, VBA, VBM and FBS.
PKZIP supports ZIP archives of the following sequential Record Formats:
T4ASI025-00-00

Undefined (U).

Fixed record formats, specifically F, FB, and FBS.
Processing Sequential Files
51
Processing Sequential files using JCL DD cards
There are four PKZIP for MVS commands that can be used when
specifying files via JCL DD cards. They are:

-INDD: This command specifies an input DD from which PKZIP
should read records to be placed in the archive.

-OUTDD: This command specifies an output DD to which PKUNZIP
should write records extracted from the archive.

-ARCHINDD: This command specifies an input (archive) DD from
which


PKZIP will extract data to be included in the output archive
(specified by -ARCHOUTDD)

PKUNZIP will extract data to be written to the output file.
-ARCHOUTDD: This command specifies an output (archive) DD to
which PKZIP will write the new archive
The use of these commands can be demonstrated by the following
examples.
Note:

When a dataset is created using an output DD command
(-ARCHOUTDD or –OUTDD), the DCB attributes of the new dataset
must be specified on the DD card.
Creation of a new archive using input file specified by DD
//ZIP
EXEC PGM=PKZIP
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//INPUT
DD DSN=<input file identifier>,DISP=SHR
//SYSIN
DD *
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-ARCHUNIT(SYSDA)
-INDD(INPUT)
/*
In this example, <input file identifier> should be replaced with a suitable
sequential file identifier. This file will be added to the archive identified by
the –ARCHIVE command using the dataset name of the input file. For
more details refer -INDD in Chapter 21. PKZIP Commands.
52
PKZIP for MVS: User Reference
T4ASI025-00-00
Creation of a new archive using -ARCHOUTDD
//ZIP
EXEC PGM=PKZIP
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//OUTARCH DD DSN=<output archive identifier>,
//
DISP=(NEW,CATLOG,DELETE),
//
DCB=(BLKSIZE=22800,RECFM=U),
//
UNIT=SYSDA,SPACE=(BLK,(10,10),RLSE)
//INPUT
DD DSN=<input file identifier>,DISP=SHR
//SYSIN
DD *
-ECHO
-ARCHOUTDD(OUTARCH)
-INDD(INPUT)
/*
In this case, < output archive identifier> should be replaced with a
suitable sequential file identifier. This archive will be created during the
processing and (assuming the processing completes satisfactorily) will
contain the file identified by <input file identifier>. For more details
refer to -ARCHOUTDD in Chapter 21. PKZIP Commands.
Reading of an existing archive using -ARCHINDD
//ZIP
EXEC PGM=PKZIP
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//INARCH
DD DSN=<input archive identifier>,DISP=SHR
//OUTARCH DD DSN=<output archive identifier>,
//
DISP=(NEW,CATLOG,DELETE),
//
DCB=(BLKSIZE=22800,RECFM=U),
//
UNIT=SYSDA,SPACE=(CYL,(1,1),RLSE)
//INPUT
DD DSN=<input file identifier>,DISP=SHR
//SYSIN
DD *
-ECHO
-ARCHINDD(INARCH)
-ARCHOUTDD(OUTARCH)
-INDD(INPUT)
/*
Where <input archive identifier> should be replaced with a suitable
sequential file identifier. This archive will be read and used to create <
output archive identifier> . The output archive (assuming the
processing completes satisfactorily) will contain the file identified by
<input file identifier> in addition to all the files in the <input archive
identifier>. For more details refer to -ARCHINDD in Chapter 21. PKZIP
Commands.
T4ASI025-00-00
Processing Sequential Files
53
Extraction of file from archive to DD
//UNZIP
EXEC PGM=PKUNZIP
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//INARCH
DD DSN=<input archive identifier>,DISP=SHR
//OUTDD
DD DISP=(NEW,CATLG,DELETE),
//
DSN=<output file identifier>,
//
UNIT=SYSDA,SPACE=(TRK,(5,5),RLSE),
//
DCB=(LRECL=133,RECFM=F,DSORG=PS)
//SYSUDUMP DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHINDD(INARCH)
-OUTDD(OUTDD)
<output file selection>
/*
In this example <output file identifier> should be replaced with a
suitable sequential file identifier. This file will be created and should
contain the data associated with the file(s) identified by <output file
selection> in the archive. For more details refer to -OUTDD and
-ARCHINDD in Chapter 23. PKUNZIP Commands.
GDG support
Special consideration is required when compressing and decompressing
GDGs (Generation Data Groups).
PKZIP for MVS will treat datasets from a GDG like any other dataset and
will compress the data normally. PKZIP for MVS will not however,
compress or store the Generation Data Group Base.
GDGs files should be processed using the PKZIP -INDD command and
the PKUNZIP -OUTDD command. Similarly, GDG archives can be read
using the PKZIP and PKUNZIP –ARCHINDD command and written using
the PKZIP –ARCHOUTDD command. These commands allow you to
process GDGs via a DD name. The generation numbers in the DD name
will be honoured. There is no other way to process a generation
number, such as (0). PKZIP name conversion commands, including
NIA and HLQ, do not support the expansion of a generation number.
If you choose not to use the -OUTDD command when decompressing
data or the –ARCHOUTDD command when creating an archive, then
there are two important considerations:
1.
54
Neither PKZIP nor PKUNZIP can convert a generation number to
the desired dataset name. In fact, a file specification in the form
“name(n)” will be processed as a PDS member.
PKZIP for MVS: User Reference
T4ASI025-00-00
2.
MVS considers any dataset ending with the qualifier ‘.GxxxxVyy’
(where xxxx and yy are 4 and 2 digit numbers respectively e.g.
.G0301V02) to be a member of a Generation Data Group. MVS
will not allow datasets to be created with the ‘.GxxxxVyy’ low level
qualifier unless a Generation Data Group Base exists. If the
GDG Base does not exist, PKZIP or PKUNZIP will report an error
similar to the following:
“..901E Unable to allocate file name, DYNALLOC error code
5708”.
If the Generation Data Group Base does not exist or cannot be created
prior to decompression, then the data can still be extracted by modifying
the name of the target dataset. For example:
If the ZIP archive contains files like:
T4ASI.GDGBASE.G0001V00
T4ASI.GDGBASE.G0002V00
T4ASI.GDGBASE.G0003V00
Then use the following PKUNZIP command to modify the destination:
-HLQ(T4ASI.GDGBASE.G,T4ASI.NOBASE.X)
This will extract the ZIP files to the following datasets:
T4ASI.NOBASE.X0001V00
T4ASI.NOBASE.X0002V00
T4ASI.NOBASE.X0003V00
The extracted data will not be part of a Generation Data Group.
Example of use of GDGs
The following shows an example of JCL which uses GDGs for the input
archive, the output archive and for the input file.
//ZIP
EXEC PGM=PKZIP
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//INPUT
DD DSN=INPUT.GDG(0),DISP=SHR
//ARCHIN
DD DSN=ZIP.TEST.GDG(0),DISP=SHR
//ARCHOUT DD DSN=ZIP.TEST.GDG(+1),
//
DISP=(NEW,CATLOG,DELETE),
//
DCB=(BLKSIZE=22800,RECFM=U),
//
UNIT=SYSDA,SPACE=(CYL,(1,1),RLSE)
//SYSIN
DD *
-ECHO
-ARCHINDD(ARCHIN)
-ARCHOUTDD(ARCHOUT)
-INDD(INPUT)
/*
T4ASI025-00-00
Processing Sequential Files
55
Chapter 7. Processing PDS Members
PKZIP for MVS is capable of:

Compressing PDS members into a ZIP archive

Creating and processing ZIP archives which are PDS members

Decompressing data from a ZIP archive into a PDS member.
The PDS member handling capability is a licensable option in PKZIP for
MVS. More details on licensing can be found in Appendix B. Licensing
Guide or directly from your PKZIP supplier.
Supported PDS Files
Multiple Volume PDS files are not supported (due to IBM restrictions). If
multiple volumes are specified for a PDS that is created by PKZIP for
MVS, only the first volume will be used.
PKZIP for MVS supports the compression and decompression of
members of PDS datasets with the following record formats:

Undefined (U), see Compressing Load libraries later in this chapter
for more information.

Fixed and Variable Record Formats, specifically F, FA, FM, FB, FBA,
FBM, V, VA, VB, VM, VBA and VBM.
PKZIP supports ZIP archives that are members of PDS datasets with the
following Record Formats:

Undefined (U).

Fixed Record Formats, specifically F and FB.
PKZIP PDS processing works with PDS members rather than PDS
datasets. If there are no members in a PDS selected for compression,
then no files will be added to the archive. When decompressing, a PDS
dataset will only be created if there is a member to be placed in it.
Selecting PDS members for compression
Members can be selected for compression file selection or via a DD
statement. The following examples demonstrate how this can be
achieved:
T4ASI025-00-00
Processing PDS Members
57
File Selection
Selecting members via file selection allows the use of wildcards to select
multiple members at the same time.
//ZIP
EXEC PGM=PKZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-ARCHUNIT(SYSDA)
<file selections>
/*
Where <file selections> should be replaced with a suitable file
selection(s), examples of which are shown below. For more details, refer
to <dataset name> in Chapter 21. PKZIP Commands.
Examples of File Selection
To compress a PDS member, replace <file selections> with:
MY.INPUT.PDS(MEMBER1)
To compress multiple PDS members, replace <file selections> with:
MY.INPUT.PDS(MEMBER1,MEMBER2,MEMBER3)
To compress multiple PDS members using wildcards, replace <file
selections> with:
MY.INPUT.PDS(MEM*)
To compress all members of a PDS, replace <file selections> with:
MY.INPUT.PDS(*)
To compress all members of several PDSs, replace <file selections>
with:
MY.INPUT.PDS(*)
MY.OTHER.INPUT.PDS(*)
YET.ANOTHER.INPUT.PDS(*)
Selection using a DD statement
//ZIP
EXEC PGM=PKZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//INPUT
DD DSN=<file identifier>,DISP=SHR
//SYSIN
DD *
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-ARCHUNIT(SYSDA)
-INDD(INPUT<,members>)
/*
58
PKZIP for MVS: User Reference
T4ASI025-00-00
Where <file identifier> should be replaced with a suitable file identifier,
and <,members> with an appropriate member selection, examples of
which are shown below. For more details refer to -INDD in Chapter 21.
PKZIP Commands.
Examples of Selection using a DD statement
To compress a single PDS member (e.g. ‘MY.INPUT.PDS(MEMBER1)’)
specified in the JCL, replace <file identifier> with
MY.INPUT.PDS(MEMBER1)
and delete the <,members> from the INDD command. Note that this
member will be processed as a sequential dataset (called
MY.INPUT.PDS.MEMBER1), not as a member of a PDS. This member
will be treated as a sequential dataset.
To compress selected PDS member(s), replace <file identifier> with:
MY.INPUT.PDS
and replace the <,members> with the selected member name(s):
MEMBER1,MEMBER2
To compress multiple PDS members using wild cards, replace <file
identifier> with:
MY.INPUT.PDS
and replace the <,members> with:
MEM*
To compress all members of a PDS, replace <file identifier> with:
MY.INPUT.PDS
and delete the <,members> from the INDD command
ZIP Archives as PDS members
PKZIP for MVS is capable of storing ZIP archives as PDS members. To
create a ZIP archive as a PDS member, specify the PDS and member
name in the -ARCHIVE command, i.e.
-ARCHIVE(MY.NEW.PDS.ARCHIVE(MEM1))
Processing that takes place will depend on whether the PDS exists.
T4ASI025-00-00
Processing PDS Members
59
If the PDS exists
PKZIP for MVS can create ZIP archives as members of an existing PDS,
however the following point should be noted:
1.
PKZIP will not modify the attribute information (for example, the
DCB information) for an existing PDS, even if you have specified
–ARCH* commands. Any specified –ARCH* commands will be
ignored (without warning).
If the PDS doesn’t exist
PKZIP for MVS can create a new PDS to contain a ZIP archive as a
member of that PDS, however the following points should be noted:
1.
You should specify an -ARCHVOL, -ARCHUNIT or one of the
DFSMS class commands (such as –ARCHSCLASS) to define
where to create the PDS.
2.
You may wish to review the default allocation information, such
as the block size, primary space allocation, directory block
allocation and so on to ensure that the specified values are
appropriate.
3.
By default, PKZIP will not release free space for the PDS, as you
may wish to add other members later. This can be overridden
using the -ARCHRLSE command.
Creating PDS datasets and members on extraction
PKZIP for MVS can create and populate a PDS with files extracted from
an archive.
In the following example, a PDS that has been added to an archive under
MVS can be extracted to another PDS. Note that PKUNZIP can
determine the appropriate attributes to use for the output PDS using the
file attributes retained in the archive.
//UNZIP
EXEC PGM=PKUNZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-HLQ(MY.INPUT.PDS/MY.OUTPUT.PDS)
/*
When data is obtained from another platform, the commands required to
set the attributes for the output PDS must be specified, along with the
command (-MAKEPDS) that tells PKUNZIP to create a PDS from the
selected input files. The following example demonstrates creating a PDS
from an archive created on the PC platform.
60
PKZIP for MVS: User Reference
T4ASI025-00-00
//UNZIP
EXEC PGM=PKUNZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(PC.ARCHIVE)
-MAKEPDS
-OUTLRL(1350)
-OUTDIRBLKS(10)
-OUTBLKSIZ(27000)
-OUTTYPE(FB)
-HLQ(/NEW.PDS.)
-NOHIERARCHY
/*
With this example, note the following:

The –HLQ command is used to rename the output dataset

The –NOHIERARCHY is used so that when creating the output
name, the path name in the archive is ignored (meaning only the file
name and extension are used)

As –CNVEXT has not been specified, the file extension is dropped,
so the member name will be the file name of the original file on the
PC.
Compressing Load libraries
Load libraries will not typically be decompressed on any platform other
than MVS, allowing two alternative ways of processing a load library:
1. Individual member compression.
2. Library compression.
Compressing load library members
An archive created in this way will retain each member of the PDS as a
separate Zip file in the archive. To correctly capture details of each load
library member, both BINARY and ZDW commands should be used.
Processed in this way allows any single member to be selected when
decompressing.
However this method relies on PKZIP translating the TTR information for
the module when the member is recreated. When compressing
members of a load library, PKZIP for MVS captures additional information
that is needed when loading the module, specifically the TTR to be used
as the entry point.
T4ASI025-00-00
Processing PDS Members
61
However PKZIP does not retain or update other TTR information, such as
the NOTELIST to be used for Overlay segments. For this reason, some
load modules, for example those that contain overlay segments, will
typically not be correctly restored by PKUNZIP (during compression
PKZIP will report modules that it suspects might not be translated
correctly). In certain circumstances however, the module may be
useable. This will happen when the unconverted TTRs used by the
module are not changed. The easiest way to ensure that this is the case
is to place the load module in a library by itself and make sure that the
dataset is restored to a library on the same type of device, using the
same blocksize.
In general this method is recommended when individual module selection
is required and the modules do not contain any complicated TTR
information.
Compressing libraries
This alternative uses a standard utility, such as TSO Transmit, to create a
sequential file, which is then compressed by PKZIP. On decompression,
PKUNZIP will recreate the sequential file that can then be used by the
same utility to recreate the input PDS. This alternative requires an
additional step in both the compression and decompression phases but
imposes no restrictions on the members contained in the library.
In general, this method is recommended where the library contains
specialised load modules (such as overlay segments) or when there is no
requirement to select individual members. However it does involve an
extra processing step.
62
PKZIP for MVS: User Reference
T4ASI025-00-00
Chapter 8. Processing VSAM Files
PKZIP for MVS is capable of:

Compressing VSAM files into a ZIP archive

Creating and processing ZIP archives as VSAM files

Decompressing data from a ZIP archive into VSAM files.
The VSAM file handling capability is a licensable option in PKZIP for
MVS. More details on licensing can be found in Appendix B. Licensing
Guide or directly from your PKZIP supplier.
When managing VSAM datasets, PKZIP for MVS invokes the IBM
Access Method Services utility IDCAMS, as documented in the IBM
Access Method Services manual. Parameters to IDCAMS processing are
specified indirectly using the PKZIP or PKUNZIP commands. Some
knowledge and experience of using the IDCAMS processing will assist in
the effective use of VSAM datasets with PKZIP for MVS. In addition,
access to the IBM Access Method Services manual may be very helpful
in understanding the processing and commands used by the product.
This remainder of this chapter describes the methods employed to
process VSAM files.
Supported VSAM file types
PKZIP for MVS supports the compression and decompression of the
following VSAM file types:

ESDS (Entry Sequenced Dataset)

KSDS (Key Sequenced Dataset)

RRDS (Relative Record Dataset), both Fixed and Variable length
records. However, only RRDS files with no interspersed empty slots
will be correctly recreated by PKZIP processing. This restriction is
described in more detail later in this chapter.
PKZIP for MVS does not support other types of VSAM files, including
Alternate Indexes and Linear datasets. This also is described in more
detail later in the chapter.
PKZIP supports ZIP archives of the following VSAM file type:

T4ASI025-00-00
ESDS (Entry Sequenced Dataset).
Processing VSAM Files
63
Compressing a VSAM File
There are two considerations when processing VSAM datasets:
1.
VSAM files are typically selected for compression using their
cluster name. It is not usual to attempt to process just the data
or index components of the dataset as this method is unlikely to
result in a useful file.
2.
Many VSAM datasets are a mixture of text and binary data, even
if this is not obvious from the file. For example, a KSDS may
consist of text data but have a binary key. If there is no need to
convert the data to ASCII, VSAM files should be compressed
using both the -BINARY and -ZDW commands.
VSAM ZIP Archives
To create a VSAM ZIP archive, specify the -ARCHDSORG(VS)
command. As noted above, only the ESDS VSAM format is supported
for ZIP archives.
ESDS ZIP Archive
Typically commands like the following are specified to create a VSAM
ESDS (Entry Sequenced Dataset) ZIP archive:
-ARCHIVE(MY.NEW.VSAM.ESDS.ZIP)
-ARCHDSORG(VS)
-ARCHUNIT(SYSDA)
From the commands above, PKZIP could generate the following
command input to the IBM utility IDCAMS:
DEFINE CLUSTER ( RECORDSIZE(4000 4000) TRACKS (100 100) NONINDEXED NAME(MY.NEW.VSAM.ESDS.ZIP48324)) DATA ( VOLUMES(TSTVOL) NAME(MY.NEW.VSAM.ESDS.ZIP48324.DATA) UNORDERED )
Please note some commands are defaulted by PKZIP, whilst other
attributes not specified may be defaulted by IDCAMS.
The following commands would change the space allocation for the data
component:
-ARCHDATASPACE(..)
-ARCHDATAPRI(..)
-ARCHDATASEC(..)
For more details please refer to the DEFINE CLUSTER command in the
IBM manual Access Method Services.
64
PKZIP for MVS: User Reference
T4ASI025-00-00
Updating a VSAM archive
Problems may occur if you try to update a VSAM ZIP archive created with
the -ARCHTO or -ARCHFOR commands. To update a ZIP archive,
PKZIP first generates a new ZIP archive and then deletes the old ZIP
archive. If either -ARCHTO or -ARCHFOR command was used to
generate the original ZIP archive then the delete process may fail as the
retention period for the VSAM ZIP archive may not have been satisfied.
Decompressing to a VSAM file
PKZIP for MVS is capable of decompressing data from ZIP archives to
VSAM files.
Before extracting a file from a ZIP archive you should perform a
-VIEWDETAIL on the ZIP archive so that you understand what file name
and file attributes are held for the compressed file.
Note:

Output records for a KSDS are extracted from the archive in the
same order as they were in the original dataset. These records may
not be sorted into an appropriate order for the target file.
Performance of the loading of the target KSDS file may be impacted
if these records are badly sorted.
Overwriting an existing VSAM file
If the file you are extracting to already exists then you need only specify
the -OVERWRITE command. For example, the following may be used to
restore the compressed file MY.VSAM.FILE, replacing the current file:
-ARCHIVE(MY.ARCHIVE.ZIP)
-OVERWRITE
MY.VSAM.FILE
The extraction process will not modify the file attributes of the existing file
so you should ensure that the target file is suitable for the data being
extracted.
Note that the existing file cannot be overwritten if it has been allocated
with the NOREUSE option.
Restoring a compressed VSAM file
By default, PKZIP for MVS stores the file attributes of a VSAM file along
with the compressed data in a ZIP archive. When the VSAM file is
decompressed then the file attributes are used to recreate the VSAM file
if the file does not already exist.
T4ASI025-00-00
Processing VSAM Files
65
Any of the file attributes can be overridden during the extraction process
by specifying the appropriate –OUT, -OUTDATA or –OUTINDX
commands. For example, the following may be used to restore the
compressed file MY.VSAM.FILE (that does not exist) to the volume
TSTVOL:
-ARCHIVE(MY.ARCHIVE.ZIP)
-OUTVOL(TSTVOL)
MY.VSAM.FILE
Creating a new VSAM file
The -MAKEVSAM command is used to create a VSAM file from a ZIP file
that does not have VSAM file attributes (because it was not originally a
VSAM dataset or the attributes were not stored in the archive).
In addition to the –MAKEVSAM command, appropriate –OUT commands
must be used to describe the VSAM file to be created.
For example, the following commands might be specified to create a new
VSAM ESDS (Entry Sequenced) Dataset for the file MY.NONVSAM.FILE:
-ARCHIVE(MY.ARCHIVE.ZIP)
-MAKEVSAM
-OUTATTR(NONINDEXED)
-OUTVOL(TSTVOL)
-OUTSPACE(TRK)
-OUTPRIMARY(1)
-OUTSECONDARY(1)
-OUTRECORDSIZE(80 80)
MY.NONVSAM.FILE
From the commands above, PKZIP may generate the following
command input to the IBM utility IDCAMS:
DEFINE CLUSTER ( RECORDSIZE(80 80) VOLUMES(TSTVOL) TRACKS
(1
1
) NONINDEXED NAME(MY.OUTPUT.FILE) DATA ( NAME(MY.OUTPUT.FILE.DATA) UNORDERED )
Please note some commands are defaulted by PKZIP (e.g.
UNORDERED), whilst other attributes not specified may be defaulted by
IDCAMS.
For more details please refer to the -OUT, -OUTDATA and -OUTINDX
commands in Chapter 24. VSAM Specific PKUNZIP Commands.
66
PKZIP for MVS: User Reference
T4ASI025-00-00
Processing ‘sparse’ RRDS files
When processing VSAM RRDS datasets with unused ‘slots’, PKZIP
replicates the processing performed by IDCAMS REPRO when the
RRDS is copied to a sequential dataset, i.e. missing slots are ignored. If
the data is subsequently used to recreate an RRDS, the resultant file
does not include any missing slots, effectively changing the slot number
of (some of) the copied records.
For example, if an RRDS contained records in slots 1, 5, 9 and 11 before
the processing, the recreated RRDS would have records in slots
numbered 1, 2, 3 and 4.
Only RRDS files with no interspersed empty slots will be correctly
recreated by PKZIP processing.
This restriction applies to both variable length and fixed length RRDS
files.
Processing unsupported file types
PKZIP processing does not support some VSAM file types, for example
VSAM Alternate Indexes. If it is necessary to compress an Alternate
Index, then the user has two options
1. Extract the data to another supported dataset type using the
Alternate Index and compress the copy. The reverse processing will
be needed when decompressing the data. This approach ensures
that the data in the ZIP archive is in the same order as the Alternate
Index.
2. Process the base cluster and recreate the Alternate Index when the
data is decompressed. This is the recommended approach.
For other file types, option 1 (i.e. copying to supported type) is
recommended.
T4ASI025-00-00
Processing VSAM Files
67
Chapter 9. Processing Magnetic Tapes or Cartridges
PKZIP for MVS is capable of:

Compressing data that resides on a Magnetic Tape or Cartridge

Reading and writing ZIP archives on a Magnetic Tape or Cartridge

Decompressing data directly onto a Magnetic Tape or Cartridge.
In this manual the word Tape is used to indicate both Magnetic Tapes
(3420 style) and Magnetic Cartridge (3480/3490 style). If only one of
these types is specifically referenced it should be clear which from the
context.
The Tape file handling capability is a licensable option in PKZIP for MVS.
More details on licensing can be found in Appendix B. Licensing Guide
or directly from your PKZIP supplier.
The remainder of this chapter describes the methods employed to
process Tapes. These methods use the four ‘DD’ commands that are
described in Processing Sequential files using JCL DD cards on page 51.
Note:

When processing Tape datasets, without a Tape license, PKZIP and
PKUNZIP may request that a Tape be mounted, prior to checking
that the product is licensed to process the Tape. The Tape mount
must be satisfied before PKZIP for MVS processing will proceed,
even when this processing will just inform the user that it is not
possible to process the Tape.
Supported Tape Files
PKZIP can process Tape Files located on volumes with:

IBM standard labels (SL)

No labels (NL).
PKZIP for MVS will not process catalogued Tape datasets using the file
name. To process a Tape dataset, one of the ‘DD’ commands must be
used and the Tape dataset must be defined using a DD card in JCL.
When the DD defines an output file, DCB information must be coded on
the DD statement.
PKZIP for MVS supports the compression and decompression of the
tape files with the formats that are supported for Sequential files. See
Chapter 6. Processing Sequential Files for further information.
T4ASI025-00-00
Processing Magnetic Tapes or Cartridges
69
Copying a Tape based archive to a disk file
When processing an existing cartridge or tape based ZIP archive, PKZIP
and PKUNZIP may be requested to read the entire ZIP archive into a
temporary dataset (this will always be attempted for a Tape (3420)
archive). The size and format of the temporary dataset is controlled by
the –TEMP* commands. If the temporary dataset is not large enough to
contain the entire ZIP archive (as is likely if the default size options are
chosen), then a B37-04 error will result, in which case the temporary
dataset is discarded and processing reverts to using the file directly.
Direct file processing means that the ZIP archive is processed directly
from Cartridge/Tape, which reduces the burden on DASD, but may be
slower for a large (multi-volume) archive.
For further information see the description of the –TAPETODISK
command.
Compression of data residing on Tape
PKZIP for MVS can compress datasets that reside on Tape using the
-INDD command.
To compress a dataset that resides on a Tape simply:
1.
Specify the dataset you wish to compress via a DD statement
2.
Use -INDD to tell PKZIP to compress the dataset referenced by
the appropriate DD name.
An example is given below:
//ZIPTAPE EXEC PGM=PKZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//FRED
DD DSN=ZIP.TEST.DATASET,
//
UNIT=CART,DISP=SHR,
//
LABEL=(1,SL,EXPDT=99365),VOL=SER=ZIP214
//SYSIN
DD *
-ECHO
-ARCHIVE(T4ZIP.TEST0001.ZIP)
-ARCHUNIT(SYSDA)
-INDD(FRED)
/*
This step could give the following output:
ZIP101I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP453I
ZIP102I
70
PKZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
-ARCHIVE(T4ZIP.TEST0001.ZIP)
-ARCHUNIT(SYSDA)
-INDD(FRED)
Compressed file ZIP.TEST.DATASET as ZIP/TEST/DATASET (Deflated 83%).
PKZIP MVS
2.5
level x ending.
PKZIP for MVS: User Reference
T4ASI025-00-00
No Label (NL) Tapes
It is essential that PKZIP can find the DCB attributes (RECFM, LRECL,
and BLKSIZE) for the dataset being compressed. With IBM standard
label Tapes, the DCB information is held in the label, however for No
Label Tapes, no DCB information is available.
To ensure that No Label Tapes can be processed correctly, the DCB
information must be coded on the DD statement. An example is given
below:
//ZIPTAPE EXEC PGM=PKZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//BARNEY
DD DSN=ZIP.TEST.DATASET,
//
UNIT=CART,DISP=OLD,
//
DCB=(RECFM=FB,LRECL=80,BLKSIZE=3120,DSORG=PS),
//
LABEL=(1,NL,EXPDT=99365),VOL=SER=TSTVOL
//SYSIN
DD *
-ECHO
-ARCHIVE(T4ZIP.TEST0002.ZIP)
-ARCHUNIT(SYSDA)
-INDD(BARNEY)
/*
This step could give the following output:
ZIP101I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP453I
ZIP102I
PKZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
-ARCHIVE(T4ZIP.TEST0002.ZIP)
-ARCHUNIT(SYSDA)
-INDD(BARNEY)
Compressed file ZIP.TEST.DATASET as ZIP/TEST/DATASET (Deflated 83%).
PKZIP MVS
2.5
level x ending.
File Attributes
As a minimum, PKZIP for MVS stores the following attributes for Tapes:
DSORG, RECFM, LRECL, and BLKSIZE.
A view detail of the archive confirms this:
//ZIPTAPE EXEC PGM=PKUNZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(T4ZIP.TEST0002.ZIP)
-VIEWDETAIL
/*
T4ASI025-00-00
Processing Magnetic Tapes or Cartridges
71
This step could give the following output:
UNZIP101I
UNZIP010I
UNZIP010I
UNZIP010I
UNZIP507I
UNZIP508I
UNZIP509I
UNZIP510I
UNZIP511I
UNZIP512I
UNZIP513I
UNZIP514I
UNZIP515I
UNZIP520I
UNZIP519I
UNZIP519I
UNZIP519I
UNZIP519I
UNZIP519I
UNZIP501I
UNZIP102I
PKUNZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
-ARCHIVE(T4ZIP.TEST0002.ZIP)
-VIEWDETAIL
Filename: ZIP/TEST/DATASET
File type: Text
Date and Time: 01-Apr-19xx 15:29:14
Compression Method: DeflatN
Compressed Size:
929
Uncompressed Size:
5404
32 bit CRC value : 770EC19B
Created by: PKZIP: 2.0 under MVS
Needed to extract: PKUNZIP: 2.0
File attributes
Record format: Fixed Blocked
Record length: 80
Block size: 3120
Volume serial(s): TSTVOL
Dataset organisation: Sequential
PKUNZIP MVS
2.5
level x
ending.
Decompression of data onto Tape
PKZIP for MVS can decompress data onto Tape using the -OUTDD
command.
To decompress a ZIP file onto a Tape simply:
1.
Specify the ZIP file you wish to extract with a suitable file
selection
2.
Specify the Tape dataset that you wish to extract to via a DD
statement, including the DCB information on the DD statement
3.
Use -OUTDD to tell PKZIP to decompress the ZIP file to the
Tape dataset referenced by the appropriate DD name.
An example is given below:
//UNZIP
EXEC PGM=PKUNZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//OUTPUT
DD DSN=TEST.UNZIP001,
//
DISP=NEW,LABEL=(1,SL),
//
DCB=(DSORG=PS,RECFM=FB,LRECL=128,BLKSIZE=12800),
//
UNIT=CART,VOL=SER=OUT001
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(T4ZIP.TEST0002.ZIP)
-OUTDD(OUTPUT)
“ZIP/TEST/DATASET”
/*
72
PKZIP for MVS: User Reference
T4ASI025-00-00
This step could give the following output:
UNZIP101I
UNZIP010I
UNZIP010I
UNZIP010I
UNZIP010I
UNZIP609I
UNZIP102I
PKUNZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
-ARCHIVE(T4ZIP.TEST0002.ZIP)
-OUTDD(WILMA)
″ZIP/TEST/DATASET″
ZIP file ZIP/TEST/DATASET inflated to MVS file TEST.UNZIP001
PKUNZIP MVS
2.5
level x ending.
Restriction
Only one -OUTDD statement can be used per job step. In most
circumstances, only one dataset should be decompressed to Tape at a
time.
Zip Archives on Tape
PKZIP for MVS can read or write ZIP archives on Tape. To specify the
Tape(s), PKZIP for MVS uses the -ARCHINDD and -ARCHOUTDD
commands in place of the normal -ARCHIVE command.
Tape Mounts for multiple volume Tape archives
When reading a ZIP archive, PKZIP for MVS processing will scan to the
end of the Tape dataset looking for important ZIP archive information that
is located at the end of the archive. When this is found, the archive is
repositioned back to the start to process the data in the archive. This
processing is unavoidable given the structure of the ZIP archive, however
it will result in the system requiring access to each Tape in a ZIP archive
at least twice.
To reduce the impact of the Tape handling, users should consider the
following options for ZIP archives on Tape:
T4ASI025-00-00

Ensuring that there are sufficient Tape units allocated to have all the
Tapes required mounted at once. One way to achieve this might be
to use the unit count parameter for the UNIT keyword of the JCL DD
statement. For example UNIT=(TAPE,2) will allocate 2 Tape units
and will mean that both volumes of a 2 volume archive can be
mounted at the same time.

Copying the archive to a disk file prior to processing.

Using PKZIP facilities to copy the archive to disk. See the –
TAPETODISK command.
Processing Magnetic Tapes or Cartridges
73
Compressing a file to Tape
PKZIP for MVS can compress data into a ZIP archive that resides on
Tape using the -ARCHOUTDD command.
To compress data onto a Tape simply:
1.
Specify the new, Tape based archive dataset via a DD
statement, including the DCB information on the statement
2.
Replace the normal -ARCHIVE, -ARCHVOL and other -ARCH
commands with an -ARCHOUTDD command. The
-ARCHOUTDD command tells PKZIP to create the ZIP archive in
the Tape dataset referenced by the appropriate DD name.
An example is given below:
//ZIPTAPE EXEC PGM=PKZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//BETTY
DD DSN=MY.TEST0001.ZIP,
//
UNIT=CART,DISP=NEW,
//
DCB=(RECFM=U,LRECL=0,BLKSIZE=6160,DSORG=PS),
//
LABEL=(1,NL),VOL=SER=ZIP001
//SYSIN
DD *
-ECHO
-ARCHOUTDD(BETTY)
MY.NORMAL.DATASET
/*
This step could give the following output:
ZIP101I
ZIP010I
ZIP010I
ZIP010I
ZIP453I
ZIP102I
PKZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
–ARCHOUTDD(BETTY)
MY.NORMAL.DATASET
Compressed file MY.NORMAL.DATASET as MY/NORMAL/DATASET (Deflated 83%).
PKZIP MVS
2.5
level x ending.
Viewing a Tape based archive
PKZIP for MVS can view or test a ZIP archive that resides on Tape using
the -ARCHINDD command.
To view a ZIP archive that resides on a Tape simply:
74
1.
Specify the Tape based archive via a DD statement,
remembering to specify the DCB information if it is a No Label
(NL) Tape.
2.
Use -ARCHINDD to tell PKZIP to read the ZIP archive
referenced by the appropriate DD name.
PKZIP for MVS: User Reference
T4ASI025-00-00
An example is given below:
//ZIPTAPE EXEC PGM=PKUNZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//PEBBLES DD DSN=MY.TEST0001.ZIP,
//
UNIT=CART,DISP=SHR,
//
DCB=(RECFM=U,LRECL=0,BLKSIZE=6160,DSORG=PS),
//
LABEL=(1,NL),VOL=SER=ZIP001
//SYSIN
DD *
-ECHO
-ARCHINDD(PEBBLES)
-VIEWDETAIL
/*
This step could give the following output:
UNZIP101I
UNZIP010I
UNZIP010I
UNZIP010I
UNZIP507I
UNZIP508I
UNZIP509I
UNZIP510I
UNZIP511I
UNZIP512I
UNZIP513I
UNZIP514I
UNZIP515I
UNZIP520I
UNZIP519I
UNZIP519I
UNZIP519I
UNZIP519I
UNZIP519I
UNZIP519I
UNZIP501I
UNZIP102I
PKUNZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
-ARCHINDD(PEBBLES)
-VIEWDETAIL
Filename: MY/NORMAL/DATASET
File type: Text
Date and Time: 02-Apr-19xx 16:29:14
Compression Method: DeflatN
Compressed Size:
929
Uncompressed Size:
5404
32 bit CRC value : 770EC19B
Created by: PKZIP: 2.0 under MVS
Needed to extract: PKUNZIP: 2.0
File attributes
Dataset organisation: Sequential
Record format: Fixed
Record length: 80
Block size: 80
File Creation Date: 19xx0101
Last Reference Date: 19xx0401
PKUNZIP MVS
2.5
level x
ending.
Decompressing files from a Tape based archive
PKZIP for MVS can decompress files from a ZIP archive that resides on
Tape, it achieves this via the -ARCHINDD command.
To decompress files from a ZIP archive that resides on a Tape simply:
T4ASI025-00-00
1.
Specify the Tape based archive via a DD statement,
remembering to specify the DCB information if it is a No Label
(NL) Tape
2.
Use -ARCHINDD to tell PKUNZIP to read the ZIP archive
referenced by the appropriate DD name
3.
Use a suitable file selection to select the files you wish to extract
(or let PKUNZIP default and unzip all the compressed files).
Processing Magnetic Tapes or Cartridges
75
An example is given below:
//ZIPTAPE EXEC PGM=PKUNZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//BAMBAM
DD DSN=MY.TEST0001.ZIP,
//
UNIT=CART,DISP=SHR,
//
DCB=(RECFM=U,LRECL=0,BLKSIZE=6160,DSORG=PS),
//
LABEL=(1,NL),VOL=SER=ZIP001
//SYSIN
DD *
-ECHO
-ARCHINDD(BAMBAM)
″MY/NORMAL/DATASET″
/*
This step could give the following output:
UNZIP101I
UNZIP010I
UNZIP010I
UNZIP010I
UNZIP609I
UNZIP102I
PKUNZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
–ARCHINDD(BAMBAM)
″MY/NORMAL/DATASET″
ZIP file MY/NORMAL/DATASET inflated to MVS file MY.NORMAL.DATASET
PKUNZIP MVS
2.5
level x ending.
Updating files in a Tape based archive
PKZIP for MVS can update files in a ZIP archive that resides on Tape,
but the updated ZIP archive must be created on a new Tape. Archives
can be updated by using the -ARCHINDD and -ARCHOUTDD
commands, where -ARCHINDD is used to read the old archive in and
-ARCHOUTDD is used to write the new archive out.
To updates files in a ZIP archive that resides on a Tape simply:
76
1.
Specify the old ZIP archive to be read in via a DD statement
2.
Use -ARCHINDD to tell PKZIP to read the ZIP archive
referenced by the DD statement
3.
Specify the new, Tape based archive dataset via a second DD
statement
4.
Use -ARCHOUTDD to tell PKZIP to write the new, updated
archive to the dataset referenced by the second DD statement.
PKZIP for MVS: User Reference
T4ASI025-00-00
An example is given below:
//ZIPTAPE EXEC PGM=PKZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//BAMBAM
DD DSN=MY.TEST0001.ZIP,
//
UNIT=CART,DISP=SHR,
//
DCB=(RECFM=U,LRECL=0,BLKSIZE=6160,DSORG=PS),
//
LABEL=(1,NL),VOL=SER=ZIP001
//DINO
DD DSN=MY.TEST0001.UPDATED.ZIP,
//
UNIT=CART,DISP=NEW,
//
DCB=(RECFM=U,LRECL=0,BLKSIZE=6160,DSORG=PS),
//
LABEL=(1,NL),VOL=SER=ZIP002
//SYSIN
DD *
-ECHO
-ARCHINDD(BAMBAM)
-ARCHOUTDD(DINO)
-UPDATE
″MY/NORMAL/DATASET″
/*
This step could give the following output:
UNZIP101I
UNZIP010I
UNZIP010I
UNZIP010I
UNZIP010I
UNZIP459I
UNZIP102I
PKUNZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
–ARCHINDD(BAMBAM)
–ARCHOUTDD(DINO)
″ZIP/NORMAL/DATASET″
Updated file MY.NORMAL.DATASET as MY/NORMAL/DATASET (Deflated 83%).
PKUNZIP MVS
2.5
level x ending.
This step creates an updated archive on the Tape labelled ″ZIP002″. The
original Tape (labelled ″ZIP001″) is not modified by this process.
T4ASI025-00-00
Processing Magnetic Tapes or Cartridges
77
Part 3. Advanced Topics
T4ASI025-00-00
Advanced Topics
79
Chapter 10. ZIP Archives
The term ‘ZIP archive’ is used to describe the dataset that holds one or
more files which have been compressed by one of the PKZIP family of
programs. A ZIP archive is the equivalent of a ‘*.ZIP’ file created by
PKZIP on MS-DOS. A ZIP archive can hold up to 16383 files, which may
be compressed by up to 99% of their original size. Each file is held
together with a CRC (Cyclic Redundancy Check), which is used to
guarantee that the data which is decompressed by PKUNZIP is identical
to that originally compressed by PKZIP.
A ZIP archive can be transferred from one platform to another, and can
be decompressed or modified by a copy of PKZIP or PKUNZIP which is
running on that platform. The internal format of a ZIP archive is identical,
no matter which platform compressed the files that it contains.
PKZIP for MVS stores the MVS attributes of files in the ZIP archive.
Attributes such as dataset organisation, block size and load library TTR
information are stored so that datasets and PDS members can be
archived into and restored from ZIP archives without any other
intervention.
ZIP Archives in MVS
ZIP archives on MVS can be held as one of the following:

a sequential dataset

a PDS member

VSAM Entry Sequenced dataset (ESDS).
ZIP archives which are sequential datasets or PDS members must have
a record format of U (undefined), F (fixed) or FB (fixed block) and FBS
(fixed block standard) for sequential datasets. A typical ZIP archive
allocation is shown below:
-------------------------- DATA SET INFORMATION --------------------COMMAND ===>
DATA SET NAME: T4ZIP.TEST.ZIP
GENERAL DATA:
CURRENT ALLOCATION:
Volume serial:
T4PRD2
Allocated tracks:
1
Device type:
9345
Allocated extents:
1
Organisation:
PS
Record format:
U
Record length:
0
Block size:
6160
CURRENT UTILIZATION:
1st extent tracks:
1
Used tracks:
1
Secondary tracks:
1
Used extents:
1
Creation date:
Expiration date:
T4ASI025-00-00
19xx/01/28
***NONE***
ZIP Archives
81
The ZIP archive should have the same contents on whatever platform it
exists i.e. if you browse the file in hexadecimal it should always start with
the values x'504B' (i.e. the characters "PK" in ASCII and "&." in EBCDIC)
and the remainder of the data should also be identical.
Old and New ZIP archives
These two expressions are used when describing PKZIP operations. To
understand the distinction, it is important to understand some of the
PKZIP processing.
The old ZIP archive may have been created by PKZIP for MVS during an
earlier operation, or may have been created by PKZIP on another
platform and transferred from there. When PKZIP starts, the old ZIP
archive already exists and contains valid ZIP files.
When PKZIP is executed, the old ZIP archive is specified using the
-ARCHIVE command or the –ARCHINDD command (see Chapter 21.
PKZIP Commands).
When PKZIP for MVS is updating a ZIP archive, it takes the necessary
data from the old ZIP archive, merges it with any new data, and transfers
it to a new ZIP archive.
If the archive has been specified using the –ARCHIVE command, the
new ZIP archive is initially created in a ‘temporary’ MVS dataset that is
allocated using the -ARCH* commands (like ARCHPRIMARY which
specifies its primary extent). When all updating is completed, PKZIP for
MVS will delete the old ZIP archive and rename the new ZIP archive to
the same name as the old ZIP archive (using the new allocation). When
updating a ZIP archive, therefore, you may wish to make certain of the
allocation of the new ZIP archive using the appropriate allocation
commands, as described in Chapter 21. PKZIP Commands.
If the new ZIP archive has been specified using the –ARCHOUTDD, then
new data will be written directly into the specified dataset. The old ZIP
archive, if any (specified by -ARCHINDD) will not be deleted by PKZIP.
Temporary datasets
Temporary datasets are typically only used by PKZIP compression
processing, however, they can be used to improve the performance of
PKZIP and PKUNZIP when data is being extracted from a sequential (i.e.
Tape or Cartridge) archive.
Temporary Datasets are used for three purposes:
1. The new ZIP archive for PKZIP.
2. As temporary datasets used during PKZIP compression processing
3. As a temporary store to improve processing for a sequential archive
82
PKZIP for MVS: User Reference
T4ASI025-00-00
The new ZIP archive (not using ARCHOUTDD)
A new ZIP archive dataset has the same dataset name as the ‘old’ ZIP
archive (i.e. the dataset specified in the -ARCHIVE command), except
that the last component of the dataset name hierarchy is replaced by
ZIPnnnnn, where nnnnn is a 5 digit number. If the new archive is a
member of a PDS, then the ZIPnnnnn is used as the member name.
Note that this nnnnn number is a random number and is not the same as
the sequentially increasing number used for the DD allocation.
If there is a duplicate dataset name or insufficient disk space, PKZIP will
try again using a different 5 digit number in the dataset name. PKZIP will
attempt the allocation of the dataset 3 times, after which an error
message will be output if the operation is still unsuccessful.
Note:

A new ZIP archive is created by compressing the selected files into
temporary datasets, with the final temporary dataset being renamed
to become the new ZIP archive. Unfortunately however, the rename
process does not pass any information to the JES log, which means
that in the JES log it will appear that the final temporary dataset was
catalogued, not the ZIP archive. This may be confusing for users with
automated operations but it is an unavoidable restriction of the PKZIP
program.

If the ZIP processes Abends or fails in some way that does not allow
it to complete the termination processing, the new ZIP archive (with
its ZIPnnnnn name) may have to be deleted manually.
PKZIP Temporary Datasets
While PKZIP for MVS is compressing files for insertion into the new ZIP
archive, it uses temporary datasets as an initial storage location for the
compressed file.
By default, temporary datasets are allocated in a similar way as the new
ZIP archive. If this allocation is not appropriate, then different attributes
can be specified using the -TEMP group of commands (see Chapter 21.
PKZIP Commands).
These datasets are allocated as standard MVS temporary datasets and
will be automatically deleted at the end of the step.
T4ASI025-00-00
ZIP Archives
83
Use of Temporary Datasets when processing a sequential archive
When extracting data from a sequential archive (especially an archive
that is located on a Tape or Cartridge), while it is processing, PKZIP for
MVS may be requested (via the TAPETODISK command) to copy the
archive to a disk based temporary file. In fact, PKZIP for MVS will do this
automatically for 3420 (round) Tape, which may otherwise be
unacceptably slow. If this ‘copy’ is successful, then this temporary
archive is used in subsequent processing, removing the need to scan
backward and forward over the sequential archive and, as a result,
improving performance for the processing.
In this circumstance, the temporary archive must be at least as large as
the archive. If it is not, PKZIP for MVS will stop copying the archive to
disk and will use the real (but potentially slow) archive in subsequent
processing.
84
PKZIP for MVS: User Reference
T4ASI025-00-00
Chapter 11. Compatibility Issues
This chapter reviews some of the issues that a user might have using
PKZIP 2.5 for MVS with other PKZIP version 2 products.
Using PKZIP 2.5 for MVS with PKZIP version 2 on other
platforms
The file attributes stored by PKZIP 2.5 for MVS are marked as MVS
attributes and therefore will be ignored by most other platforms. The
exceptions are PKZIP for VM and PKZIP for VSE, which are capable of
recognising some MVS attributes and creating attributes that are
recognised by PKZIP for MVS.
Platforms that recognise/create attributes (PKZIP for VM and VSE)
Attributes created by PKZIP for MVS may not be recognised on other
platforms and other platforms may generate attributes that are not
recognised by PKZIP for MVS. These will be ignored, unless they are
being displayed using the DETAIL option of the -VIEW command. Using
this command, attributes that are not recognised will generate a 518
warning message.
PKZIP for MVS has changed the format of some attributes so that these
will not be displayed correctly unless compatibility patches have been
applied to PKZIP for VSE and VM. Processing of these attributes is not
affected.
When a PKZIP 2.5 for MVS archive is to be transferred to VM or VSE, to
be processed by PKZIP for VM or VSE, the PKZIP 2.5 for MVS archive
should be created with attributes in both the Central and Local
Directories (the default) or in neither place. If attributes are only stored in
either the Local or the Central Directories and the archive is subsequently
updated, the created archive will be corrupt. This restriction does not
effect archives that are not updated.
The products listed below and previous levels of these products are
effected by this restriction:

PKZIP for VSE 2.1/7

PKZIP for VM 2.1/8.
If the target platform uses a later level of the product, this restriction may
have been lifted. See the associated program documentation for details.
T4ASI025-00-00
Compatibility Issues
85
Using PKZIP 2.5 for MVS with PKZIP 2.2 for MVS for MVS
The section Migration Considerations in Chapter 2. PKZIP Version 2.5
for MVS, should be reviewed prior to using PKZIP 2.5 with PKZIP 2.2 for
MVS.
Compatibility patches are available for PKZIP 2.2 for MVS to ensure that
new and changed attributes for 2.5 are correctly processed in PKZIP 2.2
for MVS. This leads to the following minor restriction for PKZIP 2.2 for
MVS:

When a 2.5 archive that contains a file that was originally stored on
multiple volumes is processed in PKZIP 2.2 for MVS, only the first of
the original volumes will be available in the file attributes.
In addition, PKZIP 2.5 for MVS archives that are to be processed by
PKZIP 2.2 for MVS, should be created with (the default) attributes in both
the Central and Local Directories or in neither place. If attributes are only
stored in either the Local or the Central Directories and the archive is
subsequently updated by PKZIP 2.2 for MVS, the created archive will be
corrupt. This restriction does not effect archives that are not updated.
Attributes created by PKZIP 2.5 for MVS may not be recognised by
PKZIP 2.2 for MVS. These will be ignored, unless they are being
displayed using the DETAIL option of the -VIEW command. Using this
command, attributes that are not recognised will generate a 518 warning
message.
Using PKZIP 2.5 for MVS with PKZIP 2.1 for MVS for MVS
The following sections consist of some frequently asked questions, which
apply to those users who wish to run PKZIP 2.1 for MVS and PKZIP 2.5
for MVS in parallel.
Will the ZIP processing now select VSAM files?
PKZIP 2.5 for MVS will select VSAM files that match the wildcard
specification. PKZIP 2.1 did not.
The -NOVSAM command has been included for PKZIP 2.1 for MVS
users who find that existing job streams are compressing unwanted
VSAM files when they use PKZIP 2.5 for MVS instead of PKZIP 2.1 for
MVS.
For example, in 2.1 the file selection USER.DATA.* might match the
Sequential and PDS datasets USER.DATA.SEQ and USER.DATA.PDS
but in 2.5 it might also match USER.DATA.ESDS which is not required
for compression. Using the -NOVSAM command would prevent the
VSAM file USER.DATA.ESDS from being selected for compression,
therefore ensuring compatibility with PKZIP 2.1 for MVS.
86
PKZIP for MVS: User Reference
T4ASI025-00-00
Are archives created by PKZIP 2.1 for MVS supported by 2.5?
Yes! PKZIP 2.1 for MVS and PKZIP 2.5 for MVS both use the same
algorithm for the compression of data, so data compressed by one can
be extracted by the other. Archives created by PKZIP 2.1 for MVS are
fully supported by PKZIP 2.5 for MVS for MVS.
How will PKZIP 2.1 for MVS handle a 2.5 archive?
PKZIP 2.1 for MVS does not support the various file attributes that PKZIP
2.5 for MVS can store. If you are compressing data with PKZIP 2.5 for
MVS and expect to decompress it with PKZIP 2.1 for MVS then you
should compress the data with the -NOATTRIB command.
How will PKZIP 2.1 for MVS handle a VSAM archive?
PKZIP 2.1 for MVS does not support the processing of VSAM files or
archives. The data within a VSAM archive can be processed however if
the VSAM archive is copied to a sequential dataset using a utility such as
IDCAMS REPRO, then the resultant file can be processed by PKZIP 2.1
for MVS. For more details on REPRO, refer to the IBM manual Access
Method Services.
What will PKZIP 2.1 for MVS do with a compressed VSAM file?
PKZIP 2.1 for MVS does not support the compression or decompression
of VSAM files. VSAM files compressed by PKZIP 2.5 for MVS can be
extracted by PKZIP 2.1 for MVS but only to a supported file type i.e.
sequential or PDS. If you must have the extracted data in a VSAM file
then extract the data first to a sequential dataset and then copy the data
into an equivalent VSAM file (using a utility like REPRO).
What will PKZIP 2.1 for MVS do with a compressed loadlib?
PKZIP 2.1 for MVS does not support the compression or decompression
of loadlibs. If you have compressed a loadlib with PKZIP 2.5 for MVS
then the data can be extracted by PKZIP 2.1 for MVS but the file will not
be executable.
T4ASI025-00-00
Compatibility Issues
87
Chapter 12. Cross Platform Support
One of the major benefits of using PKZIP for MVS is that the ZIP archive
format is identical on all platforms. File can be compressed and
decompressed on any platform (for example, a file can be compressed
on MVS and decompressed on UNIX) providing the target platform is
running a compatible version of PKZIP. Compatible versions are as
follows:

PKZIP 2.04g for MS-DOS

PKZIP version 2 on other platforms.
This section describes how ZIP archives should be transferred between
MVS systems and other platforms.
Transferring ZIP archives to and from other platforms
All ZIP archives transferred to or from MVS must be transferred in
BINARY i.e. no ASCII <-> EBCDIC translation of the data and no record
delimiters (such as CR/LF - Carriage Return/Line Feed) appended.
The ZIP archive should have the same contents on whatever platform it
exists i.e. if you browse the file in hexadecimal it should always start with
the values x'504B' (i.e. the characters "PK" in ASCII and "&." in EBCDIC)
and the remainder of the data should also be identical.
Mixed Binary and Text Files
Some files contain a mixture of binary and text data. This sort of file may
not be supported across platforms when using PKZIP. This is not a
restriction specific to PKZIP but is a general problem, which would also
occur if the data was transferred in an uncompressed form.
Consider an example where a file containing mixed data is being moved
from MVS to the PC. If the file is compressed with the -BINARY
command on MVS then the EBCDIC text will not be converted to ASCII,
thus making it unreadable on the PC. If the file is compressed with the
-TEXT command however, then the binary data will be corrupted.
The solution is to consider how you would approach the problem if PKZIP
was not involved. The problem faced by PKZIP is identical to that faced
by a standard file transfer package. One possible solution involves
pre-processing the file into a transferable form before compressing it by
separating the text and binary fields into separate files and translating just
the text to ASCII. Alternatively, use the -BINARY command and modify
the process at the receiving end so that it can handle EBCDIC text.
T4ASI025-00-00
Cross Platform Support
89
Mixed data files are not normally a problem when moving from MVS to
MVS, VSE or VM, as these platforms use the same data formats and
codes, but note that in this circumstance the file should be compressed
using the –BINARY command.
Self-extracting archives
Self-extracting ZIP archives created on other platforms can not be run on
MVS, however it may be possible to extract the files they contain on MVS
by using PKUNZIP.
Executable files
If executable files are compressed on one platform, it is very unlikely that
they will run on a different platform. For example, if you compress a
working DOS EXE file, you cannot expect to decompress it and run it on
an MVS system. However, if a ZIP archive containing an executable
DOS EXE file was moved to a DOS platform, once extracted, the
executable file should function normally.
Record delimiters and file terminators
It may be necessary to modify the record delimiters and file terminators
used when compressing a text file on MVS and decompressing it on
UNIX. Files compressed with default values for -DELIM and -TERM on
MVS may appear to contain extra blank lines in the output when
decompressed on UNIX.
The usual record delimiter for UNIX is LF whilst the usual file terminator
is also LF. The values should be specified on the compression step as
follows:
-DELIM(LF) -TERM(LF)
Unzipping on MVS
Decompressing an archive created on another platform requires special
consideration. The following issues need to be resolved when unzipping:
File extensions e.g. '.TXT'
You must decide what to do with any file extensions e.g. ‘.TXT’.
Extensions can be discarded or made part of the extracted dataset name
by use of the -CNVEXT filename (see Chapter 23. PKUNZIP
Commands).
Lower case characters, spaces, special characters and long file names
MVS dataset and member names cannot be created using spaces or
some special characters. Typically a Dynalloc Error will occur if you
attempt to extract to a filename that does not adhere to the standard
format. Use the -HLQ command to rename the file or alternatively use
-OUTDD to specify the dataset you wish to extract to (see Chapter 23.
PKUNZIP Commands for more information).
90
PKZIP for MVS: User Reference
T4ASI025-00-00
Lower case characters used in a dataset name are automatically
converted to upper case.
Selecting specific files for extraction
To select files from a ZIP archive that has been transferred from another
platform, use the PC/UNIX style file selection (see MS-DOS and UNIX
format filenames in Chapter 23. PKUNZIP Commands). To be sure of
selecting the correct file, perform a -VIEW on the archive, then specify
the ZIP file name surrounded by double quotes. Examples of such file
selections are:
"MYFILE.TXT"
"WINDOWS/MYDATA.DAT"
"My/Long Directory Name/data"
The double quotes are important as they tell PKZIP to treat a ".XXX" as a
PC style file extension, they also allow you to put special characters such
as spaces in the file selection.
To extract just the ".TXT" files you can specify the following file selection:
"*.TXT"
The file selections are case sensitive.
Examples
Extracting and renaming a file with an extension
//SYSIN
DD *
-ARCHIVE(ASIZIP.TRIAL.ZIP)
-OUTUNIT(SYSDA)
"ASIZIP.TXT"
-HLQ(ASIZIP,NEW.NAME)
In this example the PC file ASIZIP.TXT is selected for extraction and
renamed to the dataset NEW.NAME. Please note that by default PKZIP
drops the file extension so it is not required in the -HLQ command.
Extracting and renaming file but keeping the extension
//SYSIN
DD *
-ARCHIVE(ASIZIP.TRIAL.ZIP)
-OUTUNIT(SYSDA)
"ASIZIP.D01"
-CNVEXT(SUFFIX)
-HLQ(ASIZIP,NEW.NAME)
In this example the PC file ASIZIP.D01 is selected for extraction and
renamed to the dataset NEW.NAME.D01. This is useful when the
extension is the only part of the filename that uniquely identifies the file.
Extracting files with lower case, spaces or special characters
T4ASI025-00-00
Cross Platform Support
91
//SYSIN
DD *
-ARCHIVE(ASIZIP.TRIAL.ZIP)
-OUTUNIT(SYSDA)
"asizip file"
-HLQ(**,ASIZIP.FILE)
MVS dataset and member names can not contain spaces or special
characters. In this example the filename is renamed to a supported MVS
file name.
Compressing on VM and decompressing on MVS
A file on VM with a record type V and a record length 80 is capable of
storing 80 characters of data per record.
A file on MVS with a record type V and a record length 80 is only capable
of storing 76 characters of data per record. The restriction is due to the 4
byte Record Descriptor Word (RDW) which precedes the data.
PKZIP for MVS will automatically create the correct length for a variable
length file when extracting from an archive that has been created using
PKZIP for VM, if the archive was created with attributes.
If the archive was not created with attributes, or the various -OUT
commands are being used to override the attributes, then it is possible to
incorrectly set the record length for the output file. Ensure that the record
length specified for any variable length file is increased by 4 under MVS
to compensate for the RDW. For example, a file which on VM has a
record length of 80, should be extracted specifying a value of 84 for the –
OUTLRL command (i.e. -OUTLRL(84)).
Compressing on WinZip Version 5 and decompressing on MVS
WinZip version 5 assumes all files to be compressed have file extensions
and therefore automatically inserts a ‘.’ after the filename. Files which do
not have an extension and therefore end in a ‘.’ can only be unzipped
using the -HLQ command. See Chapter 23. PKUNZIP Commands for
more information.
92
PKZIP for MVS: User Reference
T4ASI025-00-00
Chapter 13. Performance
Performance of PKZIP for MVS, in terms of elapsed time and resources
consumed, can be influenced by the Input/Output (I/O) processing, the
use of virtual (and by implication actual) storage and the use of processor
resources. This chapter discusses the significant options that can be
varied that could impact some or all of these areas.
I/O implications
While compressing and decompressing files, PKZIP and PKUNZIP
perform a significant number of I/Os to the archive, temporary and output
files. The number of I/Os performed can be strongly influenced by the
size and blocking used for these files.
This is particularly important for the ZIP archive(s). The unit of I/O for a
ZIP archive (which could be the block for a sequential dataset or Control
Interval for a VSAM dataset) should be as large as practicable. In
addition, the record size should also be large, to reduce the time taken to
‘deblock’ the record. As a general rule, the record size associated with a
ZIP archive should be at least 4Kb.
In most cases, the use of 1/2 track blocking, where two ZIP Archive
blocks will fully utilise a Track on the target DASD device, should provide
the optimal performance and space utilisation.
Use of extended storage by PKZIP
In this context, extended storage is the storage which resides above the
so-called the 16Mb line, i.e. that storage which is only accessible to
programs running in 31 bit mode.
PKZIP for MVS uses extended storage wherever possible, so, in general
it should be capable of processing most requests with REGION=2M JCL
parameter. Note that REGION=2M means that the system establishes a
2Mb private area below the 16Mb line and a default, usually 32Mb,
extended region above the 16Mb line.
In some cases PKZIP may require a larger region size, for example when
updating a large ZIP archive or when processing a large number of files.
If you increase the region size then please note that the specification of
REGION=0M may not appropriate, since this allocates all the available
storage below the 16 Mb line to the PKZIP program, which restricts the
amount of system storage available below the 16Mb line. This may cause
problems when PKZIP processes VSAM files or attempts to use the
IDCAMS utility.
If PKZIP is not able to obtain enough storage then it will terminate with a
User Abend. Please see Chapter 27. User Abend Codes for more
details.
T4ASI025-00-00
Performance
93
PKZIP speed versus compressed file size
By varying the way in which the compression algorithms are used during
data compression, the ratio between compressed file size and
compression speed can be altered. In this context, speed means both the
elapsed time taken and the processor resources consumed when
compressing the data.
PKZIP for MVS allows a choice between four different
speed/compression combinations, ranging from that giving the maximum
level of compression to that giving the highest compression speed. The
approximate relationship between these four combinations is shown in
the figure below:
Size
Time
Super Fast
Fast
Normal
Maximum
Chart of compressed file size and time taken for the PKZIP methods
Note that the above figure is a simplified illustration. The shape of the
chart will differ according to the type of file being compressed but, in
general, the compressed file size does not differ much between the
Super Fast and Maximum options.
HyperZIP License
PKZIP 2.2 for MVS has licensed features which may improve the
performance on your system. The improvements relate to:
94

-TASKS command

-CACHEMEMORY command

PDS compression.
PKZIP for MVS: User Reference
T4ASI025-00-00
The following sections describe how HyperZIP facilities have been
implemented and discuss when they might be useful in improving the
‘performance’ of the PKZIP and PKUNZIP processing. For more
information on the commands, please refer to Chapter 21. PKZIP
Commands and Chapter 23. PKUNZIP Commands.
Overview
As the name suggests, HyperZip is designed to improve the perceived
performance of PKZIP for MVS. The use of the word perceived is
deliberate. When compressing or decompressing a file, the majority of
the processing can not be avoided – for example, for a given
compression method, there is a fixed amount of processing required to
compress or decompress a file. HyperZip attempts to reduce perceived
performance, (i.e. the elapsed time), using two methods:
1. Reducing the number of I/Os by storing work files in memory
2. Increasing the number of active compression or decompression
tasks, so that more processing is performed in parallel.
The effect that altering the HyperZip parameters will have will depend on
a number of system dependent factors, the most important of which are:

the number of processors available – if there is only one available
then there is little opportunity to overlap multiple compression tasks

the amount of storage available – if there is little, then reducing I/Os
and using storage will have a negative effect on the performance

the size of the files – small files will not gain so much

the ‘mix’ of files being processed – a balanced mixture of files will
facilitate overlap, compressing one large file removes the opportunity
to overlap processing

other processing that is being performed on the system.
The following discusses the two HyperZip commands in more detail and
describes the effects that use of the command will have to the key
performance indicators; elapsed time, CPU used, I/O count and Storage
used. The Recommendations section provides general Rules of Thumb
regarding the usage of these commands.
In addition, to these two commands HyperZip improves the performance
of other aspects of PKZIP performance, especially where these relate to
PDS processing
T4ASI025-00-00
Performance
95
TASKS
PKZIP 2.5 for MVS can use a separate subtask for each dataset being
compressed. Therefore, if executing processor has multiple CPUs,
having separate subtasks for each dataset will mean that compression of
each dataset can be performed in parallel. The number of parallel
compression tasks is specified using the TASKS command.
As noted above, there is little to be gained in using the TASKS command
in a single processor system. Note however that there is little cost in
using this command.
Using TASKS(n) on a multiprocessor system, should allow the overlap of
compression tasks, reducing the elapsed time. This will have no effect
on the overall CPU consumed, it will just be consumed in a shorter
period. Note that there will be an increase in memory usage, caused by
the additional ‘active’ processing, but this is typically not significant.
When specifying the TASKS value, one should consider the number of
processors that are actually available. A value that is the same as the
number of available processors is generally optimal, specifying more will
not reduce the elapsed time while specifying less will usually increase the
elapsed time.
The reduction in the elapsed time will depend principally on the number
of processors and the potential for overlap. For example, processing
three similar files on a three processor system using TASKS(3) should
result in the elapsed time reducing by over 50%, but doing the same with
one large and two small files will see a much smaller reduction in the
elapsed time.
Note:

One way to determine if you have multiple processors is to use the
ZIPCPUID utility. This lists the CPUids that it finds, so the number of
entries indicates the number of processors available.

If the HyperZIP license is not present or the TASKS command is not
specified then the value defaults to 1.

Members of the same PDS are compressed in the same subtask
unless they are selected using individual file selections.
CACHEMEMORY
Cache memory is used in two ways
1. to ‘buffer’ data that is going to or from the Zip archive and this can
reduce I/O activity to the archive.
2. to ‘buffer’ the temporary files used by PKZIP.
96
PKZIP for MVS: User Reference
T4ASI025-00-00
In general, there is little gained from buffering the ZIP archive, however
buffering the PKZIP temporary files can significantly improve
performance. These temporary files are used by PKZIP to hold the
compressed data, prior to adding it to the archive. Using cache memory
can remove this write and subsequent read, reducing the time used
processing the ‘temporary’ file (which is actually in memory).
PKZIP divides the CACHEMEMORY equally between the compression
tasks and the archive. If the amount of memory allocated to one of these
processes (e.g. one compression task) is not sufficient to hold the data,
then the excess data is spilled to a temporary file, on a Least Recently
Used basis. When allocating cache memory, it is important to ensure
that the CACHEMEMORY amount divided by (the TASKS value + 2) is
large enough to hold the compressed data, otherwise much of the value
of cache memory is lost. For example, if the compressed file was
1,000,000 bytes, then the appropriate command is
-CACHEMEMORY(3000000).
Assuming that CACHEMEMORY is big enough to hold the data, then the
use of CACHEMEMORY can result in a 50% plus reduction in the
number of I/Os (EXCPs) and a small reduction in the CPU used to
write/reread these. BUT, instead of writing this data to disk, the
processing keeps it in memory, which means that memory usage will
increase. Whether this is an issue for an installation will depend on the
availability of memory on the executing system. If memory is short then
this could increase paging and the gain in the I/O reduction could be lost
in the additional paging. Assuming there is sufficient storage, then
elapsed time should decrease because of the reduction in I/Os.
If the HyperZIP license is not present or the CACHEMEMORY command
is not specified, then the value will default to 0, caching will not be
performed, and PKZIP will rely on temporary files on disk.
Recommendations
Typically, the following results are seen (where better performance
means shorter elapsed time):
T4ASI025-00-00

On a multi-processor system, the best performance (i.e. the shortest
elapsed time) is obtained by using both TASKS and
CACHEMEMORY.

Specifying TASKS greater than the number of processors does not
improve performance.

Using CACHEMEMORY on its own (i.e. with TASKS(1)) will have
little effect on performance for large files. Large files are those
whose compressed size will exceed the CACHEMEMORY allocation.

CACHEMEMORY can significantly reduce the overhead and time
involved in compressing a large number of small datasets, for
example, members of a PDS.
Performance
97

98
Large values of CACHEMEMORY can significantly effect other users
of the system. For example, using a large value of CACHEMEMORY
will typically mean that PKZIP processing will require a larger region.
If PKZIP uses a very large region then there must be enough page
data space to support a region of that size. A shortage of page data
space can have a severe effect on an MVS system. It might be
useful to discuss your requirements with an appropriate technical
person.
PKZIP for MVS: User Reference
T4ASI025-00-00
Chapter 14. Command Input
This chapter describes how the user can pass commands to PKZIP for
MVS.
There are three ways that commands can be supplied to PKZIP for MVS:
1. Configuration File
2. PARM parameter
3. SYSIN (file).
When processing commands, PKZIP for MVS will look for commands in
the Configuration file first, then the PARM parameters and lastly the
SYSIN records. When coding commands, note that the order of the
commands in the input is generally not important, however:
1. If commands are repeated, or mutually exclusive commands are
included in the input, the last command will be used.
2. The order of file selections may effect the order in which files are
added to a ZIP archive or the order in which files are extracted from
an archive. See also the -KEEPINORDER in Chapter 21. PKZIP
Commands.
Configuration File
A configuration file is available to allow users to specify installation wide
standards or defaults for PKZIP and PKUNZIP commands. These
defaults can also be specified for individuals, application groups etc. The
defaults are specified using commands that are placed in the
configuration file in exactly the same way as they are placed in SYSIN.
PKZIP or PKUNZIP JCL can specify a configuration file in two ways:
1. Directly using the ddname CONFIG – this described as the ‘local’
configuration file.
2. If there is no CONFIG ddname, ZIP processing will look for a ‘global’
configuration file with a fixed dataset name: PKZIP.CONFIG.ZIP for
PKZIP, or PKZIP.CONFIG.UNZIP for PKUNZIP. If the required global
file is found, it will be allocated with the ddname ZIPCFG.
The CONFIG or ZIPCFG file is processed before any parameters
contained in the PARM parameter or in the SYSIN dataset. In this file,
only the first 72 characters of each line of the dataset are examined for
commands. Multiple commands and/or file specifications may be placed
on a single line (though this is not recommended).
T4ASI025-00-00
Command Input
99
The configuration file is normally used to contain installation default
commands which can be overridden, if necessary, by commands in the
specific instance of PKZIP or PKUNZIP that is running.
If neither a specified configuration dataset using CONFIG, nor the Global
Configuration file is present, the program assumes that no configuration
dataset is required and processes the PARM parameter and the SYSIN
dataset using internal defaults for all parameters not specified.
Note:

If a ZIP or UNZIP job finds the Global Configuration file has been
allocated exclusively to another task or user, the processing will
attempt to access the configuration file every minute for 5 minutes
before terminating. During this processing, messages will be issued
to the Console and to the ZIP Output.
PARM parameter
Commands and file selections can be passed to PKZIP or PKUNZIP
invoked using JCL via the PARM parameter on the EXEC statement.
The PARM parameter can also used when invoking PKZIP for MVS
processing from an application program as described in Chapter 15.
Calling PKZIP from a Program.
When printing the PARM option, PKZIP for MVS attempts to output each
command on a separate line, as shown in the example below.
When input via JCL, the PARM parameter is restricted to a maximum
length of 100 characters (this is an MVS restriction not a PKZIP
restriction). In addition, it is not possible to split the input over several
lines because the commas used to denote continuation are interpreted by
PKZIP as file selections. This effectively limits the number of characters
still further, unless you use symbolic parameters as described below.
The PARM parameter does allow the use of JCL symbolic parameters for
command input to PKZIP. The procedure below demonstrates this idea.
//TPROC
PROC
//ZIP
EXEC PGM=PKZIP,REGION=2M,TIME=1440,
// PARM='-ECHO &Y &Z'
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSIN
DD DUMMY
//
PEND
//STEP2
EXEC TPROC,
//
Y=-ARCHIVE(OUTPUT.FILE.ZIP),
//
Z=-VIEW
This step could give the following output:
100
PKZIP for MVS: User Reference
T4ASI025-00-00
ZIP101I
ZIP011I
ZIP011I
ZIP011I
ZIP501I
ZIP502I
ZIP503I
ZIP505I
ZIP506I
ZIP102I
PKZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-VIEW
Length Method
Size Ratio
Date
Time CRC-32
Name
---------- ------- ---------- ----- ---------- ----- ----------1969 DeflatN
188 91% 04-04-19xx 11:19 4DA4CA28
MY/INPUT/DATA/SEQ
------------------- ----1969
188 91%
PKZIP MVS
2.5
level x ending.
SYSIN
Typically, most commands are passed to PKZIP for MVS by means of
the SYSIN dataset.
When using SYSIN, only the first 72 characters of each line of the
dataset are examined for commands. Multiple commands and/or file
specifications may be placed on a single line (though this is not
recommended).
An example of the use of SYSIN follows:
//ZIP
EXEC PGM=PKZIP,REGION=2M,TIME=1440
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(MY.NEW.ARCHIVE.ZIP)
-ARCHUNIT(SYSDA)
-ARCHPRIMARY(1)
-ARCHSECONDARY(1)
/*
Alternatively the commands can be placed in a sequential dataset or PDS
member and referenced via the SYSIN DD statement, an example
follows:
//ZIP
//STEPLIB
//SYSPRINT
//SYSIN
EXEC PGM=PKZIP,REGION=2M,TIME=1440
DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
DD SYSOUT=*
DD DISP=SHR,DSN=T4ZIP.COMMANDS(COMPRESS)
Here the PDS member T4ZIP.COMMANDS(COMPRESS) contains the
commands required, for example:
-ECHO
-ARCHIVE(MY.NEW.ARCHIVE.ZIP)
-ARCHUNIT(SYSDA)
-ARCHPRIMARY(1)
-ARCHSECONDARY(1)
If SYSIN is not required, either specify the –NOSYSIN command (as a
PARM) or include the JCL line //SYSIN DD DUMMY. If neither of these
options is used, operating system messages may be issued stating that
there is no DD statement for SYSIN.
T4ASI025-00-00
Command Input
101
Command Continuation Characters
As noted above, lines entered via SYSIN or Configuration file are limited
to using the first 72 characters of the input record.
For some commands, it can be useful to enter more than 72 characters.
To enable this, PKZIP supports two command continuation characters,
‘+’ and ‘|’.
These characters are used in the middle of a command parameter to
indicate that more input for the command is to be found on the following
card. To be correctly identified, there must be at least one space before
the continuation character and there must be no other (non blank)
characters after the continuation. The characters have slightly different
meanings as shown:
+
The characters on the following card will be added to the current
command, with all interleaving spaces except one removed.
|
The characters on the following card will be added to the current
command, with all interleaving spaces removed.
The use of these two characters is perhaps best shown by example.
If the input cards contain the following:
-HLQ(ARCHIVE.NAME, |
MVS.NAME)
then the associated command is:
-HLQ(ARCHIVE.NAME,MVS.NAME)
Alternatively, if the input cards contain the following:
-ARCHVOL(VOL001 +
VOL002)
then the associated command is:
-ARCHVOL(VOL001 VOL002)
When using continuation characters note that:
102

Continuation characters are only supported in SYSIN and
Configuration files.

The continuation must be in the same input, i.e. it is not possible to
continue a command from the Configuration file to the SYSIN file.

It is not possible to continue a string that requires the use of “ (quote)
characters. All strings surrounded with “ characters must be
completed in the same input record.
PKZIP for MVS: User Reference
T4ASI025-00-00

Only command parameters (i.e. the values between the opening and
closing brackets) can be split. It is not possible to split a command
string (like -ARCHIVE), over multiple lines. It is also not possible to
split a file selection over multiple lines.

The number of continuation lines is limited by the maximum size of
the parameter accepted by the command being continued. Note that
there is a total maximum number of characters (including white
space) of 256 for any command.

Continuation lines will be output depending the current setting of the
–ECHO parameter.

The ‘|’ continuation character may be translated to the ‘¦’ character in
certain countries.
Comment Lines
It is possible to document input commands using a comment line.
Comment lines begin with a ‘*’ in column 1 as shown in the following
examples:
-ARCHVOL(VOL001 VOL002)
* Spread the archive over two volumes
-TEMPVOL(WORK01)
* but only have the temporary files on one volume
When using comment lines note that:
T4ASI025-00-00

Comment lines are only supported in SYSIN and Configuration files.

Comment lines will be output depending the current setting of the –
ECHO parameter.

Comment lines are not ‘continued’ using the continuation character.
Command Input
103
Chapter 15. Calling PKZIP from a Program
PKZIP (and PKUNZIP) can be invoked from another program if required.
When developing a program to invoke PKZIP or PKUNZIP, note the
following:
 PKZIP/PKUNZIP adheres to standard IBM linkage conventions
 Return codes are passed back to your program via register 15
 Commands can be passed to PKZIP/PKUNZIP via SYSIN
 Commands can be passed to PKZIP/PKUNZIP via a parameter list
 The configuration file will be used if available
 SYSIN can be ignored by using the -NOSYSIN command
 Output is written to SYSPRINT.
PKZIP for MVS is specifically designed to compress and decompress
datasets. If you need to process a stream or block of data then you
should use the PKZIP Data Compression Libraries (DCL). The DCL is
designed specifically for inclusion into user written programs and offers
the programmer the flexibility to process data from any source. The DCL
is available on other platforms but it is not compatible with PKZIP version
2. Further information on the PKZIP Data Compression Libraries can be
obtained from your supplier.
Examples
The following examples are given overleaf:
 Calling PKZIP from an Assembler program
 Calling PKZIP from a COBOL program.
Resource Allocation and Deallocation
When a batch process completes (with a 0 or non zero return and/or
Abend), OS/390 will automatically free any resources held by that
process. So resources that are not actually freed by the ZIP processing,
will be freed by the operating system.
However when ZIP is invoked via the API this does not happen. When
invoked via the API (or using the ISPF interface described in Chapter 17.
Using the ISPF Panel Interface) it is important that the ZIP processing
return all resources that it acquires. The two most important of these are
Storage and File Allocations (or Dynamic Allocations).
T4ASI025-00-00
Calling PKZIP from a Program
105
Storage
When repeatedly calling PKZIP or PKUNZIP from an application
program, the use and freeing of storage by PKZIP/PKUNZIP processing
may become significant.
When the process completes with a return code of 0, the processing
should have returned all storage that has been allocated by it.
However in certain error circumstances (when the return code is non 0)
and when the processing Abends in some way, storage may not be
returned. Subsequent calls to PKZIP of PKUNZIP could see a variety of
storage related problems, such as the ZIP Abend U008 or a system
Abend such as S106.
To reduce the impact of these problems, ZIP processing logs storage
requests over a certain size (currently set to 2K). On termination, ZIP
processing will attempt to free this storage even if an error or Abend has
occurred. In most circumstances this should mean that the loss of
storage is restricted to a minimal amount – typically less than 20K below
and above the 16 MB ‘line’.
However this may be a critical amount of storage, particularly if the
processing is repeated frequently. If the invoked ZIP processing fails in
anyway (giving return code greater than 0 or an Abend), then the invoking
program should be aware that subsequent processing may fail. In
general, it is recommended that the invocation of ZIP processing be
stopped after a non zero return code or Abend.
File Allocation
All file allocations are logged by the ZIP processing, which will free the
Allocation even if an error or Abend has occurred. However, it is
recommended that the invocation of ZIP processing be stopped after a
non zero return code or Abend, to ensure that all allocations are reset
satisfactorily.
106
PKZIP for MVS: User Reference
T4ASI025-00-00
Invoking PKZIP/PKUNZIP from an assembler program
The following example shows how PKZIP can be invoked from an
assembler program.
Sample Assembler Code
AMODE 31
RMODE 24
*
...
LA
ST
R1,PARMLEN
R1,PARMADDR
MVC
MVC
PARMLEN,=H'49'
Store length of parameters
PARMCARD,=CL49'-ECHO -NOSYSIN -ARCHIVE(T4ZIP.IRF.PCP1.ZIP) -VIEW'
WTO
'ABOUT TO CALL PKZIP'
Note – modifies R1
LOAD
LR
LA
BALR
EP=PKZIP
R15,R0
R1,PARMADDR
R14,R15
Load PKZIP module
R15 = Entry point address
R1 = Address of parameter list address
Call PKZIP
WTO
...
'RETURNED FROM PKZIP'
Note – modifies R1
A
H
CL100
Stores the address of the parameter list
Halfword length
Can be up to 65535 characters
R1 = Address of parameter length & field
Store pointer to parameter information
*
*
*
*
*
PARMADDR DS
PARMLEN DS
PARMCARD DS
Notes
To use PKZIP (or PKUNZIP if you are decompressing) from within your
program you should first load the PKZIP (or PKUNZIP) module and then
call it using a BALR instruction. Parameters can be passed to it via
Register 1, see the diagram below for more information:
GPR1
+--------+
+
|
| 
|
+--------+
+
Fullword
+--------+
|
| 
+--------+
Halfword
0 to 65535 bytes
+-----+-----------------------------| Len | Parameters
+-----+------------------------------
Specify the -NOSYSIN command if you are not planning to use SYSIN for
command input. Note that problems can occur if PKZIP attempts to open
the SYSIN dataset after it has already been opened by the calling
program.
PKZIP for MVS returns control in the same addressing mode in which it
was invoked. To ensure that the addressing mode is correct, 24 bit
programs should use BALR or BASR instructions rather than BASSM
instruction when invoking PKZIP or PKUNZIP.
T4ASI025-00-00
Calling PKZIP from a Program
107
Sample Sysprint
ZIP101I
ZIP501I
ZIP502I
ZIP503I
ZIP505I
ZIP506I
ZIP102I
PKZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
Length Method
Size Ratio
Date
Time CRC-32
Name
---------- ------- ---------- ----- ---------- ----- ----------411 DeflatN
145 65% 09-15-19xx 09:41 0D00410F
T4ZIP/SYSTST/CON
------------------- ----411
145 65%
PKZIP MVS
2.5
level x ending.
Sample Job Log
J E S 2
J O B
17.49.00
17.49.02
17.49.02
17.49.02
17.49.03
17.49.05
17.49.06
17.49.06
17.49.06
17.49.07
JOB07769 IRR010I USERID DG
IS ASSIGNED TO THIS JOB.
JOB07769 ICH70001I DG
LAST ACCESS AT 17:47:10 ON WEDNESDAY, NOVE
JOB07769 $HASP373 DGTEST
STARTED - INIT
A - CLASS A - SYS IPO1
JOB07769 IEF403I DGTEST - STARTED - TIME=17.49.02
JOB07769 +ENTERED PROG
JOB07769 +EXITED PROG
JOB07769 -DGTEST
STPZIP
ENDED - COND CODE
00
JOB07769 IEF404I DGTEST - ENDED - TIME=17.49.06
JOB07769 -DGTEST
COMPLETED
JOB07769 $HASP395 DGTEST
ENDED
108
L O G
PKZIP for MVS: User Reference
T4ASI025-00-00
Invoking PKZIP/PKUNZIP from a COBOL program
The following example shows how PKZIP can be invoked from a COBOL
program.
Sample COBOL Program
IDENTIFICATION DIVISION.
PROGRAM-ID. CAHPKZIP.
AUTHOR. C.A HANDS.
REMARKS.
******************************************************************
* CALL PKZIP
******************************************************************
* VERSION
DATE
WHO
DESCRIPTION
*
* ------- -------- --- --------------------------------------- *
* 1.0/0 18/03/97 CAH
INITIAL VERSION
*
******************************************************************
*
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 FILLER.
05 FILLER
PIC X(8) VALUE 'CAHPKZIP'.
05 FILLER
PIC X(21)
VALUE '(C) TARGETFOUR – 19xx'.
*
01 FILLER.
05 WS-PGM-NAME
PIC X(8) VALUE SPACES.
*
01 WS-PARM.
05 WS-PARM-LEN
PIC S9(3) COMP VALUE +52.
05 WS-PARM-DATA
PIC X(100) VALUE
'-ECHO -NOSYSIN -ARCHIVE(CAH.ZIP.OPSYS) -VIEW
'.
*
*
PROCEDURE DIVISION.
SKIP3
A00-MAINLINE SECTION.
*****************************************************************
*
CALL PKZIP PASSING THE REQUIRE PARAMETERS.
*
*****************************************************************
*
DISPLAY 'START OF CAHPKZIP' UPON CONSOLE.
MOVE 'PKZIP' TO WS-PGM-NAME.
CALL WS-PGM-NAME USING WS-PARM.
DISPLAY 'END OF CAHPKZIP' UPON CONSOLE
STOP RUN.
Notes
Move PKZIP to WS-PGM-NAME for compression or PKUNZIP for
decompression.
The WS-PARM-DATA field can contain up to 65535 characters, and
should be padded with spaces if required. WS-PARM-LEN should be set
to the length of the input commands in WS-PARM-DATA.
Specify the -NOSYSIN command if you are not planning to use SYSIN for
command input. Note that problems can occur if PKZIP attempts to open
the SYSIN dataset after the calling program has already opened it.
T4ASI025-00-00
Calling PKZIP from a Program
109
Sample Sysprint
ZIP101I
ZIP010I
ZIP501I
ZIP502I
ZIP503I
ZIP505I
ZIP506I
ZIP102I
PKZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO -NOSYSIN -ARCHIVE(CAH.ZIP.OPSYS) -VIEW
Length Method
Size Ratio
Date
Time CRC-32
Name
---------- ------- ---------- ----- ---------- ----- ----------1641 DeflatN
183 89% 02-26-19xx 12:05 5C57E219
T4ZIP/SYSTST/CON
------------------- ----1641
183 89%
PKZIP MVS
2.5
level x ending.
Sample Job Log
J E S 2
J O B
11.58.13
11.58.16
11.58.16
11.58.16
11.58.19
11.58.23
11.58.23
11.58.23
11.58.23
11.58.23
JOB08851
JOB08851
JOB08851
JOB08851
JOB08851
JOB08851
JOB08851
JOB08851
JOB08851
JOB08851
110
L O G
IRR010I USERID CAH
IS ASSIGNED TO THIS JOB.
ICH70001I CAH
LAST ACCESS AT 11:56:44 ON WEDNESDAY, MAR
$HASP373 CAHPKZIP STARTED - INIT
L - CLASS L - SYS IPO1
IEF403I CAHPKZIP - STARTED - TIME=11.58.16
+START OF CAHPKZIP
+END OF CAHPKZIP
-CAHPKZIP
CAHPKZIP ENDED - COND CODE
00
IEF404I CAHPKZIP - ENDED - TIME=11.58.23
-CAHPKZIP
COMPLETED
$HASP395 CAHPKZIP ENDED
PKZIP for MVS: User Reference
T4ASI025-00-00
Chapter 16. Translation and Translation Tables
This chapter discusses translation and Translation Tables as they are
used in PKZIP for MVS. Translation is used in two places:
1. Translation of data so that it is in a suitable format for the target
application. This translation is only performed for text files.
2. Translation of control information (such as the file name) so that it is
a suitable format for the target platform. This translation is required
for text and binary files.
While it may be used for other purposes, the translation facilities provided
with PKZIP for MVS are primarily intended to be used to translate
between the EBCDIC and ASCII character sets.
Note:

PKZIP translation is designed to support single-byte character sets
(SBCS). It does not support Double Byte Character sets (DBCS) or
Unicode. Users who need to translate DBCS or Unicode files, must
perform this processing prior to compressing files into an archive or
after extracting files from an archive. Files processed in this way
should be compressed using the -BINARY command.

If an archive will only be used on an EBCDIC platform(s), then the
files should be compressed as binary files. In this situation, data
translation is an overhead that uses additional CPU resources.
PKZIP Translation
A ZIP archive can be transferred from one platform to another, and can
be decompressed or modified by a copy of PKUNZIP or PKZIP which is
running on that platform. The internal format of a ZIP archive is identical
no matter which platform compressed the files that it contains. PKZIP for
MVS achieves this by translating text files from EBCDIC to ASCII before
compression, whilst PKUNZIP for MVS will translate text files from ASCII
to EBCDIC after decompression. Control information, such as filenames,
password information, and comments are also translated to and from
EBCDIC. The translation(s) is(are) performed using a translation table
which exists as a loadable module in your load library.
When executed, PKZIP for MVS will use the default translation table
called ASCII (defined when the product is installed) or one specified by
command to perform this translation.
T4ASI025-00-00
Translation Tables
111
Commands used for translation
The –TEXT command should be used to force translation of the data,
-BINARY should be used to ensure that there is no translation of the
data. If neither has been specified, an initial portion of the input file is
read and checked to determine if it contains Text or Binary data. The
algorithm used to make this decision is the same as that used on other
PKZIP platforms, however for some files the default decision may not
correct so specifying –TEXT or –BINARY is recommended where
possible.
The -TRAN command specifies the translation table to be used for data
in text files. This is used in PKZIP to specify the translation table used for
converting text characters from EBCDIC to ASCII. It is used in PKUNZIP
to specify the translation table used for converting text characters from
ASCII to EBCDIC.
The –FTRAN command specifies the translation table that is used for all
the control information held in a ZIP archive, such as filenames,
password information, and comments. This could be used in PKUNZIP,
for instance, to make sure that files that were compressed on an
MS-DOS platform are decompressed with filenames that did not contain
characters that are illegal for MVS dataset names and member names,
such as the “_” or “~” characters. It might be used on PKZIP to ensure
that a password character is translated as the same hexadecimal string
on all platforms.
The –FTRAN and -TRAN translation tables may be different.
For more information on these commands for PKZIP, refer to Chapter 21.
PKZIP Commands; for more information on them for PKUNZIP, refer to
Chapter 23. PKUNZIP Commands.
If the supplied translation tables do not meet your needs then the source
for the standard translation tables supplied with PKZIP are provided (see
Defined Code pages later in this chapter). You may modify this as
necessary to meet your needs, using the instructions in Modifying a
translation table later in this chapter.
Translation table processing
The translation table consists of 2 sets of 256 bytes. The first set of 256
bytes is used for translating from data coded in the external MVS
environment (typically the EBCDIC character set) to data coded for the
ZIP archive (which is normally the ASCII character set). The second set
of 256 bytes is used for translating from data coded for the ZIP archive
(which is normally the ASCII character set) to data coded for the external
MVS environment (typically the EBCDIC character set).
For each set of 256 bytes, PKZIP uses the following procedure for
translation (for this example, we assume that we are using the first set of
256 bytes for translating from EBCDIC data to ASCII data on
compression).
For each character to be translated, perform the following procedure:
112
PKZIP for MVS: User Reference
T4ASI025-00-00
1. Take the byte to be translated as a numeric value.
2. Use this value as the offset (in bytes) in the translation table.
3. Replace the original byte with the byte value found at that offset
within the translation table.
The ASCII character set
Characters 32 through 127 (x’20’ through x’7F’) are defined by the
American Standard Code for Interchange of Information (ASCII). This 7
bit standard for character encoding accommodates all of the standard
characters in the English alphabet and can be unambiguously (with a few
exception such as the ,’|’, ‘[‘ and ‘]’ characters) translated to/from similar
characters in the EBCDIC character for most commonly used code
pages. Use of any other characters in text may make it difficult to
exchange text information with users in other countries or using different
code pages.
Modifying a translation table
In some circumstances, the default translation table may be insufficient
for your needs. If this is so, you should create a new translation table to
meet the requirements. The instructions below can be used to create a
new version of the translation table.
We strongly recommend that you try the process out on a very simple
example first so that you fully understand the process involved. For
example, try creating a translation table which converts EBCDIC "A" to
ASCII "Z" and ASCII "Z" to EBCDIC "A". However, if you do this you must
also modify the table so that EBCDIC "Z" is converted to ASCII "A" and
ASCII "A" is converted to EBCDIC "Z". If you do not make this second set
of changes then PKZIP will not know whether to convert an ASCII "A" to
an EBCDIC "A" or "Z". Test your changes by rerunning the Installation
Verification Procedure used at installation time with the -FTRAN
command.
It is vital that a 1-1 relationship is maintained across all the translations,
otherwise the results of the compressions and decompressions would
become unpredictable. If you get into difficulties try writing down the
conversions you have made on paper i.e. in the example above we had:
EBCDIC
A

A

But
Z

above!)
So change
Z

conflict)
T4ASI025-00-00
ASCII
A
Z
EBCDIC
A
A
Z
Z
(gives a conflict with
A
Z
(to remove the
(before any changes)
(after first change)
Translation Tables
113
Procedure
It is important that characters are modified in both the ASCII to EBCDIC
and the EBCDIC to ASCII tables. You cannot change just one side of the
conversion. In addition, please take retain of the structure of the table,
and keep the format (spacing, line length etc.) exactly like the original
table.
1. Edit the SOURCE library and create a new member (called, for
example, MYASCII). Copy the source of the translation table you
wish to modify (e.g. UKASCII or USASCII), into the new member.
The new member can now be used for your own translation table
source.
2. For each character that you wish to modify, change the
corresponding hex character in both tables. The procedure for
changing characters is explained below.
For each character that is incorrect in the translation table, perform
the following procedure.
a. Find the EBCDIC value of the character that is to be replaced.
b. Find the ASCII value of the character to which the EBCDIC
character should be converted.
c. Look through the first set of 256 bytes in the translation table
source and examine the byte which is at the offset of the value of
the EBCDIC character to be replaced.
d. Take a note of the byte value at that offset.
e. Replace the byte value with the ASCII value of the replacement
character.
f. Look through the second set of 256 bytes in the translation table
source, and examine the byte which is at the offset of the ASCII
character to be replaced.
g. Take a note of the byte value at that offset.
h. Replace the byte value with the EBCDIC value of the
replacement character.
i. For each of the values noted and replaced in the translation
table, the appropriate character must be replaced with a suitable
value, so that the table is symmetrical.
In the A  Z example above you would make the following changes (the
USASCII table is used as a basis here):
114
PKZIP for MVS: User Reference
T4ASI025-00-00
USASCII
EBCDIC
CSECT
...
DC
...
DC
DC
DC
...
DC
...
DC
...
DC
DC
DC
DC
...
XL1'7B',XL1'5A',XL1'42',XL1'43'
/*C0-CF*/
XL1'5C',XL1'F0',XL1'53',XL1'54'
XL1'55',XL1'56',XL1'57',XL1'58'
XL1'59',XL1'41',XL1'FD',XL1'F5'
/*E0-EF*/
XL1'00',XL1'01',XL1'02',XL1'03'
/*00-0F*/
XL1'7C',XL1'E9',XL1'C2',XL1'C3'
/*40-4F*/
XL1'D7',XL1'D8',XL1'D9',XL1'E2'
XL1'E3',XL1'E4',XL1'E5',XL1'E6'
XL1'E7',XL1'E8',XL1'C1',XL1'BA'
XL1'E0',XL1'BB',XL1'B0',XL1'6D'
/*50-5F*/
3. Assemble the translation table, using the JCL shown below, and link
it into the load library containing PKZIP. Sample JCL is available in
the member ASMTRAN in the CNTL library supplied with this product
(see Appendix A. Installation Guide).
4. Quote the new translation table to PKZIP or PKUNZIP using the
-TRAN or -FTRAN command as necessary.
Example JCL for assembling a modified translation table, as explained
above, follows.
//<jobcard>
//ASM
EXEC PGM=IEV90,
//
PARM='DECK,NOOBJECT,LIST,BATCH'
//SYSIN
DD DISP=SHR,DSN=<Translation table source>
//SYSLIB
DD DISP=SHR,DSN=SYS1.MACLIB
//SYSUT1
DD UNIT=SYSDA,SPACE=(1700,(400,400))
//SYSPUNCH DD DSN=&&LOADSET,UNIT=SYSDA,DISP=(,PASS),
//
SPACE=(400,(100,100,1)),
//
DCB=(RECFM=FB,LRECL=80,BLKSIZE=400)
//SYSPRINT DD SYSOUT=*
//*
//LKED
EXEC PGM=IEWL,COND=(4,LT,ASM),
//
PARM='XREF,NCAL'
//SYSLMOD DD DISP=SHR,DSN=<PKZIP load library>(<module
name>)
//SYSUT1
DD UNIT=SYSDA,DCB=BLKSIZE=1024,
//
SPACE=(1024,(200,20))
//SYSPRINT DD SYSOUT=*
//SYSLIN
DD DSN=&&LOADSET,DISP=(OLD,DELETE)
//
JCL for assembling the translation table
<job card>
T4ASI025-00-00
should be replaced with the job details
required for running this job, in
accordance with your installation
standards.
Translation Tables
115
<Translation table source>
should be replaced by the dataset name
and prefix in accordance with your
installation standards, or with the
suggested dataset name provided in
Contents of the PKZIP for MVS Libraries
in Appendix A. Installation Guide.
<PKZIP load library>
should be replaced by the dataset name
and prefix in accordance with your
installation standards, or with the
suggested dataset name provided in the
PKZIP for MVS Supplied Libraries in
Appendix A. Installation Guide.
<module name>
should be replaced by the module name
which corresponds to the member name
specified in <Translation table source>
above.
Code Pages
When a (SBCS) text document is displayed or printed, each byte (8 bits)
is translated to a displayable/printable character. This means that there
are 256 possible bit-patterns or code points available to represent a
character.
The collection of all 256 code points and the corresponding individual
character assignments are called a code page. It is the code page that
determines which displayable character will be seen on the screen. So
for example, on a DOS PC, the character displayed for the bit pattern
x’F3’ may be one of:

≤ (greater than or equal to) when using the ‘Personal Computer’ code
page (number 437) which is typically used in the US and North
America.

¾ (the fraction 3/4) when using the ‘Personal Computer –
Multilingual’ code page (number 850) which is typically used in the
UK and Europe.

In addition, it will be displayed as ó (lower case o with accent) by
most PC Windows applications, using the ‘ISO/ANSI Multilingual’
code page (number 819).
The same sort of differences can be seen when displaying files on a
mainframe, for example the character x’4A’ will be displayed as:
116

[ (open square bracket) when using the ‘International #5’ code page
(number 500).

¢ (cent symbol) when using ‘USA/Canada’ code page (number 037).
PKZIP for MVS: User Reference
T4ASI025-00-00
From this it should be clear that when transferring text documents from
one system to another:

The files may look different even when the data displayed is the
same.

The files may look the same, even when the data displayed is
different.
This makes the determination of the correct translation quite difficult even
when the source and target platforms are defined.
Euro
To support the euro symbol, EBCDIC code pages on the mainframe have
been changed so that the ‘¤’ currency symbol (x’9F’) would display the
euro correctly. So the x’9F’ will look like a euro if the display is using one
of the code pages that supports it (e.g. ‘US/Canada (euro)’ page 1140) or
it will look like the currency symbol using a non euro supporting page.
[Note that some code pages for Scandinavian countries use X’5A’ rather
than x’9F’ for the euro.]
On other platforms (notably the PC) new code pages have been created
with the euro character using a number of code points including x’80’,
X’88’ and X’A1’ (depending on the code page). This change is not
compatible with the change made on the mainframe. For example, using
the DOS ‘Personal Computer – Multilingual’ code page 850, x’A1’ was
the ‘dot-less i’. When converting to EBCDIC, this character would
normally be translated to x’55’. However if the PC is displaying the euro
character (using ‘Personal Computer – Multilingual (euro)’ number 858 or
a euro patched version of 850) then this should be translated to x’9F’.
As the character to be used for the euro depends on the target platform
and the code page that is in use on that platform, it is not possible to
provide a generic translation table that supports the euro. In most cases:

Mainframe files will use x’9F’, and

PC based files, the euro will be processed on a system that uses
x’80’ as the code point for the euro symbol.
PKZIP for MVS uses these code points as a basis for the euro enabled
translation tables supplied with the product.
Note:

T4ASI025-00-00
The euro symbol is ‘€’ which will display as a ‘box’ if your system
does not support the euro. As a picture, the euro looks like the
following:
Translation Tables
117
Defined Code pages
The following table lists some of the more commonly used code pages:
Mainframe code pages:

US/Canada (037 without, 1140 with euro support)

UK (285 without, 1146 with euro support).
PC (DOS) code pages:

Personal Computer (437), typically used in the US/Canada

Personal Computer – Multilingual (850 without, 858 with euro
support).
The supplied translation tables
The source for the translation tables supplied with PKZIP for MVS are
included in the Source dataset (which should be created as part of the
product installation). This section describes when they should be used.
Typically, the translation tables have been designed to take characters as
they would be displayed on the EBCDIC mainframe and convert these to
a similar displayable character on a PC.
LATIN1
This table is only intended for use when the ISO 8859 Part 1 (Latin No.1 without euro) character set is required – any other characters are
converted to ‘?’. This table should only be used when there is a need to
restrict the characters used.
USASCII
This table is intended for text files transferred between PCs using the
(US) code page 437 and mainframe processing using the code page 037.
USASCIIE
This is a version of the USASCII table described above, changed to
support the euro at ASCII code point x’80’ and EDCDIC code point x’9F’.
Note that to maintain symmetry, this table converts the ASCII x’0F’ to the
EBCDIC character x’68’ (Ç) and vice versa.
UKASCII
This table is intended for text files transferred between PCs using the
Multi-lingual code page 850 and mainframe processing using the code
page 285.
118
PKZIP for MVS: User Reference
T4ASI025-00-00
UKASCIIE
This is a version of the UKASCII table described above, changed to
support the euro at ASCII code point x’80’ and EDCDIC code point x’9F’.
Note that to maintain symmetry, this table converts the ASCII x’CF’
(currency symbol) to the EBCDIC character x’68’ (Ç) and vice versa.
T4ASI025-00-00
Translation Tables
119
Part 4. Additional Facilities
T4ASI025-00-00
Additional Facilities
121
Chapter 17. Using the ISPF Panel Interface
This section describes how to use the ISPF panel interface.
The interface enables the user to create and submit foreground or batch
jobs interactively using PKZIP or PKUNZIP via TSO.
The ISPF panel interface is a licensable option in PKZIP for MVS. More
details on licensing can be found in Appendix B. Licensing Guide or
directly from your PKZIP supplier.
Starting the Panel Interface
Use these instructions if PKZIP processing has not been integrated into
the standard ISPF panels.
The TSO command PKSTART is used to start the PKZIP ISPF Interface.
It accepts one parameter, which can be:

S, if work datasets should be allocated using the TSO PREFIX

U (or missing), if work datasets should be allocated using the TSO
Userid.
For example, to start the processing using the TSO PREFIX to define
work datasets, the following command could be used:
PKSTART S
Note:

The ‘S’ prefix option requires that the TSO PREFIX be used and be
different for different users, to ensure that work datasets used during
its operation are unique for each user.
Starting the Panel Interface for the first time
When starting the panel interface for the first time, the messages:
Configuration not set up.
Use Configuration Panel to set Defaults.
will be displayed to remind the user to set up the PKZIP configuration.
T4ASI025-00-00
Using the ISPF Panel Interface
123
Main Menu
When the ISPF Interface has finished initialising, the following main panel
menu will be displayed:
------------ PKZIP for MVS: Main Menu ----------------------- Panel
Version 1.1
OPTION ===>
C
H
L
U
V
Z
Configure
Help
License
Unzip
View
Zip
Specify defaults for PKZIP
Help on using these Panels
Product licensing
Decompress Archived Data
View contents of an Archive
Compress Data Sets or Members
X
EXIT
Exit PKZIP for MVS Panel Interface
F3 to exit screen
proceed
F4 to return
Option followed by Enter to
From this Menu, the functions can be invoked by entering the letter
associated with the function.
The first thing that each user must do is set up his/her own configuration
information. This is achieved by selecting option “C”.
Configuration Panel
This panel is used to configure default settings for PKZIP for MVS
processing.
------------ PKZIP for MVS: Configuration --------------------Panel
Version 1.1
OPTION ===>
Load Library . . : PKZIP.V25x.LOADLIB
Specify Configuration Files
ZIP Processing . :
UNZIP Processing :
Specify Translation Table(s)
Text File Data:
File Names:
Specify Allocation Information for temporary files
Volume . . . . . :
Unit: SYSDA
SMS Class:
Data:
Man.:
Stor.:
Specify Job Card(s)
//ZIPJOB JOB CLASS=A
//*
//*
F3 to exit screen
124
Enter to save new settings
PKZIP for MVS: User Reference
T4ASI025-00-00
This screen is used to:

Identify the Load Library to use for PKZIP, PKUNZIP and License
utility jobs.

Specify the installation or personal configuration files which will be
used by PKZIP and PKUNZIP (typically used when there are
standard settings which should be included when compressing or
decompressing datasets).

Specify the default Data Translation and File Name Translation
tables.

Specify the default allocation information, which PKUNZIP can use to
create temporary datasets when viewing data within a ZIP archive .

Specify the Job Cards to be added to the front of any generated JCL
stream.
When in this panel “enter” will update the configuration details. Return to
the main menu by pressing “F3”.
Note:

The PKZIP and PKUNZIP configuration files specified here are not
used when viewing archives or browsing files via the ISPF panel
interface.

The default settings specified will remain in place across TSO
sessions until the next time they are changed using this panel.
Using the Panels
Once configured, processing is directly invoked from the Main Menu. The
three panels that support compression (Option Z), decompression
(Option U) and view (Option V), have several features in common.
Batch, Foreground and Quiet mode
Each of these screens provides the option to execute PKZIP or PKUNZIP
jobs in Foreground or Batch mode. When running the in foreground,
Quiet mode will only display PKZIP for MVS output when an error occurs.
Extra Command Lines
These are present to support extra commands, which are not directly
supported on the panel(s). The standard PKZIP and PKUNZIP
commands (as described elsewhere in the manual) can be coded. In
addition, more than one command can be entered on each extra
command line.
T4ASI025-00-00
Using the ISPF Panel Interface
125
Compressing Data
This function is accessed from option “Z” on the main menu.
------------ PKZIP for MVS: Compress Files ------------------ Panel
Version 1.1
OPTION ===>
Specify Archive details
Archive Name
:
Volume . . . :
SMS Class: Data:
Unit:
Man.:
Stor.:
Specify the files to be compressed
File Selection :
Function . . . : A (A - Add, F - Freshen, U - Update, D - Delete)
More Selections: N (Y - Prompt for additional selections, N - None)
Advanced Options : N (Y - Prompt for additional options, N - No)
MODE
. . . . . : F (F - Foreground, B - Batch, Q - Quiet)
Extra Options . :
. . . . . . . :
F3 to cancel & exit screen
archive
Enter to process
View to VIEW
This panel contains all the usual options for compressing data. “Enter” is
used to initiate processing of the panel.
Further information for the ZIP process may be entered on two additional
screens:
1. To use additional file selections, place a “Y” next to More Selections.
This will invoke the Additional Files panel where (up to ten) further file
selections can be entered.
2. To use any of the more advanced commands, place a “Y” against
Advanced Options. This will invoke the PKZIP Advanced Options
screen that supports some of the more sophisticated options of ZIP.
Press “Enter” to process any input on the Additional Files or Advanced
Options panels - use “F3” to cancel it.
It is also possible to view the archive (if it exists) by typing “View” on the
option line. This will display the standard VIEW output for the specified
archive.
126
PKZIP for MVS: User Reference
T4ASI025-00-00
Decompressing Data
This function is accessed from option “U” on the main menu.
------------ PKZIP for MVS: Extract files ------------------- Panel
Version 1.1
OPTION ===>
Specify Archive from which files will be extracted
Archive Name . :
Test Archive Integrity only: N (Y - Yes, N - No)
Specify File(s) to be extracted
File Selection :
Rename to . . . :
Overwrite/Insert: N (O - Overwrite, I - Insert Member, N - None)
More Selections : N (Y - Prompt for additional selections, N - Don't)
Specify Allocation information for extracted files
Volume . . . . :
Unit:
SMS Class: Data :
Man.:
Stor.:
Advanced Options
MODE . . . . . .
Extra Options .
. . . . . . .
: N (Y - Prompt for Advanced Options, N - Don't)
: F (F - Foreground, B - Batch, Q - Quiet)
:
:
F3 to cancel & exit screen
archive
Enter to process
View to VIEW
This panel contains all the usual options for decompressing data,
including:

The Rename option supports renaming a file while it is being
decompressed.

While the default for PKUNZIP is not to decompress data into an
existing dataset, the Overwrite option allows the user to overwrite
existing datasets. The Insert option enables the user to decompress
a file into a new PDS member of existing PDS.
“Enter” is used to initiate processing of the panel.
Further information for the UNZIP process may be entered on two
additional screens:
1. To select more files for decompression, place a “Y” next to More
Selections. This will invoke the Additional Files panel where (up to
ten) further file selections can be entered.
2. To use any of the more advanced commands, place a “Y” against
Advanced Options. This will invoke the PKUNZIP Advanced Options
screen which supports some of the more sophisticated options of
UNZIP.
Press “Enter” to process any input on the Additional Files or Advanced
Options panels - use “F3” to cancel it.
It is also possible to view the archive by typing “View” on the option line.
This will display the standard VIEW output for the specified archive.
T4ASI025-00-00
Using the ISPF Panel Interface
127
Viewing Archives
Archives can be viewed by selecting “V” from the main menu.
------------ PKZIP for MVS: View Archive ---------------------Panel
Version 1.1
OPTION ===>
Specify Archive
Archive Name :
Specify VIEW
Type . . .
Sort by .
Size)
Order . .
Options
. : V (V - View, D - Detail)
. :
(D - Date, N - Name, O - Offset, P - Percent, S . :
(A - Ascending, D - Descending)
MODE . . . . . : F (F - Foreground, B - Batch)
Extra Options :
. . . :
F3 to cancel & exit screen
Enter to process
This panel is used to obtain a Standard or Detailed view of an archive
and to sort the contents of the archive as required. See the -VIEW
command and the –VIEW command DETAIL option in Chapter 23.
PKUNZIP Commands, for more information about what these commands
display.
To view information for one or more selected files, input the file names
using the Extra Options lines. Names of non MVS files should be
enclosed in double quotes.
Browsing Data in an Archive
Having first done a view of an archive, it is then possible to view the data
in a compressed file provided that it is a sequential dataset or a PDS
member. The contents of encrypted files cannot be browsed.
To browse a file, place a select code of “B” beside the name of the
required file. PKZIP will be used to extract the file and use ISPF to
browse the created dataset.
Note:

128
PDS member datasets compressed with versions of PKZIP for MVS
before Version 2.2 or with the -NOATTRIB command will be browsed
as sequential files.
PKZIP for MVS: User Reference
T4ASI025-00-00
Product License Information
Information relating to CPU ID and current product license details can be
obtained by selecting “L” from the main menu.
------------ PKZIP for MVS: License Processing ---------------Panel
Version 1.1
OPTION ===>
View current License Details :
(Y - Yes, N - No)
Display CPU ID . . . . . . . :
(Y - Yes, N - No)
MODE . . . . . . . . . . . . : F (F - Foreground, B - Batch)
F3 to exit screen
Enter to process selection
A “Y” is used to indicate which option is to be reported (only one will be
processed). “Enter” will process the selection.
A sample Licence Details report may look like this:
T4ASI025-00-00
Using the ISPF Panel Interface
129
T4X101I
T4X030I
T4X080I
T4X100I
T4X080I
T4X081I
T4X081I
T4X080I
T4X082I
T4X080I
T4X084I
T4X085I
T4X088I
T4X089I
T4X089I
T4X089I
T4X089I
T4X089I
T4X089I
T4X089I
T4X089I
T4X089I
T4X089I
T4X087I
T4X080I
T4X090I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X080I
T4X081I
T4X080I
T4X102I
License Process: T4XPLIC MVS
4.0
level x, starting.
Executing on CPU: 120F0573xxxx.
*
Processing Card:
R
*
Report on contents of License Table
=====================================
*
Version: 0100, last updated on: 19xx0515, for: Evaluation User
*
Product: PKZMVS25, License Num: UNLICENSED
.
Start: 19xx0515, End: 19xx0614, Users: 32767.
Functions: YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY.
- PKZIP Compression.
- PKUNZIP Decompression.
- PKZIP BPAM file handlers.
- PKZIP BSAM file handlers.
- PKZIP multi-tasking (de)compression.
- PKZIP fast temporary file and archive handler.
- PKZIP VSAM file handlers.
- PKZIP magnetic tape/cartridge file handlers.
- PKZIP ISPF panels.
- PKZIP GigaZip.
Licensed for: 12**0573xxxx, Matched.
*
CPU Table.
CPU Number: 00, CPU Id: 120F0573xxxx.
CPU Number: 01, CPU Id: Not Defined .
CPU Number: 02, CPU Id: Not Defined .
CPU Number: 03, CPU Id: Not Defined .
CPU Number: 04, CPU Id: Not Defined .
CPU Number: 05, CPU Id: Not Defined .
CPU Number: 06, CPU Id: Not Defined .
CPU Number: 07, CPU Id: Not Defined .
CPU Number: 08, CPU Id: Not Defined .
CPU Number: 09, CPU Id: Not Defined .
CPU Number: 10, CPU Id: Not Defined .
CPU Number: 11, CPU Id: Not Defined .
CPU Number: 12, CPU Id: Not Defined .
CPU Number: 13, CPU Id: Not Defined .
CPU Number: 14, CPU Id: Not Defined .
CPU Number: 15, CPU Id: Not Defined .
*
Finished reporting of License Table
*
License Process: T4XPLIC MVS
4.0
level x, ending.
The licensed functions are listed in the T4X089I messages.
A CPUID Report may look like the following example:
CPU-ID PRINTING PROGRAM - T4XPLIC 4.0/x
===========================================
1 CPU
CPU
CPU
CPU
CPU
CPU
CPU
CPU
CPU
CPU
CPU
CPU
CPU
CPU
CPU
CPU
130
NUM:
NUM:
NUM:
NUM:
NUM:
NUM:
NUM:
NUM:
NUM:
NUM:
NUM:
NUM:
NUM:
NUM:
NUM:
NUM:
00,
01,
02,
03,
04,
05,
06,
07,
08,
09,
10,
11,
12,
13,
14,
15,
CPU
CPU
CPU
CPU
CPU
CPU
CPU
CPU
CPU
CPU
CPU
CPU
CPU
CPU
CPU
CPU
ID:
ID:
ID:
ID:
ID:
ID:
ID:
ID:
ID:
ID:
ID:
ID:
ID:
ID:
ID:
ID:
120F0573xxxx
NOT DEFINED
NOT DEFINED
NOT DEFINED
NOT DEFINED
NOT DEFINED
NOT DEFINED
NOT DEFINED
NOT DEFINED
NOT DEFINED
NOT DEFINED
NOT DEFINED
NOT DEFINED
NOT DEFINED
NOT DEFINED
NOT DEFINED
PKZIP for MVS: User Reference
T4ASI025-00-00
Exiting the Panel Interface
Use “F3” to return to the previous panel. Use “F3” or “X” to exit from the
panel interface main menu.
Error Recovery
If the ISPF panel interface processing is interrupted by a machine or
power failure, or an unexpected processing error occurs, PKSTART may
not initialise correctly the next time it is used. This can happen because
the work datasets are allocated but not removed.
To correct this, the user may need to run PKCLEAN to remove any
temporary work files used by the panel interface that have been left on
the system. Once PKCLEAN has removed these files, the panel interface
can be restarted using PKSTART.
If PKCLEAN processing has not been integrated into the standard ISPF
panels, use the following instructions.
Like the PKSTART command, PKCLEAN accepts one parameter, which
can be:

S, if work datasets should be allocated using the TSO PREFIX

U (or missing), if work datasets should be allocated using the TSO
Userid.
The parameter used should be the same as that used by the last
invocation of PKSTART.
For example, to clean up processing using the TSO PREFIX to define
work datasets, the following command could be used:
PKCLEAN S
Restrictions
The TSO PREFIX is never used for datasets or file selections specified
for PKZIP or PKUNZIP processing. It is difficult to use the TSO PREFIX
in a way that is both consistent and usable for both file selections (i.e.
when files are selected to be added to or extracted from an archive) and
dataset specifications (e.g. archive names). Rather than confuse users,
the ISPF interface does not use the PREFIX. To make this clearer,
datasets are displayed with surrounding quotes (so that in normal TSO
usage they would not have the PREFIX pre-pended). If users wish to
add their PREFIX, they should add it in manually.
To ensure that the ISPF interface was not overly complicated, it provides
access to the most frequently used parts of PKZIP. There are some
facilities that can’t be directly used via the ISPF interface.
T4ASI025-00-00
Using the ISPF Panel Interface
131
For example, the ISPF interface does not support processing that
requires JCL specification. This means it does not support magnetic
cartridge or tape processing (for archives, input or output files) or GDG
processing that is specified using the generation number (i.e.
GDG(number)).
However, it is possible to manually create the required JCL and
commands using the batch option and editing the generated job.
132
PKZIP for MVS: User Reference
T4ASI025-00-00
Part 5. GZIP (GNU zip) Processing
T4ASI025-00-00
133
Chapter 18. An Introduction to GZIP (GNU zip)
GZIP (GNU zip) is a generic term, which is typically used to mean a utility
program (available on a number of platforms including UNIX and PC),
that can be used like PKZIP to compress and extract data.
This utility implements two ‘specifications’:

RFC 1951: Deflate Compression, which documents the compression
algorithm used by GZIP.

RFC 1952: GZIP file format Specification, which documents the
format of a file once it has been compressed using GZIP processing.
The RFC process for propagating information, specifications and
standards throughout the Internet community is documented at
www.faqs.org/rfcs.
Both these specifications are platform independent, therefore data
compressed on one platform (e.g. UNIX) can be decompressed on
another platform (e.g. MVS).
This chapter reviews the GZIP specification, comparing it where
appropriate to the PKZIP specifications. But first it answers the question
– Why use a GZIP archive?
Why use a GZIP archive?
GZIP offers one significant advantage over PKZIP - its ability to handle
large (> 4 Gigabyte - GB) file sizes. The PKZIP archive format (as
currently specified) is restricted to processing uncompressed files that
are less than 4 GB and can not create an archive containing a number of
these smaller files, if the resultant archive is itself greater than 4 GB.
Both these restrictions are a result of the information that is must be
stored in 4 byte fields within the archive.
By comparison the GZIP ‘archive’ format (see later) can process files of
any size. This format does not try to maintain ‘index’ information for
individual files and allows sizes to ‘wrap’ at the 4 GB and so does not
suffer from this problem.
However because of this, the GZIP ‘archive’ format does not provide a
satisfactory ‘archive’ in the way that PKZIP does. This point is explained
later.
In general, the recommendation is:
T4ASI025-00-00

For single large files, use GZIP. Large means those files that are
currently or are likely to become more the 2 GB in size.

In other circumstances, use PKZIP.
An Introduction to GZIP
135
Deflate compression
This compression algorithm is very similar to that used in PKZIP, to that
extent that data compressed using the PKZIP algorithm can be extracted
by the Deflate algorithm and vice-versa.
For a more detailed discussion of data compression techniques and
further information on the algorithms used by PKZIP, please refer to
Appendix D. Characteristics of Data Compression. In addition, the
reader is referred to the associated RFC 1951.
GZIP file format
GZIP uses slightly different terminology to that used by PKZIP as shown
in the following table. In this section we shall use the GZIP terminology,
however everywhere else in this document will use the PKZIP
terminology.
GZIP name
PKZIP name
Meaning
Member
File
Compressed data set
File
Archive
Collection of compressed data sets
Typically when GZIP is used, each input file is converted to a separate
output member. Some attributes of the input file (for example, its
modification time stamp), may be retained as attributes of the output
member. Additional information can be placed in the ‘header’ for the
output (compressed) member. Using this format, each GZIP output
member can retain information like the following:
 The name of the file.
 The date and time of the file.
 The CRC value prior to compression (see Cyclic Redundancy Check
on page 4).
 The compression method used on the file.
 The uncompressed size of the file.
In addition, GZIP members can also store platform specific information
(for instance, DCB information on MVS). When decompressing a
member from a GZIP member, this information may be used to create
the decompressed file.
136
PKZIP for MVS: User Reference
T4ASI025-00-00
The concept of an ‘archive’ is not really part of the GZIP processing. The
GZIP file is just a series of members, which appear one after another in a
file, with no additional information before, between or after them. This
makes archive processing, in the way that is typically done for PKZIP
(e.g. Viewing details for all the members in an archive (GZIP File))
problematic as it is not possible to determine where one member starts
unless the previous member has been decompressed.
A real world analogy, which might clarify the difference between a GZIP
file and PKZIP archive, is provided by imagining this manual as an
archive, with the various chapters as the files (members). In PKZIP
format, this manual would include a Table of Contents, so that it is
possible to find individual chapters directly. In GZIP format, there would
be no Table of Contents, so the only way to find a chapter is to skip over
each of the preceding chapters – in fact you won’t know what the
chapters are called unless you read the whole manual!
File contents
A GZIP archive holds files internally in either Text or Binary format, both
formats are compatible with other platforms supported by GZIP.
By default, the information held in a GZIP archive is Binary. This means
that data is placed in the archive as it is found in the input file. When
transporting archives between machines that use different codes for text
(e.g. EBCDIC to ASCII), the Binary format may not be appropriate.
Specifying that these are TEXT will allow PKZIP on MVS to perform
EBCDIC to ASCII conversion as required. Specifying TEXT may also be
useful when PKUNZIP is used on MVS to extract data that has been
compressed on an ASCII system.
Further information describing the differences between these two formats
is included in Chapter 5. ZIP Files, especially the section File formats on
page 45.
Note when reviewing this section that GZIP will not re-read the file to
determine the type – if the user does not specify the type, then it is
processed as Binary. This has implications for variable length TEXT
files. PKZIP would process these and automatically convert them to
ASCII Text, but GZIP processing will not do this.
Cross Platform Compatibility
A GZIP file can be transferred from one platform to another, and can be
decompressed by GZIP running on that platform. The internal format of a
GZIP file is identical no matter which platform compressed the files that it
contains.
T4ASI025-00-00
An Introduction to GZIP
137
Chapter 19. Processing GZIP Format Archives
This section describes how to use PKZIP for MVS when processing
GZIPi archives.
PKZIP for MVS can be used to create and extract from GZIP format
archives in much the same way as if can be used to create and extract
information from a PKZIP archive. Most of the facilities that are available
for PKZIP processing may also be used for GZIP processing
Note however that there are a number of restrictions when using GZIP
archives that are documented in the GZIP restrictions later in this
Chapter.
GZIP processing is a licensable option in PKZIP for MVS. More details on
licensing can be found in Appendix B. Licensing Guide or directly from
your PKZIP supplier.
Creating GZIP archives
PKZIP for MVS can be told to create a GZIP format archive, simply by
coding the –GZIP command when using the PKZIP program.
Specifying -GZIP tells PKZIP to create an archive in GZIP format rather
than PKZIP format.
Coding -GZIP has the following effects:

Only one file may be selected for compression into the GZIP archive.

This file will be written directly into the archive so there is no need to
code -TEMP* commands to specify the temporary file to be used.

The output archive must not exist – it is not possible to merge files
into a GZIP archive. As a result, the –ADD command must be used
(or allowed to default).
In most other respects, processing looks identical to that used if the file
was being output to a PKZIP archive.
i
The code used by PKZIP for MVS in extracting data from and creating
GZIP archives has been developed independently of the original GNU zip
code. It follows the standards specified in the two applicable RFCs,
specifically RFC 1952: GZIP file format specification version 4.3 and RFC
1951: DEFLATE Compressed Data Format Specification version 1.3.
T4ASI025-00-00
Processing GZIP Format Archives
139
File attributes
When compressing files into a GZIP archive, PKZIP for MVS will store
allocation information, such as dataset type, record length with the file in
the GZIP archive. This information should be sufficient to recreate the file
with the same attributes during UNZIP operations.
File attributes are stored in the header portion of the GZIP archive.
File Names
File names used in GZIP archives must follow the GZIP conventions:

Be in lower case – because MVS is a case insensitive operating
system

Use the ISO 8859-1 (Latin-1) character set.
To ensure that file names created by PKZIP for MVS match these
requirements, PKZIP for MVS processing will always verify the file name
and convert upper to lower case and any unrecognised characters to ‘?’
(question mark). In addition PKZIP for MVS includes a LATIN1
translation table, suitable for use as the translation table for the FTRAN
command, in both source and executable forms.
Prior to this name conversion, GZIP processing uses the usual name
conversion processing, so commands like NIA and PATH will alter the
name used in the GZIP archive.
Summary of changed PKZIP commands
The following commands are normally used for PKZIP processing but
have different use when creating GZIP archives. Detailed information for
each of these commands is presented in General PKZIP commands on
page 159.
140
Command
Description
-ATTRIB
-ATTRIBCENTRAL
-ATTRIBLOCAL
All specify that file attributes should be stored in
the header of the GZIP archive.
-CACHEMEMORY
Provides no advantage to GZIP processing.
-DELETE
Not Supported– job will fail if specified.
-FILEPROCERR
Not Applicable, only one file processed at a
time.
-FILESELERR
Not Applicable, only one file processed at a
time.
-FRESHEN
Not Supported – job will fail if specified.
-FTRAN
Note that File Names will always be converted
to ensure that they match the ISO 8859-1
(LATIN-1) standard.
PKZIP for MVS: User Reference
T4ASI025-00-00
Command
Description
-GZIP
Specifies that the output archive will be created
in GZIP format. Mandatory for GZIP support.
-METHOD
Method STORE is not available for GZIP
archives (GZIP standard does not support it).
-NIA
See FTRAN.
-NIASEP
See FTRAN.
-TAPETODISK
Not Applicable.
-TASKS
Only one task is used – regardless of what is
coded.
-TEMP*
No TEMP commands need be coded – coded
commands will be ignored.
-UPDATE
Not Supported – job will fail if specified.
-VIEW
Is only supported in PKZIP for GZIP archives if
the GZIP command is also specified.
Extracting GZIP files
When UNZIPing GZIP data there is no need to specify the GZIP
command as PKUNZIP will automatically detect that the input archive is
in GZIP format and will process it accordingly.
This has the following effect:

Only the first file in the GZIP archive may be selected for
decompression into the GZIP archive.
In most other respects, processing is identical to that used if the file was
being extracted from a PKZIP archive, with the following exceptions:
T4ASI025-00-00

If there is no name associated with the input file, PKUNZIP will
assume that the name is the archive name with the last qualifier (or
member name if a PDS), being replaced with GZOUT.

File size information is output after the file has been decompressed –
this information is only available at that stage in the processing for
GZIP archives.

Depending on the input file, some file attributes that are normally
available in a ZIP archive that has been created by PKZIP for MVS
may be missing. For example, a tape file’s blocksize will not be
available. Missing attributes must be coded as part of the
decompression commands. Use the VIEWDETAIL command to
determine attributes that are present.
Processing GZIP Format Archives
141

File names used in GZIP archives must follow the GZIP conventions
which can make it difficult to use the PKUNZIP ‘MVS Style’ file
selection. As there is only one file in a GZIP archive, it should be
necessary to specify a file selection – the default ‘**’ selection will
extract the file. If it is necessary to specify the file name to be
extracted from a GZIP archive, then the Unix style file name
surrounded by “” characters should be used.
Summary of changed PKUNZIP commands
The following commands are normally used for PKUNZIP processing but
have different use when extracting from GZIP archives. Detailed
information for each of these commands is presented in General
PKUNZIP commands on page 228.
Command
Description
-CACHEMEMORY
Provides no advantage to GZIP processing.
-FILEPROCERR
Not Applicable, only one file processed at a time.
-FILESELERR
Not Applicable, only one file processed at a time.
-TAPETODISK
Not Applicable.
-TASKS
Only one task is used – regardless of what is coded.
-TEMP*
A temporary archive will never be used.
-VIEW
Only the information available in the GZIP header will
be displayed. For performance reasons, other
information that may be available by reading to the
end of the archive, will not be displayed.
GZIP restrictions
PKZIP for MVS processing of GZIP archives involves the following
restrictions:
142

Only one file is supported per GZIP ‘archive’. When creating an
archive, this means that only one file or one PDS member may be
placed in the archive. When extracting from a GZIP archive, only the
first file will be extracted - to use GZIP terminology, only the first
member of a GZIP file containing multiple members will be
processed. Note that this documentation uses the term ‘archive’,
even though the archive contains only one file.

If PKZIP for MVS is used to create an encrypted GZIP file, other
platforms may not be able to decrypt the data. The encryption
algorithm used by PKZIP for MVS in a GZIP file is similar to that used
by PKZIP and is not supported as part of the specifications for GZIP.

Compression processing will not merge or update compressed data
from an existing archive – each GZIP archive is created from scratch.
PKZIP for MVS: User Reference
T4ASI025-00-00
T4ASI025-00-00

VIEW processing may not show all the details from the archive,
because some information is not stored (or not stored in convenient
locations) in the GZIP archive. For example, the compressed and
uncompressed file sizes will typically be shown as 0. In addition, it is
only possible to VIEW an archive using the PKZIP program if the –
GZIP command is used – otherwise PKZIP will output a message
indicating that the archive is not valid because it assumes the archive
is in ZIP format. PKUNZIP will automatically detect the archive
format used.

File Names in input GZIP Files are restricted to 255 characters – any
characters after 255 are ignored. File Names on output GZIP
archives are restricted by the length of MVS file names and the
supported number of characters that can be used to alter these (e.g.
NIA command output is restricted to 80 characters).

Comments in input GZIP Files are restricted to 255 characters – any
characters after 255 are ignored. It is not possible to add a comment
when creating GZIP archive.

The code used by PKZIP for MVS follows the standards specified in
the two applicable RFCs, specifically RFC 1952: GZIP file format
specification version 4.3 and RFC 1951: DEFLATE Compressed
Data Format Specification version 1.3. PKZIP for MVS should
always be able to create a GZIP compatible compressed file and
extract data from a GZIP compressed file where the GZIP utility
matches these two specifications.

When compressing, the input file is not removed. When
decompressing, the input archive is not removed.

The file name stored in the archive header created by PKZIP for MVS
will typically contain ‘directories’ which relate to the qualifiers of the
original MVS name. According to the GZIP specifications, the file
name stored should be “the original name of the file being
compressed, with any directory components removed”. However
most GZIP utilities support directories and the default PKZIP for MVS
processing will create ‘directories’ in the output file name. If it is
important to suppress these directories, then the ZIP naming
commands, particularly NOPATH and NIA, may be used to set an
appropriate name. Note that it is not possible to create an archive
using PKZIP for MVS that does not have the GZIP file name stored in
the archive header.

To match the GZIP specifications, the time stored in the archive
header should be UTC (i.e. GMT). However the actual time inserted
by PKZIP for MVS will depend on the TIMESTAMP command. If
UTC is required then it should be specified. Note that it is not
possible to create an archive without a time using PKZIP for MVS.

There is no standard MVS method to set the creation date of a file.
As a result, the time in the GZIP archive is ignored when creating an
MVS output file.
Processing GZIP Format Archives
143
Sample GZIP processing
Compressing a dataset
The following example shows how to compress a dataset into a GZIP
archive.
//ZIP
EXEC PGM=PKZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(OUTPUT.FILE.GZIP)1
-ARCHUNIT(SYSDA)2
-GZIP3
MY.GZIPTEST.SEQ4
/*
This step could give the following output:
ZIP101I PKZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
ZIP010I -ECHO
ZIP010I -ARCHIVE(OUTPUT.FILE.GZIP)
ZIP010I -ARCHUNIT(SYSDA)
ZIP010I -GZIP
ZIP010I MY.GZIPTEST.SEQ
ZIP865I Processing file: MY.GZIPTEST.SEQ.
ZIP453I Compressed file MY.GZIPTEST.SEQ as my/gziptest/seq (Deflated 92%).5
ZIP612I Compressed Size: 4261 Bytes (x000010A5), Decompressed Size: 47472 Bytes
(x0000B970). 6
ZIP102I PKZIP MVS
2.5
level x ending.
Notes
In this case, the sequential dataset MY.GZIPTEST.SEQ is to be
compressed into the new ZIP archive OUTPUT.FILE.GZIP, which is
created on a SYSDA volume.
Please refer to Part 6. Reference Section for more information on
individual commands if required.
144
1.
GZIP archives should not be pre-allocated, only PKZIP
should be used to create archives.
2.
You should tell PKZIP how to create the GZIP archive, the
recommended minimum information is an volume name, unit
name or a DFSMS storage class. By default GZIP archives are
created as sequential datasets but, if required, you have full
control over the type of archive created using the various -ARCH
commands available.
3.
This command tells PKZIP to create a GZIP archive.
4.
You tell PKZIP what to compress using a ‘file selection’. Any
command which does not begin with a "-" is considered to be a
file selection. In this example we tell PKZIP to compress the
sequential dataset MY.INPUT.DATA.SEQ.
PKZIP for MVS: User Reference
T4ASI025-00-00
5.
To ensure cross platform compatibility, all MVS dataset names
are converted to the standard GZIP format in lower case i.e.
my/gziptest/seq. When you unzip the file, the conversion is
reversed to recreate the original MVS name.
6.
The compressed and uncompressed file sizes are displayed
when compression is complete. Note that the values are given in
hex as well as decimal – when the values become larger the
decimal value will use a ‘unit’ such as KB, but the hex value will
be the actual size.
Viewing the contents of an archive
The following example shows how to view the contents of a GZIP archive
(created in the previous example), using PKZIP for MVS.
//STPZIP
EXEC PGM=PKUNZIP1,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(OUTPUT.FILE.GZIP)
-VIEW
/*
This step could give the following output:
UNZIP101I PKZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
UNZIP010I -ECHO
UNZIP010I -ARCHIVE(OUTPUT.FILE.GZIP)
UNZIP010I -VIEW
UNZIP501I
Length Method
Size Ratio
Date
Time CRC-32
Name
UNZIP502I ---------- ------- ---------- ----- ---------- ----- ----------UNZIP503I
0 DeflatN
0
0% 03-30-1999 20:16 00000000
my/gziptest/test2
UNZIP505I ------------------- ----UNZIP506I
0
0
0%
UNZIP102I PKZIP MVS
2.5
level x ending.
Notes
1.
The -VIEW command is only available via the program
PKUNZIP, or using the PKZIP program with the –GZIP
command.
2.
This example demonstrates a standard view of the archive. Much
of the information that would be displayed for a ZIP archive is not
available for a GZIP archive.
For a full description of the information provided by the -VIEW command
and the various options available please refer to Chapter 23. PKUNZIP
Commands.
T4ASI025-00-00
Processing GZIP Format Archives
145
-VIEWDETAIL
One useful option is the -VIEWDETAIL command. It displays the full
technical details, including any file attributes stored, for the archive.
//STPZIP
EXEC PGM=PKUNZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(OUTPUT.FILE.GZIP)
-VIEWDETAIL
/*
This step could give the following output:
UNZIP101I
UNZIP010I
UNZIP010I
UNZIP010I
UNZIP507I
UNZIP508I
UNZIP509I
UNZIP510I
UNZIP511I
UNZIP512I
UNZIP513I
UNZIP521I
UNZIP515I
UNZIP520I
UNZIP519I
UNZIP519I
UNZIP519I
UNZIP519I
UNZIP519I
UNZIP519I
UNZIP519I
UNZIP519I
UNZIP519I
UNZIP519I
UNZIP519I
UNZIP519I
UNZIP501I
UNZIP102I
PKZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
-ARCHIVE(OUTPUT.FILE.ZIP)
-VIEWDETAIL
Filename: my/gziptest/seq
File type: Binary
Date and Time: 30-Mar-ccyy 10:16:48
Compression Method: DeflatN
Compressed Size:
0
Uncompressed Size:
0
32 bit CRC value : 00000000
GZIP Archive created by: PKZIP: 2.51 under MVS
Needed to extract: PKUNZIP: 2.0
File attributes
GZIP Header: 1F8B080C30310137040F
Volume serial(s): T4PRD1
Record length: 240
Block size: 3120
Record format: Variable Blocked ANSI
Space allocation: Blocks
Secondary quantity: 500
Primary quantity: 24
File Creation Date: 19xx0809
Last Reference Date: 19xx0329
Dataset organisation: Sequential
ZIP Settings: 00000251
PKZIP MVS
2.5
level x
ending.
Note:

The order in which attributes are displayed may vary.
Decompressing a dataset
The following example shows how to extract ("unzip") a dataset from a
GZIP archive using PKZIP for MVS.
//UNZIP
EXEC PGM=PKUNZIP1,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(OUTPUT.FILE.GZIP)
-OUTVOL(NEWVOL)2
/*
146
PKZIP for MVS: User Reference
T4ASI025-00-00
This step could give the following output:
UNZIP101I PKUNZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
UNZIP010I -ECHO
UNZIP010I -ARCHIVE(OUTPUT.FILE.GZIP)
UNZIP010I -OUTVOL(NEWVOL)
UNZIP865I Processing file: my/gziptest/seq.
UNZIP612I Compressed Size: 4261 Bytes (x000010A5), Decompressed Size: 47472 Bytes
(x0000B970).
UNZIP609I ZIP file my/gziptest/seq inflated to MVS file MY.GZIPTEST.SEQ
UNZIP102I PKUNZIP MVS
2.5
level x ending.
Notes
1.
To extract files from an archive you must call the PKUNZIP
program.
2.
The extracted dataset is created according to the stored file
attributes (if any) and the -OUT commands that override them. In
this case, the dataset will be created on the volume NEWVOL.
Information required to create the dataset which is not provided
by the stored file attributes or overridden by the -OUT commands
may be defaulted by PKUNZIP.
Testing a GZIP archive
The following example shows how to test the integrity of files contained
within a GZIP archive using PKZIP for MVS. This is also one way to find
out the compressed and uncompressed size of a file in a GZIP archive.
//TEST
EXEC PGM=PKUNZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(OUTPUT.FILE.GZIP)
-TEST
/*
This step could give the following output:
UNZIP101I PKUNZIP MVS
2.5
level
UNZIP010I -ECHO
UNZIP010I -ARCHIVE(OUTPUT.FILE.GZIP)
UNZIP010I -TEST
UNZIP612I Compressed Size: 4261 Bytes
(x0000B970).
UNZIP608I File my/gziptest/seq tested
UNZIP102I PKUNZIP MVS
2.5
level
x patch
nn starting: ccyy/mm/dd hh:mm:ss
(x000010A5), Decompressed Size: 47472 Bytes
ok.
x ending.
Notes
When processing the –TEST command, PKUNZIP will perform all the
actions which would normally occur during an -EXTRACT command,
except that no data is actually extracted or written to a file. The validity of
the data is confirmed by checking it against the stored CRC value (see
Cyclic Redundancy Check in Chapter 1. An Introduction to PKZIP, for
more details).
T4ASI025-00-00
Processing GZIP Format Archives
147
Part 6. Reference Section
T4ASI025-00-00
149
Chapter 20. Introduction to PKZIP Commands
The Commands part of this manual provides detailed guidance on the
parameters accepted by PKZIP for MVS.
 Commands for the PKZIP program are described in Chapter 21.
PKZIP Commands.
 Commands for the PKUNZIP program are described Chapter 23.
PKUNZIP Commands.
T4ASI025-00-00
Introduction to PKZIP Commands
151
Chapter 21. PKZIP Commands
Commands given to the PKZIP program are described in detail
throughout this chapter with a summary of the available commands given
below.
PKZIP can perform various actions according to one of the following
commands:
[ -ADD | -DELETE | -FRESHEN | -UPDATE | -VIEW ]
Each of the actions requires a ZIP archive to process so the
-ARCHIVE(<ZIP dataset name>)
command must always be specified.
-ADD is the default action if none of the above actions are specified. The
-ADD function compresses MVS datasets into a specified ZIP archive.
For details of how to specify commands for processing by PKZIP (e.g.
SYSIN, PARM parameter) please refer to Chapter 14. Command Input.
File Selections
Where a "-" character is placed in front of a sequence of characters, this
is taken to be a command for processing by PKZIP. If no "-" character is
found at the start of a sequence of characters, the characters are taken
to be the name of a file for addition to, or update in, a ZIP archive. This
string of characters in the command input, not preceded by a "-"
character, is known as a "file selection".
If no file selection is specified then PKZIP will assume that there are no
files to be added or updated, and will output an error message.
VSAM commands
There are a large number of commands available specifically to create
VSAM archives, they are summarised and described in detail Chapter 22.
VSAM Specific PKZIP Commands.
Licensing
Separate ‘file handler’ licenses are required to process sequential, PDS,
VSAM files and magnetic tape/cartridge files. These licenses also apply
to the archives created. For example, the VSAM file handler license is
required to read VSAM ZIP files and to create a VSAM archive. See
Appendix B. Licensing Guide for more details.
T4ASI025-00-00
PKZIP Commands
153
Summary of available PKZIP commands
The following commands are available in this release of PKZIP. They are
listed in the order in which they are described fully later in the chapter.
154
Command
Description
<dataset name>
Defines the name of a member that should be
added to, updated in, or deleted from the
compressed ZIP archive. Wildcards can be
used to specify generic names.
-ADD
Used to add files that are not already present in
the ZIP archive. This is the default action for the
PKZIP program.
-ALIASMEMBER
Specifies that Alias entries found in a PDS will
be saved as attributes of their associated
member.
-ARCHBLKSIZ
Specifies the block size to be used for a new or
updated ZIP archive.
-ARCHDCLASS
Specifies the DFSMS data class to be used for
a new or updated ZIP archive.
-ARCHDIRBLKS
Specifies the number of directory blocks to be
used for a new ZIP archive.
-ARCHDSORG
Specifies the dataset organisation to be used
for a new or updated ZIP archive
-ARCHINDD
Specifies the DD name that references a ZIP
archive to be read in by PKZIP.
-ARCHIVE
Specifies the ZIP archive that the PKZIP
program should use. This is a mandatory
command for the PKZIP Program.
-ARCHLRL
Specifies the logical record length to be used
for a new or updated ZIP archive.
-ARCHMCLASS
Specifies the DFSMS management class to be
used for a new or updated ZIP archive.
-ARCHNORLSE
Specifies that free space should not be
released when the ZIP archive is deallocated.
-ARCHOUTDD
Specifies the DD name that references a ZIP
archive to be written out by PKZIP.
-ARCHPRIMARY
Specifies the number of space units to be used
in the primary partition of a new or updated ZIP
archive.
-ARCHRLSE
Specifies that free space should be released
when the ZIP archive is deallocated.
-ARCHSCLASS
Specifies the DFSMS storage class to be used
for a new or updated ZIP archive.
-ARCHSECONDARY
Specifies the number of space units to be used
in the secondary partition of a new or updated
ZIP archive.
PKZIP for MVS: User Reference
T4ASI025-00-00
T4ASI025-00-00
-ARCHSPACE
Specifies how space is to be allocated for a
new or updated ZIP archive.
-ARCHTYPE
Specifies the record format of a new or updated
ZIP archive.
-ARCHUNIT
Specifies the unit to be used for allocation of a
new or updated ZIP archive.
-ARCHVOL
Specifies the volume(s) onto which a new or
updated ZIP archive should be placed.
-ATTRIB
Specifies that file attributes should be stored for
datasets in the zip archive, in both the Central
and Local Directories.
-ATTRIBCENTRAL
Specifies that file attributes should be stored for
datasets in the zip archive, in both the Central
Directory only.
-ATTRIBLOCAL
Specifies that file attributes should be stored for
datasets in the zip archive, in both the Local
Directory only.
-BINARY
Specifies that files selected for compression are
binary files, and that no translation should be
performed on these files.
-CACHEMEMORY
Specifies the amount of memory to be assigned
to PKZIP's internal caching mechanisms.
-DELETE
Specifies that selected files are to be deleted
from the old ZIP archive.
-DELIM
Specifies a delimiter to be used at the end of
each text record when it is being translated
from EBCDIC to ASCII.
-ECHO
Specifies that a copy of PKZIP commands
should be output to the message dataset.
-FILEPROCERR
Indicates whether file processing errors should
terminate PKZIP processing.
-FRESHEN
Specifies that selected files are to be updated in
the old ZIP archive.
-FTRAN
Specifies the translation table to be used for
translating file names, comments and control
data between the character set used in the ZIP
archive, and that used in the external
environment.
-GZIP
Specifies that the output archive will be created
in GZIP format.
-INDD
Specifies a DD statement that identifies a
dataset that PKZIP should attempt to
compress.
-KEEPINORDER
Specifies that files in a new or updated ZIP
archive must be in the order specified by the
user.
PKZIP Commands
155
156
-METHOD
Specifies the compression method that the
PKZIP program should use for adding new files
to a ZIP archive.
-NIA
Used to convert an MVS dataset name to an
appropriate ZIP file name.
-NIASEP
Specifies a single character to be used as the
‘level’ indicator for ZIP file name.
-NOALIASMEMBER
Specifies that Alias entries found in a PDS will
be ignored.
-NOATTRIB
Specifies that file attributes should not be
stored for datasets compressed into the zip
archive.
-NOECHO
Suppresses command output.
-NOKEEPINORDER
Specifies that files in a new or updated ZIP
archive do not need to be kept in the order
specified.
-NOPATH
Specifies that only the last component of the
dataset component hierarchy should be used
when converting a filename between MVS
format and ZIP archive format.
-NORECURSE
Stores all files which have only dataset
components the same as those specified by the
user's file selections.
-NOSYSIN
Requests that PKZIP does not use the SYSIN
dataset for commands.
-NOVSAM
Specifies that VSAM files should be ignored
when selecting files for compression.
-PASSWORD
Specifies that the files selected for addition to
the ZIP archive are to be encrypted using the
given password.
-PATH
Specifies that the full dataset component
hierarchy should be used when converting a
filename between MVS format and ZIP archive
format.
-PCP
Specifies that if the given filename matches the
ZIP file name for a dataset being compressed
then the ZIP file name is replaced with the new
specified ZIP file name.
-RECURSE
Store all files that have their first dataset
components the same as those specified by the
user selection parameters.
-STRIP
Specifies a character to be stripped from the
end of records before they are compressed.
-TAPETODISK
Specifies that Cartridge based archives should
be copied to a temporary disk file for
processing.
PKZIP for MVS: User Reference
T4ASI025-00-00
T4ASI025-00-00
-TASKS
Specifies the number of subtasks used to
compress datasets.
-TEMPBLKSIZ
Specifies the block size to be used for a
temporary ZIP dataset.
-TEMPDCLASS
Specifies the DFSMS data class to be used for
a temporary ZIP dataset.
-TEMPPRIMARY
Specifies the number of space units to be used
in the primary partition of a temporary ZIP
dataset.
-TEMPSCLASS
Specifies the DFSMS storage class to be used
for a temporary ZIP dataset.
-TEMPSECONDARY
Specifies the number of space units to be used
in the secondary partition of a temporary ZIP
dataset.
-TEMPSPACE
Specifies how space is to be allocated for a
temporary ZIP dataset.
-TEMPTYPE
Specifies the record format for a temporary ZIP
dataset.
-TEMPUNIT
Specifies the unit to be used for allocation of a
temporary ZIP dataset.
-TEMPVOL
Specifies the volume onto which a temporary
ZIP dataset should be placed.
-TERM
Specifies a terminator to be used at the end of
a text file when it is being translated from
EBCDIC to ASCII.
-TEXT
Specifies that files selected for compression are
text files, and should be translated from
EBCDIC to ASCII before compression.
-TIMESTAMP
Specifies which of the available MVS date/time
options will be used to set the timestamp
associated with the file in the archive.
-TRAN
Specifies the translation table to be used for
translating data between the character set to be
used in the external environment and the
character set to be used in the ZIP archive.
-UPDATE
Used to update files that are already in the ZIP
archive or to add files that are not already
present in the ZIP archive.
-VIEW
Output details of the files selected from the ZIP
archive to the SYSPRINT dataset.
-ZDW
Specifies that ZDW (used for containing record
lengths on compression) are to be included in
the ZIP archive.
PKZIP Commands
157
-ZIPCUR
158
Specifies a PDS dataset from which PKZIP can
obtain members to match user selection
parameters that do not match any other
dataset.
PKZIP for MVS: User Reference
T4ASI025-00-00
General PKZIP commands
<dataset name>
This command, which is identified by not having a "-" character at the
start, is used to identify a dataset, a set of datasets, or a set of PDS
members, which are to be compressed into, or deleted from, the
specified ZIP archive. The processing that is to be performed on the
selected files is determined by the other commands which are input, or
defaulted.
The dataset name can be specified with or without the path names to be
stored in the ZIP archive, and may be specified in either MVS format, or
in MS-DOS and UNIX formats. In addition, wildcard characters can be
included to identify multiple datasets and/or members. File extensions, as
used in MS-DOS and UNIX systems, cannot be used to identify or
distinguish datasets or members.
Note that the file and path name are stored in the ZIP archive in UNIX
format, to maintain compatibility with ZIP files on other platforms. Use of
the VIEW command to examine the contents of the ZIP archive will show
the UNIX form of the file and path name. However, if the file is extracted,
using PKUNZIP, it can be identified using the MVS format of the dataset
name, and there will be no change to the contents.
Multiple <dataset name> commands may be specified when using
PKZIP.
The format of the <dataset name> command is described in the section
below.
If no datasets are identified by this command, PKZIP will assume that
there are no files to add or view, and will output a warning message.
MVS format filenames
The following is the main syntax for specifying a dataset or file name for
compression into a ZIP archive.
[<dataset component>][.<dataset
component>][...][(member1[,member2]..)]
This syntax specifies a general dataset, with an indefinite number of
levels of component. Where this dataset identifies a PDS, one or more
members may also be specified.
Any dataset component or member name may have wildcards as part of
its contents. Three wildcards are supported:
?
is used to identify any single character.
This wildcard DOES NOT span levels of dataset component (see
below)
T4ASI025-00-00
PKZIP Commands
159
*
is used to identify a sequence of zero or more characters to be
matched.
This wildcard DOES NOT span levels of dataset component (see
below)
**
is used to identify a sequence of zero or more characters to be
matched.
This wildcard CAN span levels of dataset component (see below)
Note that the * and ? wildcards cannot span dataset components
whereas the ** wildcard can span dataset components.
For example TJB.* would find
TJB.SET1
but would not find
TJB.SET1.ITEM1
Whereas TJB.** would find both
TJB.SET1
TJB.SET1.ITEM1
The * and ** wildcards provide the user with extra flexibility for finding
datasets.
For example:
TJB.*.SOURCE
would find
TJB.BASE25.SOURCE
but not
TJB.BASE25.UPDATED.SOURCE
Whereas:
TJB.**.SOURCE
would find both
TJB.BASE25.SOURCE
TJB.BASE25.UPDATED.SOURCE
Note:
160

Wildcards in the highest level of dataset component are not
supported, i.e. T*B.DATA would not be a valid file selection.

When a single component or member name is used to identify a file,
the ZIPCUR, if present, will be used to identify a PDS from which that
file should be compressed as a member. If ZIPCUR is not present
then the component will be interpreted as a single high level qualifier.
PKZIP for MVS: User Reference
T4ASI025-00-00

File selection can take a considerable amount of time, especially
when wild cards are used early in the dataset specification. Being
more specific will shorten file selection time.
MS-DOS and UNIX format filenames
In addition to the main MVS syntax, the following syntax is also
supported. This format is supported to provide a way to delete entries
from the ZIP archive and may also be used to select files to VIEW, but it
should not be used when adding files to an archive.
“[pathname][/pathname]...[/pathname][/filename]”
Note that the “/” path separators may also be specified using the “\”
character, to make it compatible with MS-DOS filenames.
For PKZIP for MVS, the same wildcard characters are available for MVS
as for MSDOS and UNIX.
Default dataset name
If no <dataset name> is input to PKZIP a default value of * is used. The
wildcard * is invalid as a high level qualifier (see restrictions above)
therefore to use this default, the -ZIPCUR command must be specified to
identify the PDS dataset for selection.
-ADD command
The -ADD command is used to specify that the datasets selected by the
<dataset name> command(s) should be added to a ZIP archive. This is
the default command for the PKZIP program.
If a file with the same name already exists within the ZIP archive then the
new dataset cannot be added. The -UPDATE command described later
in this chapter explains how to modify existing files within the ZIP archive.
Selected datasets are compressed using the compression method
specified by the -METHOD command or by the default compression
method. They are then inserted into the specified ZIP archive.
By default, if no other command options are in force, the files will be
identified within the ZIP archive as if the -PATH command had been
specified.
Note that if an -ADD command (specific or defaulted) is used to create a
new ZIP archive, it is recommended that an -ARCHVOL command,
-ARCHUNIT command or DFSMS related command be used to specify
the allocation of the ZIP archive. This enables PKZIP to create a new ZIP
archive correctly, as described in the Old and New ZIP archives section
of Chapter 10. ZIP Archives.
The –ADD command creates a new Zip Archive, so requires that either
the -ARCHIVE command or the –ARCHOUTDD command be specified.
T4ASI025-00-00
PKZIP Commands
161
-ALIASMEMBER
The -ALIASMEMBER command is used to indicate that Alias entries that
exist for PDS members selected should be used to create Alias attributes
in the output archive. These attributes may be used by PKUNZIP
processing to create Alias entries when the member is extracted
(assuming it is extracted to a PDS).
See also –NOALIASMEMBER.
-ARCHBLKSIZ
The -ARCHBLKSIZ command is used to specify the block size to be used
for a new or updated ZIP archive.
The full syntax for this command is:
-ARCHBLKSIZ(<block size>)
where <block size> is the block size to be used for the new or updated
ZIP archive.
If this command is not specified, the new or updated ZIP archive defaults
to a block size of 6160 bytes or –ARCHLRL if specified. Note that PKZIP
and PKUNZIP performance is affected by the dataset block size, and a
large block size may improve their performance.
Note:

The default is not used when the associated SMS command
(-ARCHDCLASS) is specified. See –ARCHTYPE for additional
information.

A value of 0 can be used to allow the system to set the block size for
PDS or Sequential archive. However for record format U (Undefined)
archives (defined by specifying or defaulting to ARCHTYPE(U)), the
system may not set a block size, which will cause an error when ZIP
attempts to process the archive. A value of 0 should not be used
with format U archives.
-ARCHDCLASS
The -ARCHDCLASS command is used to specify the DFSMS data class
to be used for a new or updated ZIP archive.
The full syntax for this command is:
-ARCHDCLASS(<data class>)
where <data class > is the DFSMS data class to be used for placing the
new or updated ZIP archive.
162
PKZIP for MVS: User Reference
T4ASI025-00-00
If this command is not specified, no data class is used for placing the
new or updated ZIP archive.
If the new ZIP archive is being created as a member of an existing PDS,
the non-DFSMS allocation command should specify the volume or unit
on which the PDS is allocated, while the PKZIP DFSMS allocation
command should give the class under which the PDS has been placed.
-ARCHDIRBLKS
The -ARCHDIRBLKS command is used to specify the number of
directory blocks to be used for a new ZIP archive.
The full syntax for this command is:
-ARCHDIRBLKS(<dirblks>)
where <dirblks> is the number of directory blocks to be used for creating
the new ZIP archive.
This command should only be used in conjunction with an -ARCHIVE
command that specifies a PDS member which results in the creation of a
new PDS e.g.
-ARCHIVE(MY.NEW.PDS(ARCH01))
-ARCHDIRBLKS(10)
If this command is not specified then the new archive created will be
allocated with 10 directory blocks.
Note:

T4ASI025-00-00
The default is not used when the associated SMS command
(-ARCHDCLASS) is specified.
PKZIP Commands
163
-ARCHDSORG
The -ARCHDSORG command is used to specify the dataset organisation
of a new or updated ZIP archive.
The full syntax for this command is:
-ARCHDSORG(PO|PS|VS)
where the dataset organisation to be used for the new or updated ZIP
archive is specified by one of the following parameters:
PO
PDS member archive.
PS
Sequential archive.
VS
VSAM archive.
This command is optional for Sequential and PDS member archives
because PKZIP can determine the dataset organisation from the format
of the archive name (as specified in the –ARCHIVE command). The
VSAM (VS) option should be specified for a new or updated VSAM
archive as PKZIP cannot distinguish between Sequential and VSAM
dataset names.
-ARCHINDD
The -ARCHINDD command is used to identify the DD statement which
specifies the ZIP archive to be read in by PKZIP.
The full syntax for this command is:
-ARCHINDD(<ddname>)
where <ddname> refers to a DD statement in this job step.
For example, to view an existing archive on Tape:
//VIEW
EXEC PGM=PKZIP,REGION=2M
//SYSPRINT DD SYSOUT=*
//INPUT
DD DSN=MY.ARCHIVE.ZIP,
//
UNIT=CART,DISP=SHR,
//
DCB=(RECFM=U,LRECL=6160,BLKSIZE=6160,DSORG=PS),
//
LABEL=(1,NL,EXPDT=99365),VOL=SER=ARCH01
//SYSIN
DD *
-ECHO
–ARCHINDD(INPUT)
-VIEW
/*
This command is typically used for GDG and Tape processing. Full
details of this processing can found in Chapter 6. Processing Sequential
Files and Chapter 9. Processing Magnetic Tapes.
Note:

164
It is not possible to use the same dataset or DD for both –
ARCHOUTDD and –ARCHINDD.
PKZIP for MVS: User Reference
T4ASI025-00-00

This command should not be used in combination with the –
ARCHIVE command.
-ARCHIVE
The -ARCHIVE command is used to specify the ZIP archive to be
manipulated by the PKZIP program.
The full syntax for this command is:
-ARCHIVE(<ZIP dataset name>)
where <ZIP dataset name> is the full dataset name (including PDS
member name if required) of the ZIP archive.
There is no default value for the -ARCHIVE command, and it must
always be specified.
Where a ZIP archive has been created by transfer from another platform,
the dataset must be created on MVS as a sequential dataset or PDS
member with either, type U, type F or type FB records. It may improve
the performance of PKZIP considerably if this dataset has a large block
size (4000 bytes or larger).
If the ZIP archive already exists, PKZIP will update the ZIP archive with
any changes that are specified, such as new or updated compressed
files. Note that PKZIP actually replaces the ZIP archive with a new
dataset with the same name.
If the ZIP archive does not exist, PKZIP will create a new ZIP archive with
the name specified.
If the ZIP archive does not exist and it is to be the first member of a new
PDS, the -ARCHDIRBLKS command (or default value) can be used to
specify the number of directory blocks to be allocated.
Note:
T4ASI025-00-00

PKZIP for MVS may use a number of temporary datasets whilst it is
processing. By default, they are allocated in the same way as the
new ZIP archive. These datasets may be as large as the total ZIP
archive so sufficient space should be available for these temporary
datasets in addition to that allocated for the ZIP archive. The -TEMP
commands may be used to specifically allocate the temporary
datasets in a different manner to the new ZIP archive. For more
information on Temporary datasets see Temporary datasets in
Chapter 10. ZIP Archives.

This command should not be used in combination with the –
ARCHINDD or -ARCHOUTDD commands.
PKZIP Commands
165

PKZIP processing will perform a SYSTEM ENQ using this name as
the Resource (minor) Name and PKZIP as the Queue (major) name.
This ENQ will prevent other PKZIP tasks in the same system from
using the archive while this task is updating. It will also prevent
UNZIP tasks in the same system attempting to read the archive. If
required, the scope of this ENQ should be changed to SYSTEMS
using GRS RNL (or similar) processing.

When an existing ZIP archive is being updated, allocation attributes
of the dataset are not used to define the new archive, instead
-ARCH* commands or their defaults will be used.
-ARCHLRL
The -ARCHLRL command is used to specify the logical record length to
be used for a new or updated ZIP archive.
The full syntax for this command is:
-ARCHLRL(<logical record length>)
where <logical record length > is the logical record length to be used for
the new or updated ZIP archive.
If this command is not specified, the new or updated ZIP archive defaults
to a logical record length of 0 for –ARCHTYPE(U) sequential archives or
as specified by the block size (-ARCHBLKSIZ command) otherwise.
Note:

If you use this command please ensure that a suitable block size is
used for the archive. Block size can be specified using the
-ARCHBLKSIZ command. See also –ARCHTYPE for additional
information.

The default is not used when the associated SMS command
(-ARCHDCLASS) is specified.
-ARCHMCLASS
The -ARCHMCLASS command is used to specify the DFSMS
management class to be used for a new or updated ZIP archive.
The full syntax for this command is:
-ARCHMCLASS(<management class>)
where <management class > is the DFSMS management class to be
used for placing the new or updated ZIP archive.
If this command is not specified, no management class is used for
placing the new or updated ZIP archive.
166
PKZIP for MVS: User Reference
T4ASI025-00-00
If the new ZIP archive is being created as a member of an existing PDS,
the non-DFSMS allocation command should specify the volume or unit
on which the PDS is allocated, while the PKZIP DFSMS allocation
command should give the class under which the PDS has been placed.
-ARCHNORLSE
The -ARCHNORLSE command is used to specify that, when deallocated,
free space should not be released for a ZIP archive.
-ARCHRLSE is the default for archives created as sequential datasets.
-ARCHNORLSE is the default for archives created as PDS members (it
is assumed that the extra space may be required by other members of
the PDS).
-ARCHOUTDD
The -ARCHOUTDD command is used to identify the DD statement that
specifies the ZIP archive to be written out by PKZIP.
The full syntax for this command is:
-ARCHOUTDD(<ddname>)
where <ddname> refers to a DD statement in this job step.
For example, to create a new archive:
//ZIP
EXEC PGM=PKZIP,REGION=2M
//SYSPRINT DD SYSOUT=*
//OUTPUT
DD DSN=MY.ARCHIVE.ZIP,
//
UNIT=CART,DISP=NEW,
//
DCB=(RECFM=U,LRECL=6160,BLKSIZE=6160,DSORG=PS),
//
LABEL=(1,NL,EXPDT=99365),VOL=SER=ARCH01
//SYSIN
DD *
-ECHO
–ARCHOUTDD(OUTPUT)
MY.DATASET.TO.COMPRESS
/*
This command is typically used for GDG and Tape processing. Full
details of this processing can found in Chapter 6. Processing Sequential
Files and Chapter 9. Processing Magnetic Tapes.
Note:
T4ASI025-00-00

PKZIP processing will open the specified file for output, write the
extracted data and then close the file. The actual effect on the
defined dataset may depend on the DISP parameter. For example,
DISP=OLD will cause the dataset to be overwritten. Note however
that it is not possible to extend an archive in this way, so DISP=MOD
should not be used.

It is not possible to use the same dataset or DD for both –
ARCHOUTDD and –ARCHINDD.
PKZIP Commands
167

Attributes of the output dataset, for example the DCB information,
must be specified on the DD. The associated –ARCH* commands
will be ignored. JCL facilities such as the use of references to
previous DD statements or existing datasets in the DCB statement
can assist in this specification.

This command should not be used in combination with the –
ARCHIVE command.

If the archive is not updated (e.g. no file selections match), the input
archive (specified by ARCHINDD) will be copied to the output
dataset. If there is no input archive, the dataset will not be updated.

If an error occurs during the processing, PKZIP may not complete the
archive, however it can not delete it as the status of the archive after
the ZIP job completes is determined by the DISP= DD parameter. If
the ZIP processing does not complete successfully, then the output
dataset should not be used.
-ARCHPRIMARY
The -ARCHPRIMARY command is used to specify the number of data
units to be used in the primary extent of a new or updated ZIP archive.
The full syntax for this command is:
-ARCHPRIMARY(<data units>)
where <data units> is the number of data units to be used in the primary
extent of the new or updated ZIP archive.
If this command is not specified, the new or updated ZIP archive defaults
to a primary extent of 100 data units. By default, PKZIP will use tracks as
the data units; this may be changed by use of the -ARCHSPACE
command.
When creating a sequential archive, PKZIP will automatically release
primary data units that are not used.
Note:

168
The default is not used when the associated SMS command
(-ARCHDCLASS) is specified.
PKZIP for MVS: User Reference
T4ASI025-00-00
-ARCHRLSE
The -ARCHRLSE command is used to specify that, when deallocated,
free space should be released for a ZIP archive. This command helps
maximise the amount of space saved when compressing data.
-ARCHRLSE is the default for archives created as sequential datasets.
-ARCHNORLSE is the default for archives created as PDS members (it
is assumed that the extra space may be required by other members of
the PDS).
-ARCHSCLASS
The -ARCHSCLASS command is used to specify the DFSMS storage
class to be used for a new or updated ZIP archive.
The full syntax for this command is:
-ARCHSCLASS(<storage class>)
where <storage class > is the DFSMS storage class to be used for
placing the new or updated ZIP archive.
If this command is not specified, no storage class is used for placing the
new or updated ZIP archive.
If the new ZIP archive is being created as a member of an existing PDS,
the non-DFSMS allocation command should specify the volume or unit
on which the PDS is allocated, while the PKZIP DFSMS allocation
command should give the class under which the PDS has been placed.
-ARCHSECONDARY
The -ARCHSECONDARY command is used to specify the number of
data units to be used in the secondary extent of a new or updated ZIP
archive.
The full syntax for this command is:
-ARCHSECONDARY(<data units>)
where <data units> is the number of data units to be used in the
secondary extent of the new or updated ZIP archive. <data units> may
not be specified as 0.
If this command is not specified, the new or updated ZIP archive defaults
to a secondary extent of 100 data units. By default, PKZIP will use tracks
as the data units; this may be changed by use of the -ARCHSPACE
command.
T4ASI025-00-00
PKZIP Commands
169
Note:

The default is not used when the associated SMS command
(-ARCHDCLASS) is specified.
-ARCHSPACE
The -ARCHSPACE command is used to specify the type of data units to
be used for allocating a new or updated ZIP archive.
The full syntax for this command is:
-ARCHSPACE(TRK|CYL|BLK)
where the type of data unit to be used for allocating the new or updated
ZIP archive is specified by one of the following parameters:
TRK
The ZIP archive is to be allocated by tracks. This is the default value
assigned for the type of data unit if -ARCHSPACE is not specified.
CYL
The ZIP archive is to be allocated by cylinders.
BLK
The ZIP archive is to be allocated by blocks; the block size is taken
from the -ARCHBLKSIZ command.
By default, both the primary and secondary extents are allocated at a size
of 100 of these data units. This default can be overridden using the
-ARCHPRIMARY or -ARCHSECONDARY commands.
Note:

The default is not used when the associated SMS command
(-ARCHDCLASS) is specified.
-ARCHTYPE
The -ARCHTYPE command is used to specify the record format of
records within a new or updated ZIP archive.
The full syntax for this command is:
-ARCHTYPE(U|F|FB)
where the record format to be used for allocating the new or updated ZIP
archive is specified by one of the following parameters:
170
U
to specify Undefined records. This is the default.
F
to specify Fixed records.
FB
to specify Fixed Block records.
FBS
to specify Fixed Block Standard records.
PKZIP for MVS: User Reference
T4ASI025-00-00
If this command is not specified, the new ZIP archive is allocated with an
Undefined record format.
Note:

The default is not used when the associated SMS command
(-ARCHDCLASS) is specified.

The use of –ARCHLRL and –ARCHBLKSIZ depends on the type
specified. If U is specified, that the –ARCHLRL value will be ignored.
If F is specified, then –ARCHBLKSIZ will be ignored.
-ARCHUNIT
The -ARCHUNIT command is used to specify the generic unit on which a
new or updated ZIP archive is to be allocated.
The full syntax for this command is:
-ARCHUNIT(<unit name>)
where <unit name> is the generic unit name on which the new or updated
ZIP archive is to be allocated.
If the new ZIP archive is being created as a member of an existing PDS,
the non-DFSMS allocation command should specify the volume or unit
on which the PDS is allocated, while the PKZIP DFSMS allocation
command should give the class under which the PDS has been placed.
If this command is not specified and a UNIT is required, then the
installation default UNIT (typically SYSALLDA) is used.
-ARCHVOL
The -ARCHVOL command is used to specify the volume(s) on which a
new or updated ZIP archive is to be allocated.
The full syntax for this command is:
-ARCHVOL(<volume name>[ <volume name>…])
where <volume name> identify the volume(s) on which the new or
updated ZIP archive is to be allocated. Up to 31 volumes can be
specified, separated by blanks.
If the new ZIP archive is being created as a member of a new PDS, only
the first volume specified will be used.
T4ASI025-00-00
PKZIP Commands
171
Note:

For a VSAM archive, this command is used to specify volumes at the
Cluster Level.
-ATTRIB
The -ATTRIB command is used to specify that file attributes should be
stored for datasets compressed into a ZIP archive, in both the Central
and Local Directories. This is the default setting.
See also –ATTRIBCENTRAL, -ATTRIBLOCAL and –NOATTRIB
commands.
-ATTRIBCENTRAL
The -ATTRIBCENTRAL command is used to specify that file attributes
should be stored for datasets compressed into a ZIP archive, in the
Central Directory.
Using this, PKZIP will store file attributes for datasets compressed into a
ZIP archive in the Central Directory. The stored file attributes can be used
by PKUNZIP on the MVS platform to reconstruct the dataset during
extraction, in addition the file attributes can be overridden by the
PKUNZIP -OUT commands. Other products on other platforms may also
use these attributes.
See also –ATTRIB, -ATTRIBLOCAL and –NOATTRIB commands.
Note:

Use this option only when the platform that will process the archive
correctly processes attributes that are located only in the Central
Directory.
-ATTRIBLOCAL
The -ATTRIBLOCAL command is used to specify that file attributes
should be stored for datasets compressed into a ZIP archive, in the Local
Directory.
Attributes stored in the Local directory are not available for PKUNZIP on
the MVS platform. However other products on other platforms may use
them.
See also –ATTRIB, -ATTRIBCENTRAL and –NOATTRIB commands.
172
PKZIP for MVS: User Reference
T4ASI025-00-00
Note:

Use this option only when the platform that will process the archive
correctly processes attributes that are located only in the Local
Directory. For example, for PKZIP for MVS this is equivalent to
setting –NOATTRIB.
-BINARY
This command is used to determine the way in which a selected file is
compressed. If this command is used, the file will be compressed as a
binary file.
If neither this command nor the -TEXT command is specified, PKZIP will
read a portion of the selected file to determine its most likely file type, and
will compress it by the method selected. This determination will affect
performance, hence it is recommended that either the BINARY or the
TEXT command is specified if you know the file types. You can find the
result of this determination by examining the final ZIP archive using the
-VIEWDETAIL command (See the -VIEW command section of Chapter
21. PKUNZIP Commands for more details).
A binary file is stored in exactly the same way as it is stored in the MVS
dataset, except that there are no delimiters between records. If it is not a
fixed record length file, difficulties may be encountered when extracting
this file on MVS, as the record lengths may differ from the original. In this
case it is recommended that you use the -ZDW command (See the
-ZDW command section later in this chapter).
-CACHEMEMORY
This command requires the HyperZIP license, please refer to Appendix
B. Licensing Guide for more details.
This command is used to specify the amount of memory to be assigned
to PKZIP's internal caching mechanisms. Increasing the value of
-CACHEMEMORY will increase the amount of virtual memory used by
PKZIP and may reduce the use of disk based (slower) temporary files. A
large -CACHEMEMORY value should reduce the elapsed time for
compression processes.
PKZIP may use multiple caches to perform its processing, so the amount
of memory used may vary according to the number and types of files
being processed.
The full syntax for this command is:
-CACHEMEMORY(<bytes>)
where <bytes> specifies the total number of bytes to be assigned to the
caches used in PKZIP. For example, to specify 0.50Mb:
-CACHEMEMORY(500000)
T4ASI025-00-00
PKZIP Commands
173
The minimum cache size recommended is 64000, the maximum value is
231-1. Generally, compressing larger files will benefit from a larger
-CACHEMEMORY value.
If the -CACHEMEMORY command is not specified or the HyperZIP
license is not present then the command value will default to 0 and
caching will not be performed.
Additional information describing -CACHEMEMORY is documented in
Chapter 13. Performance.
Warning: A large -CACHEMEMORY value, for example 100000000, will
cause PKZIP to use a large amount of virtual memory. If a large value is
coded and large files are being compressed then it is vitally important that
your site has sufficient storage and/or Page Datasets to support PKZIP's
virtual memory requests. A shortage of storage and/or Page Datasets
can have a severe effect on an MVS system so discuss your
requirements with the appropriate technical support people before trying
this option with a large value.
-DELETE command
The -DELETE command is used to specify that the files within the ZIP
archive that have been selected by the <dataset name> command(s)
should be deleted from the old ZIP archive. This command may not be
used if there is no old ZIP archive.
The –DELETE command reads the old Zip Archive and creates a new
Zip Archive, so requires that either the -ARCHIVE command or both the
-ARCHINDD and -ARCHOUTDD commands be specified.
-DELIM
The -DELIM command is used when compressing a file as text. The
command specifies a delimiter to be suffixed to each record (except for
the last) when a file is being compressed. The last record in the file is
suffixed by a file terminator as defined by the -TERM command. The
-DELIM command is ignored when a file is compressed as binary.
The full syntax for this command is:
-DELIM(<delimiter characters>)
where <delimiter characters> specifies the character(s) to be added to
the end of each text file record (except for the last) that is compressed.
0-4 <delimiter characters> may be specified, each character must take
one of the following values:
CR
174
An ASCII carriage return character (hexadecimal 0D) is to be included
in the delimiter for each record that is compressed.
PKZIP for MVS: User Reference
T4ASI025-00-00
CZ
An ASCII Ctrl-Z character (hexadecimal 1A) is to be included in the
delimiter for each record that is compressed.
LF
An ASCII line feed character (hexadecimal 0A) is to be included in the
delimiter for each record that is compressed.
Any combination of these characters may be used up to a limit of 4
characters.
Note:

If no -DELIM command is specified when compressing a text file,
PKZIP will use a default delimiter of CRLF at the end of each text file
record.

The usual delimiter used for transfers to MS-DOS systems is CRLF,
and the usual delimiter used for transfers to UNIX systems is LF.

To create records in the compressed file without any delimiters, use
the syntax -DELIM().

The same –DELIM command that was used on the original
compression should be used when extracting a file using PKUNZIP
for MVS.

The default processing in PKUNZIP for MVS searches for delimiters
in text files to determine the record boundaries, by looking for CR, LF
and Ctrl-Z characters. Expected combinations are documented for
the PKUNZIP -DELIM command, other combinations may not
process correctly. For example, if a text file on MVS is compressed
with a -DELIM(CRLFLF) command, and then decompressed using
the default options for PKUNZIP for MVS, it will decompress as if
there is a extra line between each line of the original file.
-ECHO
The -ECHO command is used to display commands input to PKZIP on
the output message dataset.
When this command is used, PKZIP will copy the command line which
contains the -ECHO command and all subsequent command lines (from
the configuration file, PARM or SYSIN) to the output message dataset.
By default, the –ECHO facility is activated. Thus, the –ECHO command
need only be used if the –NOECHO command has been used to
suppress the output of preceding commands. In this circumstance, the
command line which contains the -ECHO command may be processed
before the line is displayed, so any errors in this line may be output
before the line is displayed.
See also –NOECHO.
T4ASI025-00-00
PKZIP Commands
175
-FILEPROCERR
The -FILEPROCERR option is used to specify whether processing errors
will terminate PKZIP processing, or if the processing will attempt to
continue.
PKZIP can process a number of files the most important of which are the
input files and the temporary archives that these files can be compressed
into. If an I/O related problem occurs with one of these files, PKZIP has
the option of:

continuing with other files, but not processing the file which had the
error

stopping the processing.
These options are specified as follows:
-FILEPROCERR(TERMINATE|TOLERATE)
TERMINATE
Stop processing if an error is detected.
TOLERATE
Allow processing to continue with other files after a file error.
Note:

The TOLERATE option should be used with caution. When file
errors are TOLERATEd, the PKZIP job will complete with an error
return code and messages indicating the problem. If all selected files
receive errors, then PKZIP may create an empty archive with this
option specified.

This command is distinguished from -FILESELERR because this sort
of error occurs after the file reading begins.
-FILESELERR
The -FILESELERR option is used to specify whether selection errors will
terminate PKZIP processing, or if the processing will attempt to continue
selecting other files.
Selection is the first phase of PKZIP processing, where the files that have
been specified are selected and checked to verify that it is possible for
PKZIP to read these input files. If PKZIP detects a problem in this
process (e.g. file exists but is already OPEN to another user), then PKZIP
has the option of:

continuing with other files, but not processing the file which had the
error

stopping the processing.
These options are specified as follows:
176
PKZIP for MVS: User Reference
T4ASI025-00-00
-FILESELERR(COMPAT|TERMINATE|TOLERATE[,WARNONBUSY])
COMPAT
Process in the same way as PKZIP 2.2 for MVS and before.
TERMINATE
Stop processing if an error is detected.
TOLERATE
Allow processing to continue with other files after a file
selection error.
WARNONBUSY
Report ‘busy’ files as a warning and skip them rather than
reporting them as an error. If this option is not specified,
busy files are processed as specified by the preceding
option, however it has no effect if specified with COMPAT.
Note:

The COMPAT option is the default as this replicates previous levels
and so make upgrading easier. However it is not recommended, as
COMPAT will ignore some datasets, without warning. TOLERATE is
the recommended option as this will continue processing but will
indicate which datasets that were not processed, despite matching
the PKZIP file selection.

When file errors are TOLERATEd, the PKZIP job will complete with
an error return code and messages indicating the problem with the
selected file.

This command is distinguished from -FILEPROCERR because a
selection error occurs before the file reading begins.
-FRESHEN command
The -FRESHEN command is used to update files which are already in
the ZIP archive.
When this command is used, PKZIP will compare the contents of the old
ZIP archive with the files that have been selected for compression by the
<dataset name> command. If a file already exists in the ZIP archive and
the MVS file is available for compression, PKZIP will replace the file in
the ZIP archive.
Note:

T4ASI025-00-00
This behaviour is different to that of some other versions of PKZIP,
where the -FRESHEN command will only update a file if the
timestamp held for the selected file in the ZIP archive is earlier than
that of the dataset or PDS member matched on MVS. Not all
datasets or PDS members on MVS have date or timestamps, so the
behaviour of PKZIP for MVS has been altered to that described
above.
PKZIP Commands
177

The –FRESHEN command reads the old Zip Archive and creates a
new Zip Archive, so requires that either the -ARCHIVE command or
both the -ARCHINDD and -ARCHOUTDD commands be specified.
-FTRAN
The -FTRAN (File TRANslation) command is used to specify a translation
table for use with filenames, comments, and similar control information in
a ZIP archive.
The full syntax for this command is:
-FTRAN(<translation table>)
where <translation table> is the name of a loadable translation table. This
translation table may either be supplied, or may be created by yourself,
as described in the Modifying a translation table section of Chapter 16.
Translation and Translation Tables.
This command is likely to be used where the filenames or comments that
would be created by using PKZIP for MVS using the standard translation
tables would contain characters which would be indecipherable, or
filenames containing illegal names on the target platform. See Chapter
16. Translation and Translation Tables for further discussion of how
translation tables are used.
If this command is not specified, the default translation table, ASCII, is
used.
-GZIP
The -GZIP command is used to indicate that the output archive will be
created in GZIP format, rather than PKZIP format.
Further information on the effects of coding this command is given in Part
5. GZIP (GNU zip) Processing. Note especially the information
presented in Chapter 19. Processing GZIP Format Archives which
describes the effects and restrictions of coding this command.
-INDD
Each -INDD command is used to specify a DD statement which identifies
a dataset that PKZIP should attempt to compress. If the DDname
specified identifies a PDS then one or more members can be specified
for compression (if no members are specified then all members in the
PDS will be selected). If the DDname specifies a member of a PDS, then
only that member will be selected.
The -INDD command can be used alone or in addition to other normal file
selections (see <dataset name> command). Multiple –INDD commands
can be used.
178
PKZIP for MVS: User Reference
T4ASI025-00-00
The full syntax of this command is:
-INDD(<ddname>[,member1][,member2][…,memberN])
Where <ddname> refers to a DD statement in this job step.
Examples of -INDD
To compress a sequential dataset:
//ZIPSTEP EXEC PGM=PKZIP,REGION=2M
//SYSPRINT DD SYSOUT=*
//INPUT
DD DISP=SHR,DSN=DATASET.TO.ZIP.UP.SEQ
//SYSIN
DD *
-ECHO
-ARCHIVE(ARCHIVE.DATASET.ZIP)
-ARCHUNIT(SYSDA)
-INDD(INPUT)
/*
To compress an entire PDS:
//ZIPSTEP EXEC PGM=PKZIP,REGION=2M
//SYSPRINT DD SYSOUT=*
//INPUT
DD DISP=SHR,DSN=DATASET.TO.ZIP.UP.PDS
//SYSIN
DD *
-ECHO
-ARCHIVE(ARCHIVE.DATASET.ZIP)
-ARCHUNIT(SYSDA)
-INDD(INPUT)
/*
To compress some PDS members:
//ZIPSTEP EXEC PGM=PKZIP,REGION=2M
//SYSPRINT DD SYSOUT=*
//INPUT
DD DISP=SHR,DSN=DATASET.TO.ZIP.UP.PDS
//SYSIN
DD *
-ECHO
-ARCHIVE(ARCHIVE.DATASET.ZIP)
-ARCHUNIT(SYSDA)
-INDD(INPUT,ASMCODE,COBSRCE,JCL*)
/*
See also <dataset name> command.
-KEEPINORDER
The -KEEPINORDER command is used to specify that files in a new or
updated ZIP archive must be in the order that they were selected by the
file selection commands that were input.
By default, PKZIP may order the files in a ZIP archive in such a way that
they will be compressed in the shortest possible time. However, this
means that they may not necessarily appear in the ZIP archive in the
order specified. If it is necessary for them to appear in this order, this
command may be input, and the files will be compressed in the specified
order, although this compression may be somewhat slower.
See also the -NOKEEPINORDER command.
T4ASI025-00-00
PKZIP Commands
179
-METHOD
The -METHOD command is used to specify the amount and speed of
compression that is required for any files that are updated in the
compressed ZIP archive.
The full syntax for this command is:
-METHOD(MAXIMUM|NORMAL|FAST|SUPERFAST|STORE)
where the compression method to be used is specified by one of the
following values, each of which is described in more detail later in this
section:
MAXIMUM
Maximum possible compression.
NORMAL
Normal compression. This is the default.
FAST
Fast compression.
SUPERFAST
Extremely fast compression.
STORE
No compression.
You can choose speed, high compression or a balance between the two.
The default method provides good compression at a reasonable speed.
Note that if PKZIP attempts to compress a file, and the resulting file is
larger than the original, it will use the STORE method on that file.
However, this is slower than specifying the STORE method directly, as
PKZIP must first attempt to compress the file.
MAXIMUM method
This method provides the maximum compression, but will also take the
longest time.
NORMAL method
This is the default compression method (if the -METHOD command is
not specified) which provides good compression at a reasonable speed.
FAST method
This is a faster compression method which also provides good
compression.
SUPERFAST method
This is the fastest compression method, but will compress the files by the
least amount.
180
PKZIP for MVS: User Reference
T4ASI025-00-00
STORE method
This method can be used to specify that no compression is required. This
is typically the case when archiving files that have already been
compressed in some way. By specifying no compression, PKZIP will
store the files directly rather than first attempting to compress them.
-NIA
The -NIA command (Name In Archive) command is used define the first
part of the process used to convert an MVS file name to the appropriate
ZIP file name. A number of –NIA commands, each with wild cards can
be used, to create a generic conversion for the input MVS files.
The –NIA command is specified in the following way:
-NIA(<MVS name>,<Archive name>)
Where:

<MVS name> specifies the associated MVS file name. This can be a
maximum of 54 characters long and should match MVS dataset
naming standards. To assist with matching a number of wild
characters can be specified – these make the matching more generic
and provide indications for the substitution characters that can be
used when creating the output ZIP file name. The wild character that
can be specified is:


‘*’ – to match any number (0 or more) of characters (regardless
of qualifiers). Note that specifying adjacent wild characters has
no value and is marked as an error.
<Archive name> defines the output file name to be associated with
MVS files that match the <MVS name>. This value can be up to 80
characters long and may specify as many substitution characters as
were specified for the <MVS name>. Substitution characters may be
either the wild (‘*’) character or the ignore (‘+’) character. These
character are matched in order of appearance with a wild character
in the <MVS name>. The substitution characters that can be
specified are:

‘*’ (wild character): Each wild character in the <Archive name>
will be replaced with the actual characters that match the
equivalent wild character from the original input MVS file name.

‘+’ (ignore character): Each ignore character in the <Archive
name> will be removed and the matching wild character from the
original input MVS file name will be ignored.
Blanks are not supported within the <MVS name> or the <Archive
name>. Matching brackets (i.e. a pair of ‘(‘ and ‘)’) may be used, unmatching brackets will give a syntax error.
T4ASI025-00-00
PKZIP Commands
181
The following tables give examples of the input file name, -NIA
parameters and the resultant name. The first table shows examples
where the –NIA command has resulted in reasonable archive names, the
second table shows examples where the inappropriate use of an NIA
command can result in a badly formed archive name.
MVS File Name
NIA
Archive Name
ZIP.SEQ.FILE
ZIP.SEQ.FILE,NEW/DAT
NEW/DAT
ZIP.SEQ.FILE
ZIP.SEQ.FILE,NEW.EXT
NEW.EXT
ZIP.PDS(MEM1)
ZIP.PDS(MEM9)
ZIP.PDS(*),NEW/LIB/*
NEW/LIB/MEM1
NEW/LIB/MEM9
ZIP.PDS(MMM)
*.*(MMM), */*.TXT
ZIP/PDS.TXT
ZIP.PDS(MMM)
*.*(*),*/*/*.TXT
ZIP/PDS/MMM.TXT
ZIP.PDS(MMM)
*.PDS(*),*/*/DATA
ZIP/MMM/DATA
ZIP.PDS(MMM)
*(*),+*.TXT
MMM.TXT
ZIP.SEQ.FILE
*.*.FILE,*.*
ZIP.SEQ
ZIP.SEQ.FILE
*.*.FILE,+*.TXT
SEQ.TXT
MVS File Name
NIA
Badly formed Archive Name
ZIP.PDS(MMM)
*,*.TXT
ZIP.PDS(MMM).TXT
ZIP.PDS(MMM)
ZI*, PD*.TXT
PDP.PDS(MMM).TXT
-NIA commands are searched in order of input (i.e. the first one entered
is checked first) until a match is found. For example, if the sequential
dataset:
T4ZIP.SOURCE.TEXT
was compressed with the following NIA commands specified:
-NIA(*.SOURC.*,*/*)
-NIA(*.SOURCE.*,*/*.SRC)
-NIA(*.TEXT,*/TXT)
the resultant file would match the second –NIA specification and give the
output file name of:
T4ZIP/TEXT.SRC
182
PKZIP for MVS: User Reference
T4ASI025-00-00
If no –NIA commands are specified, or the input file name does not
match any of the specified commands, the conversion is done as though
the following commands had been specified:
* Following command matches for all PDS members
-NIA(*(*),*.*)
* Following command matches all datasets
-NIA(*,*)
In addition, when no NIA command is specified, the NOPATH and
NIASEP commands may affect the default output name. For example,
the default processing for a number of datasets is shown in the following
table. In these cases, NOPATH has not been used and the NIASEP
value specified (or defaulted) is ‘/’.
MVS File Name
Default NIA used
Archive Name
ZIP.FILE(MEM)
*(*),*.*
ZIP/FILE/MEM
ZIP.FILE.SEQ
*,*
ZIP/FILE/SEQ
If a VSAM cluster is being processed, the same NIA conversion (i.e.
using the same NIA command) will be attempted on the DATA and
INDEX component names that are stored as attributes of the file in the
archive. The command may be changed in two ways

If the NIA “MVS name” used does not finish with a wild character,
then additional “.*” characters are added to each of the names.

To ensure that the generated name is still valid, the output DATA or
INDEX name will use the ‘.’ separator rather than ‘/’, even if ‘/’ is
coded in the NIA command.
This processing should ensure that the typical DATA and INDEX names
(which are usually the file name followed by “.DATA” or “.INDEX” or
”.INDX”) will be converted in a consistent way to the original file. Note
that it is not possible to use a different NIA command for the DATA
and/or INDEX names – these will only use the same conversion as the
cluster name (if this matches). The DATA and INDEX component names
are retained in EBCDIC (i.e. no file translation is performed on these
names) and they are not checked for validity by PKZIP.
Note:
T4ASI025-00-00

Names created using the –NIA command are not checked for
validity.

The number of -NIA commands that can be used is restricted only by
the amount of storage used by these commands. Typically each will
use in the order of 256 bytes.
PKZIP Commands
183

The number of wild characters that can be specified is limited by the
number that can be specified in the <MVS name> (i.e. the MVS file
name). As adjacent ‘*’ characters are not supported, this effectively
limits the number to 28.

Specifying more wild characters in the archive name than the MVS
name is not supported and will give and incorrect command format
error. Extra wild characters in the MVS name are ignored.

It is possible to create a null archive name via incorrect use of the
wild characters. For example, the command NIA(*,+) will not
generate an archive name. Where possible, these will be detected
when the commands are checked and the processing will be
stopped.

If the null archive name is detected after the checking of the NIA
command (i.e. when it actually used), the ZIP compression will ignore
the NIA command and continue as though that NIA command had
not been matched. For example, the command NIA(A*BC.LOAD*,**)
will work satisfactorily for AABC.LOADLIB (generating the name
ALIB, but will generate a null name for the dataset ABC.LOAD. If this
was the only NIA command and no other archive name commands
had been used, then the archive name for the MVS dataset
ABC.LOAD would be ABC/LOAD.
Example using a number of NIA commands
The following output shows a number of NIA commands being used
when creating an archive containing the following files:
ZIPREG.V251.CNTL(LICREP)
ZIPREG.INPUT
ZIPREG.ESDSTEXT
ZIPREG.KSDSTEXT
ZIPREG.TEST38.PDS(*)
184
PKZIP for MVS: User Reference
T4ASI025-00-00
ZIP101I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP453I
ZIP453I
ZIP453I
ZIP453I
ZIP453I
ZIP453I
ZIP453I
ZIP453I
ZIP453I
ZIP453I
ZIP453I
ZIP453I
ZIP453I
ZIP453I
ZIP453I
ZIP453I
ZIP102I
PKZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
-ARCHIVE(CAH.ZIPREG.EH69.ZIP1)
-NIA(ZIPREG.V251.*(LICREP),*.TXT)
-NIA(ZIPREG.IN*,*)
-NIA(ZIPREG.E*,+NEW.TXT)
-NIA(ZIPRE*.K*,+*.TXT)
-NIA(ZIPREG.TEST38.PDS(ARCHD*),NEW*.TXT)
-NIA(ZIPREG.TEST38.PDS(ARCHC*),+OLD/TYPEC)
-NIA(ZIPREG.TEST38.PDS(ARCHR*),EH69*/FILE)
-NIA(ZIPREG.TEST38.PDS(*),EH69/*/REST)
ZIPREG.V251.CNTL(LICREP)
ZIPREG.INPUT
ZIPREG.ESDSTEXT
ZIPREG.KSDSTEXT
ZIPREG.TEST38.PDS(*)
Compressed file ZIPREG.V251.CNTL(LICREP) as CNTL.TXT (Deflated 75%).
Compressed file ZIPREG.INPUT as PUT (Deflated 87%).
Compressed file ZIPREG.ESDSTEXT as NEW.TXT (Deflated 97%).
Compressed file ZIPREG.KSDSTEXT as SDSTEXT.TXT (Deflated 99%).
Compressed file ZIPREG.TEST38.PDS(ARCHCICS) as OLD/TYPEC (Deflated 88%).
Compressed file ZIPREG.TEST38.PDS(ARCHDCM) as NEWCM.TXT (Deflated 78%).
Compressed file ZIPREG.TEST38.PDS(ARCHDSG) as NEWSG.TXT (Deflated 81%).
Compressed file ZIPREG.TEST38.PDS(ARCHD2BK) as NEW2BK.TXT (Deflated 79%).
Compressed file ZIPREG.TEST38.PDS(ARCHD2CP) as NEW2CP.TXT (Deflated 78%).
Compressed file ZIPREG.TEST38.PDS(ARCHJOB) as EH69/ARCHJOB/REST (Deflated 89%).
Compressed file ZIPREG.TEST38.PDS(ARCHJOB3) as EH69/ARCHJOB3/REST (Deflated 80%).
Compressed file ZIPREG.TEST38.PDS(ARCHREST) as EH69EST/FILE (Deflated 78%).
Compressed file ZIPREG.TEST38.PDS(ARCHRSM) as EH69SM/FILE (Deflated 83%).
Compressed file ZIPREG.TEST38.PDS(ARCHRST4) as EH69ST4/FILE (Deflated 80%).
Compressed file ZIPREG.TEST38.PDS(ARCHT4Z) as EH69/ARCHT4Z/REST (Deflated 79%).
Compressed file ZIPREG.TEST38.PDS(ARCH9712) as EH69/ARCH9712/REST (Deflated 84%).
PKZIP MVS
2.5
level x ending.
-NIASEP
The -NIASEP command (Name In Archive SEParator) is used to specify
a single character that will be used as the separator for names that are
stored in the archive.
This processing takes the MVS File Name and substitutes the ‘.’ in the
name with the separator character. (In fact, the objective of the
processing is to create an appropriate ASCII file name, so the character
specified actually replaces the ASCII ‘.’ in the archive file name.)
The full syntax for the command is:
-NIASEP(<separator character>)
where <separator character> specifies the character to be used as a
level separator for the file names in the archive.
T4ASI025-00-00
PKZIP Commands
185
The separator character may be specified by one of the following
methods:
EBCDIC character
A single EBCDIC character value. This value is
translated (using the FTRAN table) to ASCII prior to
substitution.
X’Hex character’
A single hexadecimal character, which is not translated
prior to being used. This option allows the user to
directly specify the ASCII character.
If the NIASEP command is not specified then the default value of X’2F’
(ASCII ‘/’) is used. With this value, each hierarchical level in the MVS File
Name becomes a ‘directory’.
Examples of the MVS File Name and the resultant Archive name are
given below:
MVS File Name
NIASEP used
Archive Name
ZIP.BBB(CCC)
<not specified>
ZIP/BBB/CCC
ZIP.BBB.CCC
?
ZIP?BBB?CCC
Note:

The NIASEP command will not be used if a matching NIA command
has been coded or if the NOPATH command has been specified.
-NOALIASMEMBER
The -NOALIASMEMBER command is used to indicate that Alias entries
that exist for PDS members selected should be ignored.
This is the default setting.
See also –ALIASMEMBER.
-NOATTRIB
The -NOATTRIB command is used to specify that file attributes should
not be stored for datasets compressed into a ZIP archive.
If a ZIP archive is being updated, and a file within the archive contains file
attributes for PKZIP for MVS, then these attributes will not be placed in
the resulting ZIP archive, whether the file was updated or not. File
attributes for other platforms will be retained within an updated ZIP
archive, whether the file was updated or not.
186
PKZIP for MVS: User Reference
T4ASI025-00-00
This may be an appropriate setting to use when the generated archive
will be transferred to a platform that does not support the MVS file
attributes. However the overhead of the attributes is relatively small and
they can be of value should there be a problem, so in general this setting
is not recommended.
See also –ATTRIB, –ATTRIBCENTRAL and -ATTRIBLOCAL
commands.
-NOECHO
The -NOECHO command is used to suppress commands input to PKZIP
from the output message dataset.
When this command is used, PKZIP will stop outputting the command
lines to the output message dataset.
Note that the command line which contains the -NOECHO command
may be processed before the line is displayed, so this line may be output.
See also -ECHO.
-NOKEEPINORDER
The -NOKEEPINORDER command is used to specify that files in a new
or updated ZIP archive do not need to be in the order that they were
selected by the file selection commands that were input.
By default, PKZIP will order the files in a ZIP archive in such a way that
they will be compressed in the shortest available time. However, this
means that they may not necessarily appear in the ZIP archive in the
order specified. This command may be input to confirm that the files
need not be kept in order.
See also the -KEEPINORDER command.
-NOPATH
The -NOPATH command is used to specify that only the last component
of the dataset hierarchy should be used when converting a filename
between MVS format and ZIP archive format.
For example the PDS member:
T4ZIP.BASE25.SOURCE(MEM1)
would be stored in the ZIP archive as:
MEM1
Similarly the sequential dataset:
T4ASI025-00-00
PKZIP Commands
187
T4ZIP.MY.DATA
would be stored in the ZIP archive as:
DATA
If this command is not specified, the default is -PATH.
Note:

The NOPATH command will not be used if a matching NIA command
has been coded.
-NORECURSE
The -NORECURSE command is used to specify that only dataset
components specified in the user's file selection should be considered for
matching with any given dataset. This is the default option for PKZIP.
For example the selection string:
T4ZIP.BASE25(*)
with the -NORECURSE command set would only find members in the
following dataset:
T4ZIP.BASE25
and not the following, for example:
T4ZIP.BASE25.SOURCE
T4ZIP.BASE25.TEXT
See also the -RECURSE command.
-NOSYSIN
If the -NOSYSIN command is given on the PARM parameter or in the
Configuration file, then the SYSIN dataset is not opened for commands.
If the NOSYSIN command is given within the SYSIN dataset, then it will
have no effect.
The -NOSYSIN command is useful when calling PKZIP from another
program because it ensures that PKZIP will not interfere with the SYSIN
passed to the calling program.
See Chapter 15. Calling PKZIP from a Program for more details.
-NOVSAM
If a file selection, which contains a wildcard, matches a VSAM file then
the VSAM file is ignored if the -NOVSAM command has been specified.
188
PKZIP for MVS: User Reference
T4ASI025-00-00
If a file selection, which does not contain a wildcard, matches a VSAM file
then the VSAM file is selected regardless of whether the -NOVSAM
command was specified or not.
-PASSWORD
This command can be used to encrypt the selected datasets into a ZIP
archive.
The full syntax for this command is:
-PASSWORD(<password>)
where <password> is the password that is to be used for decrypting the
files. The password is case sensitive, meaning that "Secret", "secret" and
"SECRET" are all different passwords. This should be noted, especially
where the password is being input from JCL, to ensure that the
JCL/editor options do not capitalise, and hence invalidate, the password.
The maximum allowable password length is 64 characters.
The selected files are encrypted before they are added to the ZIP archive
- they will be unreadable except by extraction with the correct password.
Note that a ZIP archive may contain files encrypted under several
different passwords. Passwords should be held securely, and not
forgotten. If a password is lost, the data cannot be decrypted or extracted
by any known means - the password is not stored in the ZIP archive in
any form.
-PATH
The -PATH command is used to specify that the full dataset component
hierarchy should be used when converting a filename between MVS
format and ZIP archive format. This is the default option for PKZIP.
For example, the PDS member:
T4ZIP.BASE25.SOURCE(MEM1)
would be stored in the ZIP archive as:
T4ZIP/BASE25/SOURCE/MEM1
Similarly the sequential dataset:
T4ZIP.MY.DATA
would be stored in the ZIP archive as:
T4ZIP/MY/DATA
See also -NOPATH.
T4ASI025-00-00
PKZIP Commands
189
-PCP
The command is used to specify that if the given filename (<old name>)
matches exactly the ZIP file name for a dataset being compressed then
the ZIP file name for that dataset should be replaced entirely by a new
specified ZIP file name (<new name>).
Only one -PCP command may be specified within the same call to
PKZIP.
The full syntax for this command is:
-PCP(<old name>,<new name>)
Where <old name> can be up to 54 characters as follows:
<dataset component>[.<dataset component>]...[.<dataset
component>][(<member>)]
and <new name> can be up to 80 characters as follows:
[<pathname>][/<pathname>]...[/]<filename>[.<extension>]
where '/' and '\' are interchangeable.
For example the member of the partitioned dataset:
T4ZIP.BASE25.TEXT(MEM1)
could be compressed to a ZIP file as:
ASIZIP/BASE26/M1.TXT
by using the following -PCP command:
-PCP(T4ZIP.BASE25.TEXT(MEM1),ASIZIP\BASE26\M1.TXT)
Similarly the sequential dataset:
T4ZIP.SOURCE.TEXT
could be compressed to a ZIP file as:
ASIZIP/NEW/SOURCE.TXT
by using the following -PCP command:
-PCP(T4ZIP.SOURCE.TEXT,ASIZIP/NEW/SOURCE.TXT)
190
PKZIP for MVS: User Reference
T4ASI025-00-00
Also the sequential dataset:
T4ZIP.SOURCE.FILE
could be compressed to a ZIP file as:
ASIZIP/NEW/SOURCE/FILE
by using the following -PCP command:
-PCP(T4ZIP.SOURCE.FILE,ASIZIP/NEW/SOURCE/FILE)
Note:

The functionality that is provided by this command is provided more
effectively using the NIA command. This command will be removed
in a future release. Please replace PCP commands with NIA
commands.

The –PCP command does not support the use of ‘wild cards’. The
exact name must be specified.

When using this command, use the ‘/’ character to separate qualifiers
in the new name. Only use the ‘.’ character when an extension name
is required.
-RECURSE
The RECURSE command is used to specify whether dataset
components beyond those specified should be considered for matching
with any given user selection.
For example, the selection string:
T4ZIP.BASE25(*)
with the -RECURSE command set would find members in the following
datasets:
T4ZIP.BASE25
T4ZIP.BASE25.SOURCE
T4ZIP.BASE25.TEXT
T4ZIP.BASE25.TEXT.OLD
etc.
If this command is not specified, the default is -NORECURSE.
See also -NORECURSE.
T4ASI025-00-00
PKZIP Commands
191
Note:

Coding RECURSE is functionally identical to coding a second
selection with the original file name terminated with ‘.**’. So using
NORECURSE, the example above could have been coded as two
selections; “T4ZIP.BASE25(*)” and “T4ZIP.BASE25.**(*)”. Typically,
the multiple selection specification is clearer than the use of
RECURSE so using multiple selections is recommended.
-STRIP
The -STRIP command is used to specify a single character that must be
stripped from the end of each record before it is compressed. If there are
multiple occurrences of the specified character at the end of a record,
each occurrence will be removed.
The full syntax for the command is:
-STRIP(<strip character>)
where <strip character> specifies the character to be stripped from the
end of every record.
The strip character may be specified by one of the following methods:
None
If no strip character is specified, but the STRIP
command is input, PKZIP will strip space characters,
X’40’, from the end of every record before compression.
EBCDIC character
A single EBCDIC literal character value may be input.
This will be stripped from the end of each record before
compression.
X’Hex character’
A single hexadecimal character may be input - this will
be stripped from the end of each record before
compression.
If the STRIP command is not specified, no characters are stripped before
a file is compressed.
Note that this command modifies the data and, therefore, should be
used with extreme caution.
-TAPETODISK
This command is used to determine whether or not a temporary archive
(i.e. disk archive) may be used to maintain a copy of an input archive.
This option is significant where that archive is based on a sequential
device that can support ZIP processing but where there may be
significant operator involvement (i.e. 3480 or 3490 cartridge devices).
PKZIP for MVS will always attempt to create a disk archive for 3420 tape
devices.
192
PKZIP for MVS: User Reference
T4ASI025-00-00
If this command is specified when PKZIP is reading a cartridge based
archive, the ZIP processing will attempt to copy the input archive to a
temporary dataset (allocating this dataset using the TEMP* commands
that are specified or defaulted). When PKZIP is reading a ‘round tape’
(3420) tape based archive, a temporary dataset will always be used, even
if this command has not been specified.
If the allocated temporary space is insufficient, then the processing will
revert to direct Tape processing, with the consequent impact on Tape
handling and potentially slower processing.
Note:

When using this option, it may also be useful to code the JCL
parameter FREE=CLOSE on the DD associated with the input
archive. Using this, the tape drive will be made available for other
processing once the copy has been completed. If FREE=CLOSE is
not specified, then the tape must remain mounted while the ZIP
processing is progressing.
-TASKS
This command requires the HyperZIP license, please refer to Appendix
B. Licensing Guide for more details.
PKZIP can use a separate subtask for each dataset being processed. If
the executing processor has multiple CPUs (engines), then using
subtasks in this way enables the compression of each dataset to be
performed in parallel. The -TASKS command specifies the number of
subtasks used to compress files, so on a multiple CPU system
compressing many datasets, increasing the TASKS value could decrease
the elapsed time.
The full syntax for this command is:
-TASKS(<number>)
where <number> is the maximum number of subtasks to be used by
PKZIP to compress datasets.
The -TASKS command is useful for machines with multiple CPUs. The
command is valid on single CPU machines but the effect on performance
is not defined. The optimal number of tasks will depend on factors such
as the type of datasets being processed, but in general it is unlikely that
specifying a value greater than twice the available number of processors
will improve performance.
If the HyperZIP license is not present or the -TASKS command is not
specified then the value defaults to 1.
Additional information describing -TASKS is documented in Chapter 13.
Performance.
T4ASI025-00-00
PKZIP Commands
193
Note:

Members of the same PDS are compressed in the same subtask
unless they are selected using separate file selections.
-TEMPBLKSIZ
The -TEMPBLKSIZ command is used to specify the block size to be used
for a temporary ZIP dataset.
The full syntax for this command is:
-TEMPBLKSIZ(<block size>)
where <block size> is the block size to be used for the temporary ZIP
dataset.
If this command is not specified or is set to 0, the block size associated
with the temporary ZIP dataset will be calculated so that the archive is
allocated with ½ track blocking. Note that PKZIP performance is affected
by the dataset block size, and a large block size may improve its
performance.
-TEMPDCLASS
The -TEMPDCLASS command is used to specify the DFSMS data class
to be used for a temporary ZIP dataset.
The full syntax for this command is:
-TEMPDCLASS(<data class>)
where <data class > is the DFSMS data class to be used for placing the
temporary ZIP dataset.
If this command is not specified, the data class is set as has been
specified or defaulted for the new ZIP archive.
-TEMPPRIMARY
The -TEMPPRIMARY command is used to specify the number of data
units to be used on the primary extent of a temporary ZIP dataset.
The full syntax for this command is:
-TEMPPRIMARY(<data units>)
where <data units> is the number of data units to be used in the primary
extent of the temporary ZIP dataset.
If this command is not specified, primary extent is set as has been
specified or defaulted for the new ZIP archive.
194
PKZIP for MVS: User Reference
T4ASI025-00-00
-TEMPSCLASS
The -TEMPSCLASS command is used to specify the DFSMS storage
class to be used for a temporary ZIP dataset.
The full syntax for this command is:
-TEMPSCLASS(<storage class>)
where <storage class > is the DFSMS storage class to be used for
placing the temporary ZIP dataset.
If this command is not specified, the storage class is set as has been
specified or defaulted for the new ZIP archive.
-TEMPSECONDARY
The -TEMPSECONDARY command is used to specify the number of
data units to be used on the secondary extent of a temporary ZIP
dataset.
The full syntax for this command is:
-TEMPSECONDARY(<data units>)
where <data units> is the number of data units to be used in the
secondary extent of the temporary ZIP dataset. <data units> may not be
specified as 0.
If this command is not specified, the secondary extent size is set as has
been specified or defaulted for the new ZIP archive.
-TEMPSPACE
The -TEMPSPACE command is used to specify the type of data units to
be used for allocating a temporary ZIP dataset.
The full syntax for this command is:
-TEMPSPACE(TRK|CYL|BLK)
where the type of data unit to be used for allocating the temporary ZIP
dataset is specified by one of the following parameters:
T4ASI025-00-00
TRK
The ZIP Temporary dataset is to be allocated by tracks.
CYL
The ZIP Temporary dataset is to be allocated by cylinders.
BLK
The ZIP Temporary dataset is to be allocated by blocks; the block
size is taken from the -TEMPBLKSIZ command.
PKZIP Commands
195
If this command is not specified, the temporary ZIP dataset is allocated
by the same method as has been specified or defaulted for the new ZIP
archive.
-TEMPTYPE
The -TEMPTYPE command is used to specify the record format of
records within a temporary ZIP dataset.
The full syntax for this command is:
-TEMPTYPE(U|F|FB)
where <record format> may take the following values:
U
to specify undefined records – the default value.
F
to specify fixed records.
FB
to specify fixed block records.
If this command is not specified, the temporary dataset is allocated with
an undefined record format.
-TEMPUNIT
The -TEMPUNIT command is used to specify the generic unit on which a
temporary ZIP dataset is to be allocated.
The full syntax for this command is:
-TEMPUNIT(<unit name>)
where <unit name> is the generic unit name on which the temporary ZIP
dataset is to be allocated.
If this command is not specified, the unit is set as has been specified or
defaulted for the new ZIP archive.
-TEMPVOL
The -TEMPVOL command is used to specify the volume on which a
temporary ZIP dataset is to be allocated.
The full syntax for this command is:
-TEMPVOL(<volume name> [<volume name>…])
where <volume name> identify the volume(s) on which the temporary ZIP
dataset is to be allocated. Up to 31 volumes can be specified, separated
by blanks.
196
PKZIP for MVS: User Reference
T4ASI025-00-00
If this command is not specified, the volume specification is set as has
been specified or defaulted for the new ZIP archive.
-TERM
The -TERM command is used to specify a terminator (of between 0 and
4 characters) to be suffixed to the last record of a file, when compressing
a text file. The -TERM command is ignored when a file is being
compressed as binary.
The full syntax for this command is:
-TERM(<terminator characters>)
where <terminator characters> specifies the character(s) to be added to
the end of a text file that is compressed.
Each of the 0-4 <terminator characters> may have one of the following
values:
CR
An ASCII carriage return character (hexadecimal 0D) is to be included
in the terminator for a text file that is compressed.
LF
An ASCII line feed character (hexadecimal 0A) is to be included in the
terminator for a text file that is compressed.
CZ
An ASCII Ctrl-Z character (hexadecimal 1A) is to be included in the
terminator for a text file that is compressed.
Any combination of these characters may be used up to a limit of 4
characters.
Note:
T4ASI025-00-00

If no –TERM command is specified when compressing a text file,
PKZIP will use a default terminator of CRLFCZ at the end of each
text file.

The usual terminator used for transfers to MS-DOS systems is
CRLFCZ, and the usual terminator used for transfers to UNIX
systems is LF.

To create a compressed file without any terminator, use the syntax
-TERM().

The same –TERM() command that was used on the original
compression should be used when extracting a file using PKUNZIP
for MVS. To ensure that this processes correctly, the –DELIM()
value must not contained in the -TERM() value – see documentation
for the PKUNZIP –TERM() command for more information.
PKZIP Commands
197

If decompressing a file using PKUNZIP for MVS that was
compressed with both the -DELIM() and -TERM() commands, then
remember to use the both the -DELIM() and -TERM() commands and
to decompress the file to a fixed record length dataset.
-TEXT
This command is used to determine the way in which a selected file is
compressed. If this command is used, the file will be compressed as a
text file.
If neither this command nor the -BINARY or -ZDW commands is
specified, PKZIP will read a portion of the selected file to determine its
most likely file type, and will compress it by the method selected. This
determination will affect performance, hence it is recommended that
either the -BINARY or the -TEXT command is specified if you know the
file types. You can find the result of this determination by examining the
final ZIP archive using the -VIEWDETAIL command (See the -VIEW
command section of Chapter 21. PKUNZIP Commands for more details).
A text file is stored as an ASCII data stream with embedded record
delimiters, as determined by the -DELIM and -TERM commands (or their
defaults). PKZIP will translate the text file from EBCDIC to ASCII using
the translation table determined by the -TRAN command (or its default).
The defaults are compatible with text files compressed on other
platforms, and also means that this ZIP archive can be uncompressed on
another platform.
-TIMESTAMP
This command is used to specify which of the available MVS date/time
options, will be used to set the timestamp associated with the ZIP file in
the archive.
The timestamp associated with a file in the ZIP archive can be seen
using the -VIEW command. When creating a ZIP archive, the PKZIP
user has three possible dates/times that could be used to set this ZIP file
timestamp:
198

The creation date of the MVS dataset. Note that not all files have
creation dates and that the Creation date does not have an
associated time, as standard MVS systems do not retain this
information. When this option is chosen, the time of 00:00:00 will be
used.

The current system local time at the time the ZIP processing was
started. The system Local time is typically set by specifying an offset
(that reflects the Time Zone) from the UTC or GMT time (see next).
Whether this is different to UTC time will depend on the way the
system has been set up.
PKZIP for MVS: User Reference
T4ASI025-00-00

The Universal Time Co-ordinated (UTC) time, which is also known as
Greenwich Mean Time (GMT) at the time the ZIP processing was
started. This is the same time regardless of where you are in the
world. Whether this is different to Local time will depend on the way
the system has been set up.
The -TIMESTAMP command allows the ZIP user to specify which if these
options will be used.
The full syntax for this command is:
-TIMESTAMP(CREATE|CREATEUTC|LOCAL|UTC)
CREATE
The dataset’s Creation Date will be used (with a time of
00:00:00). If this is not available, then the LOCAL time will be
used (see later for the meaning of LOCAL time). Note that for
PDS members, the timestamp used is that of the dataset, not
the individual member.
CREATEUTC
The dataset’s Creation Date will be used as noted for the
CREATE option. If this is not available, then the UTC time
will be used (see later for the meaning of UTC time).
LOCAL
The system (local) time will be used, where local time
includes any time zone differences from the UTC (or GMT)
time.
UTC
The UTC (GMT) time as set on the system will be used,
which is usually set as the time at Greenwich, England – i.e. it
ignores any time zone differences.
Note:

The LOCAL and UTC times used are set when the ZIP processing
starts and will be the same for all files added to the archive.
-TRAN
The -TRAN command is used to specify a translation table for use with
translating data from the character set used in the external MVS
environment (usually the EBCDIC character set) to the character set
used within the ZIP archive (normally the ASCII character set) for a text
file in a ZIP archive.
The full syntax for this command is:
-TRAN(<translation table>)
where <translation table> is the name of a loadable translation table. This
translation table may either be supplied, or may be created by yourself,
as described in Modifying a translation table section of Chapter 16.
Translation and Translation Tables.
T4ASI025-00-00
PKZIP Commands
199
This command is likely to be used where the default translation table
does not provide the correct translation for your data, e.g. where the data
is being sent to a country with a different language. If the default
translation table is always incorrect at your installation, it is worthwhile
replacing the default translation table with one which is correct for your
installation. See Chapter 16. Translation and Translation Tables for
further discussion of how translation tables are used.
If this command is not specified, the default translation table, ASCII, is
used.
-UPDATE command
The -UPDATE command is used to update files which are already in the
ZIP archive or to add files which are not already present in the ZIP
archive.
When this command is used, PKZIP will compare the contents of the old
ZIP archive with the files that have been selected for compression. If a
file already exists in the ZIP archive, PKZIP will determine if the file is
selected for compression and also if the file exists as a sequential
dataset, PDS member or VSAM dataset. If so, it will replace the file in the
ZIP archive with the compressed sequential dataset, PDS member or
VSAM dataset. If a selected file is not already present in the ZIP archive,
PKZIP will add the compressed sequential dataset, PDS member or
VSAM dataset.
The –UPDATE command reads the old Zip Archive and creates a new
Zip Archive, so requires that either the -ARCHIVE command or both the
-ARCHINDD and -ARCHOUTDD commands be specified.
-VIEW command
This command will output information about the selected files contained
in the ZIP archive using messages onto the SYSPRINT dataset. The
command is identical to that for the PKUNZIP program. Refer to the
-VIEW command in Chapter 21 PKUNZIP Commands for full details of
how this command should be used.
The –VIEW commands reads an existing Zip Archive, so requires that
either the -ARCHIVE command or the –ARCHINDD command to be
specified.
-ZDW
The -ZDW (ZIP Description Word) command is designed for compressing
and decompressing binary datasets that have variable record lengths. The
-ZDW command forces PKZIP to store record lengths as it compresses a
binary file. The stored record lengths allow PKUNZIP to decompress the
file whilst preserving the original record lengths.
200
PKZIP for MVS: User Reference
T4ASI025-00-00
If you specify the -ZDW command then you should also specify the
-BINARY command. If you compress a file with -BINARY -ZDW then you
should also decompress it with -BINARY -ZDW.
The -ZDW command is not required when compressing a text dataset on
MVS. When compressing text, PKZIP by default places the CRLF delimiter
at the end of each record thus ensuring the proper length on
decompression.
The -ZDW command was written specifically for IBM mainframe users
(MVS, VM, VSE) and may not be supported on other platforms yet. If your
target platform does not support the -ZDW command then it may not be
possible to preserve variable record lengths of a binary file, in these cases
the file should be compressed with just the -BINARY command before
transfer.
-ZIPCUR
The -ZIPCUR (ZIP CURrent) command is used to specify a PDS dataset
from which PKZIP can obtain members to match user selection
parameters that do not match any other dataset.
-ZIPCUR may only be used to specify PDS datasets.
The full syntax for this command is:
-ZIPCUR(<dataset component><.dataset component><...><.dataset
component>)
For example, the selection string:
FRED
With the command:
-ZIPCUR(T4ZIP.BASE25.NAMES)
Is equivalent to specifying the file selection:
T4ZIP.BASE25.NAMES(FRED)
T4ASI025-00-00
PKZIP Commands
201
Chapter 22. VSAM Specific PKZIP Commands
This section describes the commands available for creating new VSAM
ZIP archives. For more details on many of these commands, please refer
to the DEFINE CLUSTER command in the IBM manual Access Method
Services.
The VSAM file handler license is required to read and write VSAM ZIP
archives, see Appendix B. Licensing Guide for more details.
General Syntax for creating a VSAM archive
Cluster Level
-ARCHIVE(entryname)
-ARCHDSORG(VS)
-ARCHVOL(volser)
[-ARCHBUFSPACE(size)]
[-ARCHCATALOG(catalog[/password)]
[-ARCHCISZ(size)]
[-ARCHEEXT(entrypoint)]
[-ARCHERASE|-ARCHNOERASE]
[-ARCHFILE(ddname)]
[-ARCHFREECI(CI-percent) [-ARCHFREECA(CA-percent)]]
[-ARCHOWNER(owner)]
[-ARCHRECORDSIZE(average maximum)]
[-ARCHREUSE|-ARCHNOREUSE]
[-ARCHSHR(crossregion[ crosssystem])]
[-ARCHSPACE(TRK|CYL|REC|MB|KB)]
[-ARCHSPANNED|-ARCHNONSPANNED]
[-ARCHTO(date)|-ARCHFOR(days)]
[-ARCHWRITECHK|-ARCHNOWRITECHK]
Data Level
[-ARCHDATACISZ(size)]
[-ARCHDATAEEXT(entrypoint)]
[-ARCHDATAFILE(ddname)]
[-ARCHDATANAME(name)]
[-ARCHDATAORD|-ARCHDATANORD]
[-ARCHDATAOWNER(owner)]
[-ARCHDATAPRI(primary)]
[-ARCHDATARUS|-ARCHDATANRUS]
[-ARCHDATASEC(secondary)]
[-ARCHDATASHR(crossregion[ crosssystem])]
[-ARCHDATASPACE(TRK|CYL|REC|MB|KB)]
[-ARCHDATAVOL(volser [volser])]
[-ARCHDATAWCK|-ARCHDATANWCK]
T4ASI025-00-00
VSAM Specific PKZIP Commands
203
Summary of VSAM cluster level commands
The following commands are available in this release of PKZIP and are
specific to VSAM archives only.
204
Command
Description
-ARCHBUFSPACE
Specifies the Bufferspace parameter of the IDCAMS
Define Cluster command used to create a new or
updated ZIP archive.
-ARCHCATALOG
Specifies the Catalog parameter of the IDCAMS
Define Cluster command used to create a new or
updated ZIP archive.
-ARCHCISZ
Specifies the Controlintervalsize parameter of the
IDCAMS Define Cluster command used to create a
new or updated ZIP archive.
-ARCHEEXT
Specifies the Exceptionexit parameter of the IDCAMS
Define Cluster command used to create a new or
updated ZIP archive.
-ARCHERASE
Specifies the Erase parameter of the IDCAMS Define
Cluster command used to create a new or updated
ZIP archive.
-ARCHFILE
Specifies the File parameter of the IDCAMS Define
Cluster command used to create a new or updated
ZIP archive.
-ARCHFOR
Specifies the For parameter of the IDCAMS Define
Cluster command used to create a new or updated
ZIP archive.
-ARCHFREECA
Specifies the ca-percent attribute of the Freespace
parameter of the IDCAMS Define Cluster command
used to create a new or updated ZIP archive.
-ARCHFREECI
Specifies the ci-percent attribute of the Freespace
parameter of the IDCAMS Define Cluster command
used to create a new or updated ZIP archive.
-ARCHNOERASE
Specifies the Noerase parameter of the IDCAMS
Define Cluster command used to create a new or
updated ZIP archive.
-ARCHNONSPANNED
Specifies the Nonspanned parameter of the IDCAMS
Define Cluster command used to create a new or
updated ZIP archive.
-ARCHNOREUSE
Specifies the Noreuse parameter of the IDCAMS
Define Cluster command used to create a new or
updated ZIP archive.
-ARCHNOWRITECHK
Specifies the Nowritecheck parameter of the IDCAMS
Define Cluster command used to create a new or
updated ZIP archive.
-ARCHOWNER
Specifies the Owner parameter of the IDCAMS Define
Cluster command used to create a new or updated
ZIP archive.
PKZIP for MVS: User Reference
T4ASI025-00-00
-ARCHRECORDSIZE
Specifies the average and maximum lengths of the
data records in a new or updated ZIP archive.
-ARCHREUSE
Specifies the Reuse parameter of the IDCAMS Define
Cluster command used to create a new or updated
ZIP archive.
-ARCHSHR
Specifies the Shareoptions parameter of the IDCAMS
Define Cluster command used to create a new or
updated ZIP archive.
-ARCHSPACE
Specifies how space is to be allocated for a new or
updated ZIP archive.
-ARCHSPANNED
Specifies the Spanned parameter of the IDCAMS
Define Cluster command used to create a new or
updated ZIP archive.
-ARCHTO
Specifies the To parameter of the IDCAMS Define
Cluster command used to create a new or updated
ZIP archive.
-ARCHWRITECHK
Specifies the Writecheck parameter of the IDCAMS
Define Cluster command used to create a new or
updated ZIP archive.
Summary of VSAM data level commands
The following commands are specific to the data component of VSAM
archives only.
T4ASI025-00-00
Command
Description
-ARCHDATACISZ
Specifies the Controlintervalsize parameter of the
IDCAMS Define Cluster command used to create the
data component of a new or updated ZIP archive.
-ARCHDATAEEXT
Specifies the Exceptionexit parameter of the IDCAMS
Define Cluster command used to create the data
component of a new or updated ZIP archive.
-ARCHDATAFILE
Specifies the File parameter of the IDCAMS Define
Cluster command used to create the data component
of a new or updated ZIP archive.
-ARCHDATANAME
Specifies the Name parameter of the IDCAMS Define
Cluster command used to create the data component
of a new or updated ZIP archive.
-ARCHDATANORD
Specifies the Unordered parameter of the IDCAMS
Define Cluster command used to create the data
component of a new or updated ZIP archive.
-ARCHDATANRUS
Specifies the Noreuse parameter of the IDCAMS
Define Cluster command used to create the data
component of a new or updated ZIP archive.
VSAM Specific PKZIP Commands
205
206
-ARCHDATANWCK
Specifies the Nowritecheck parameter of the IDCAMS
Define Cluster command used to create the data
component of a new or updated ZIP archive.
-ARCHDATAORD
Specifies the Ordered parameter of the IDCAMS
Define Cluster command used to create the data
component of a new or updated ZIP archive.
-ARCHDATAOWNER
Specifies the Owner parameter of the IDCAMS Define
Cluster command used to create the data component
of a new or updated ZIP archive.
-ARCHDATAPRI
Specifies the primary space allocation used in the
IDCAMS Define Cluster command used to create the
data component of a new or updated ZIP archive.
-ARCHDATARUS
Specifies the Reuse parameter of the IDCAMS Define
Cluster command used to create the data component
of a new or updated ZIP archive.
-ARCHDATASEC
Specifies the secondary space allocation used in the
IDCAMS Define Cluster command used to create the
data component of a new or updated ZIP archive.
-ARCHDATASHR
Specifies the Shareoptions parameter of the IDCAMS
Define Cluster command used to create the data
component of a new or updated ZIP archive.
-ARCHDATASPACE
Specifies the space allocation type used in the
IDCAMS Define Cluster command used to create the
data component of a new or updated ZIP archive.
-ARCHDATAVOL
Specifies the Volumes parameter of the IDCAMS
Define Cluster command used to create the data
component of a new or updated ZIP archive.
-ARCHDATAWCK
Specifies the Writecheck parameter of the IDCAMS
Define Cluster command used to create the data
component of a new or updated ZIP archive.
PKZIP for MVS: User Reference
T4ASI025-00-00
VSAM Cluster Level commands
The following commands are used when specifying the cluster level
attributes of the VSAM dataset to be created.
-ARCHBUFSPACE
The -ARCHBUFSPACE command is used to help create a new or
updated VSAM ZIP archive. It has the same meaning and restrictions as
the BUFFERSPACE clause of the IDCAMS DEFINE CLUSTER
command.
The full syntax for the command is:
-ARCHBUFSPACE(<size>)
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-ARCHCATALOG
The -ARCHCATALOG command is used to help create a new or updated
VSAM ZIP archive. It has the same meaning and restrictions as the
CATALOG clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHCATALOG(<catalog>[/password])
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-ARCHCISZ
The -ARCHCISZ command is used to help create a new or updated
VSAM ZIP archive. It has the same meaning and restrictions as the
CONTROLINTERVALSIZE clause of the IDCAMS DEFINE CLUSTER
command.
The full syntax for the command is:
-ARCHCISZ(<size>)
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
T4ASI025-00-00
VSAM Specific PKZIP Commands
207
-ARCHEEXT
The -ARCHEEXT command is used to help create a new or updated
VSAM ZIP archive. It has the same meaning and restrictions as the
EXCEPTIONEXIT clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHEEXT(<entrypoint>)
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-ARCHERASE
The -ARCHERASE command is used to help create a new or updated
VSAM ZIP archive. It has the same meaning and restrictions as the
ERASE clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHERASE
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-ARCHFILE
The -ARCHFILE command is used to help create a new or updated
VSAM ZIP archive. It has the same meaning and restrictions as the FILE
clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHFILE(<ddname>)
If this command is specified then a suitable DD statement should also be
specified in the JCL. For more details, please refer to the FILE clause of
the IDCAMS DEFINE CLUSTER command in the IBM manual Access
Method Services.
208
PKZIP for MVS: User Reference
T4ASI025-00-00
-ARCHFOR
The -ARCHFOR command is used to help create a new or updated
VSAM ZIP archive. It has the same meaning and restrictions as the FOR
clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHFOR(<days>)
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
Problems may occur if you try to update a VSAM ZIP archive created with
the -ARCHFOR command. To update a ZIP archive, PKZIP first
generates a new ZIP archive and then deletes the old ZIP archive. If the
-ARCHFOR command was used to generate the original ZIP archive then
the delete process may fail as the retention period for the VSAM ZIP
archive may not have been satisfied.
-ARCHFREECA
The -ARCHFREECA command is used to help create a new or updated
VSAM ZIP archive. It has the same meaning and restrictions as the
CA-percent attribute of the FREESPACE clause of the IDCAMS DEFINE
CLUSTER command.
The full syntax for the command is:
-ARCHFREECA(<CA-percent>)
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-ARCHFREECI
The -ARCHFREECI command is used to help create a new or updated
VSAM ZIP archive. It has the same meaning and restrictions as the
CI-percent attribute of the FREESPACE clause of the IDCAMS DEFINE
CLUSTER command.
The full syntax for the command is:
-ARCHFREECI(<CI-percent>)
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
T4ASI025-00-00
VSAM Specific PKZIP Commands
209
-ARCHNOERASE
The -ARCHNOERASE command is used to help create a new or updated
VSAM ZIP archive. It has the same meaning and restrictions as the
NOERASE clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHNOERASE
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-ARCHNONSPANNED
The -ARCHNONSPANNED command is used to help create a new or
updated VSAM ZIP archive. It has the same meaning and restrictions as
the NONSPANNED clause of the IDCAMS DEFINE CLUSTER
command.
The full syntax for the command is:
-ARCHNONSPANNED
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-ARCHNOREUSE
The -ARCHNOREUSE command is used to help create a new or
updated VSAM ZIP archive. It has the same meaning and restrictions as
the NOREUSE clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHNOREUSE
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-ARCHNOWRITECHK
The -ARCHNOWRITECHK command is used to help create a new or
updated VSAM ZIP archive. It has the same meaning and restrictions as
the NOWRITECHECK clause of the IDCAMS DEFINE CLUSTER
command.
The full syntax for the command is:
-ARCHNOWRITECHK
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
210
PKZIP for MVS: User Reference
T4ASI025-00-00
-ARCHOWNER
The -ARCHOWNER command is used to help create a new or updated
VSAM ZIP archive. It has the same meaning and restrictions as the
OWNER clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHOWNER(<owner>)
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-ARCHRECORDSIZE
The -ARCHRECORDSIZE command is used to specify the average and
maximum lengths, in bytes, of the data records in a new or updated
VSAM ZIP archive.
The full syntax for the command is:
-ARCHRECORDSIZE(average maximum)
where average specifies the average length, in bytes, of each data record
and maximum specifies the maximum length, in bytes, of any data record
In fact average and maximum have the same meanings and restrictions
as in the RECORDSIZE clause of the IDCAMS DEFINE CLUSTER
command.
If this command is not specified then PKZIP will default to (4000 4000).
Note:
T4ASI025-00-00

It is recommended that the average and maximum record lengths be
specified as the same value, because PKZIP processing typically
writes full length records.

As PKZIP and PKUNZIP performance can be affected by the record
size specifying a large value may improve performance.
VSAM Specific PKZIP Commands
211
-ARCHREUSE
The -ARCHREUSE command is used to help create a new or updated
VSAM ZIP archive. It has the same meaning and restrictions as the
REUSE clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHREUSE
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-ARCHSHR
The -ARCHSHR command is used to help create a new or updated
VSAM ZIP archive. It has the same meaning and restrictions as the
SHAREOPTIONS clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHSHR(<crossregion>[<crosssystem>])
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-ARCHSPACE
The -ARCHSPACE command is used to specify the type of data units to
be used (at the cluster level) for allocating a new Zip archive.
The full syntax for this command is:
-ARCHSPACE(TRK|CYL|REC|MB|KB)
where the type of data unit to be used for allocating the new archive is
specified by one of the following parameters:
TRK
The archive is to be allocated by tracks. This is the default value
assigned for the type of data unit if -ARCHSPACE is not specified.
CYL
The archive is to be allocated by cylinders.
REC
The archive is to be allocated by records.
MB
The archive is to be allocated by megabytes. This option may only
be used with ICF catalogs.
KB
The archive is to be allocated by kilobytes. This option may only be
used with ICF catalogs.
By default, both the primary and secondary extents are allocated at a size
of 100 of these data units. The -ARCHPRIMARY or -ARCHSECONDARY
commands can be used to change this value.
212
PKZIP for MVS: User Reference
T4ASI025-00-00
Note:

The -ARCHDATASPACE command provides the ability to specify the
allocation parameter for the Data component of the VSAM cluster. If
-ARCHDATASPACE is specified, then the value specified or
defaulted in a previous -ARCHSPACE command will be ignored, so
no cluster level allocation will be defined for the file to be created.
-ARCHSPANNED
The -ARCHSPANNED command is used to help create a new or updated
VSAM ZIP archive. It has the same meaning and restrictions as the
SPANNED clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHSPANNED
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-ARCHTO
The -ARCHTO command is used to help create a new or updated VSAM
ZIP archive. It has the same meaning and restrictions as the TO clause
of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHTO(<date>)
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
Problems may occur if you try to update a VSAM ZIP archive created with
the -ARCHTO command. To update a ZIP archive, PKZIP first generates
a new ZIP archive and then deletes the old ZIP archive. If the -ARCHTO
command was used to generate the original ZIP archive then the delete
process may fail as the retention period for the VSAM ZIP archive may
not have been satisfied.
T4ASI025-00-00
VSAM Specific PKZIP Commands
213
-ARCHWRITECHK
The -ARCHWRITECHK command is used to help create a new or
updated VSAM ZIP archive. It has the same meaning and restrictions as
the ARCHWRITECHECK clause of the IDCAMS DEFINE CLUSTER
command.
The full syntax for the command is:
-ARCHWRITECHK
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
214
PKZIP for MVS: User Reference
T4ASI025-00-00
VSAM Data Level commands
These commands provide the ability to specify options for the Data
component of the VSAM cluster to be defined. These options are similar
to the options that can be specified at the cluster level using the –ARCH
commands listed in the previous section. Given that these options have
similar results, it is advisable to consistently use either cluster level or
data level commands. As some cluster level commands are common to
both VSAM and non VSAM processing, with the same meaning, using
cluster level commands could make PKZIP easier to use. In general,
unless there is good reason, Data level commands should not be used.
-ARCHDATACISZ
The -ARCHDATACISZ command is used to help create the data
component of a new or updated VSAM ZIP archive. It has the same
meaning and restrictions as the CONTROLINTERVALSIZE clause as
specified in the DATA portion of the IDCAMS DEFINE CLUSTER
command.
The full syntax for the command is:
-ARCHDATACISZ(<size>)
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-ARCHDATAEEXT
The -ARCHDATAEEXT command is used to help create the data
component of a new or updated VSAM ZIP archive. It has the same
meaning and restrictions as the EXCEPTIONEXIT clause as specified in
the DATA portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHDATAEEXT(<mname>)
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
T4ASI025-00-00
VSAM Specific PKZIP Commands
215
-ARCHDATAFILE
The -ARCHDATAFILE command is used to help create the data
component of a new or updated VSAM ZIP archive. It has the same
meaning and restrictions as the FILE clause as specified in the DATA
portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHDATAFILE(<ddname>)
If this command is specified then a suitable DD statement should also be
specified in the JCL. For more details, please refer to the FILE clause of
the IDCAMS DEFINE CLUSTER command in the IBM manual Access
Method Services.
-ARCHDATANAME
The -ARCHDATANAME command is used to help create the data
component of a new or updated VSAM ZIP archive. It has the same
meaning and restrictions as the NAME clause as specified in the DATA
portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHDATANAME(<name>)
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-ARCHDATANORD
The -ARCHDATANORD command is used to help create the data
component of a new or updated VSAM ZIP archive. It has the same
meaning and restrictions as the UNORDERED clause as specified in the
DATA portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHDATANORD
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
216
PKZIP for MVS: User Reference
T4ASI025-00-00
-ARCHDATANRUS
The -ARCHDATANRUS command is used to help create the data
component of a new or updated VSAM ZIP archive. It has the same
meaning and restrictions as the NOREUSE clause as specified in the
DATA portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHDATANRUS
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-ARCHDATANWCK
The -ARCHDATANWCK command is used to help create the data
component of a new or updated VSAM ZIP archive. It has the same
meaning and restrictions as the NOWRITECHECK clause as specified in
the DATA portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHDATANWCK
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-ARCHDATAORD
The -ARCHDATAORD command is used to help create the data
component of a new or updated VSAM ZIP archive. It has the same
meaning and restrictions as the ORDERED clause as specified in the
DATA portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHDATAORD
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
T4ASI025-00-00
VSAM Specific PKZIP Commands
217
-ARCHDATAOWNER
The -ARCHDATAOWNER command is used to help create the data
component of a new or updated VSAM ZIP archive. It has the same
meaning and restrictions as the OWNER clause as specified in the DATA
portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHDATAOWNER(<ownerid>)
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-ARCHDATAPRI
The -ARCHDATAPRI command is used to help create the data
component of a new or updated VSAM ZIP archive. It has the same
meaning and restrictions as the primary attribute of the space clauses as
specified in the DATA portion of the IDCAMS DEFINE CLUSTER
command.
The full syntax for the command is:
-ARCHDATAPRI(<primary>)
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
Note:

This value will only be used if the –ARCHDATASPACE command
has also been specified.
-ARCHDATARUS
The -ARCHDATARUS command is used to help create the data
component of a new or updated VSAM ZIP archive. It has the same
meaning and restrictions as the REUSE clause as specified in the DATA
portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHDATARUS
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
218
PKZIP for MVS: User Reference
T4ASI025-00-00
-ARCHDATASEC
The -ARCHDATASEC command is used to help create the data
component of a new or updated VSAM ZIP archive. It has the same
meaning and restrictions as the secondary attribute of the space clauses
as specified in the DATA portion of the IDCAMS DEFINE CLUSTER
command.
The full syntax for the command is:
-ARCHDATASEC(<secondary>)
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
Note:

This value will only be used if both the –ARCHDATASPACE and
-ARCHDATAPRI commands have also been specified.
-ARCHDATASHR
The -ARCHDATASHR command is used to help create the data
component of a new or updated VSAM ZIP archive. It has the same
meaning and restrictions as the SHAREOPTIONS clause as specified in
the DATA portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHDATASHR(<crossregion>[ crosssystem])
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-ARCHDATASPACE
The -ARCHDATASPACE command is used to help create the data
component of a new or updated VSAM ZIP archive. It has the same
meaning and restrictions as the associated space clauses as specified in
the DATA portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for this command is:
-ARCHDATASPACE(TRK|CYL|REC|MB|KB)
where the type of data unit to be used for allocating the data component
of the new archive is specified by one of the following parameters:
TRK
T4ASI025-00-00
The Data component is to be allocated by tracks. This is the default
value assigned for the type of data unit if -ARCHSPACE is not
specified.
VSAM Specific PKZIP Commands
219
CYL
The Data component is to be allocated by cylinders.
REC
The Data component is to be allocated by records.
MB
The Data component is to be allocated by megabytes. This option
may only be used with ICF catalogs.
KB
The Data component is to be allocated by kilobytes. This option may
only be used with ICF catalogs.
There is no default for this command – it is only used if specified.
Additionally, there is no default value for the primary and secondary
extents of the Data component. If this command is used,
-ARCHDATAPRI and -ARCHDATASEC commands must be used to set
primary and secondary extent values.
Note:

The -ARCHSPACE command provides the ability to specify the
allocation parameter at the cluster level of the VSAM cluster. If –
ARCHSPACE is specified, then the value specified or defaulted in
any preceding –ARCHDATASPACE command will be ignored, so
no data level allocation will be defined for the file to be created and
the data level allocation may be defaulted by the IDCAMS DEFINE
CLUSTER command.
-ARCHDATAVOL
The -ARCHDATAVOL command is used to help create the data
component of a new or updated VSAM ZIP archive. It has the same
meaning and restrictions as the VOLUMES clause as specified in the
DATA portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHDATAVOL(<volser>[ volser...])
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command. Up to 31 <volser> volume
identifiers may be specified.
220
PKZIP for MVS: User Reference
T4ASI025-00-00
-ARCHDATAWCK
The -ARCHDATAWCK command is used to help create the data
component of a new or updated VSAM ZIP archive. It has the same
meaning and restrictions as the WRITECHECK clause as specified in the
DATA portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-ARCHDATAWCK
If this command is not specified, then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
T4ASI025-00-00
VSAM Specific PKZIP Commands
221
Chapter 23. PKUNZIP Commands
Commands given to the PKUNZIP program are described in detail
throughout this chapter with a summary of the available commands given
first.
PKUNZIP can perform various actions according to one of the following
commands:
[ -EXTRACT | -TEST | -VIEW ]
Each of the actions requires a ZIP archive to process so the
-ARCHIVE(<ZIP dataset name>)
command must always be specified.
-EXTRACT is the default action if none of the above actions are
specified. The -EXTRACT function extracts and decompresses files from
the specified ZIP archive.
For details of how to specify commands for processing by PKUNZIP (e.g.
SYSIN, PARM parameter) please refer to Chapter 14. Command Input.
File Selections
Where a "-" character is placed in front of a sequence of characters, this
is taken to be a command for processing by PKUNZIP. If no "-" character
is found at the start of a sequence of characters, the characters are taken
to be the name of a file for extraction from a ZIP archive. This string of
characters in the command input, not preceded by a "-" character, is
known as a "file selection".
If no file selection is specified then PKUNZIP will attempt to extract all the
files from the ZIP archive.
VSAM commands
There are a large number of commands available specifically to extract
new VSAM datasets, they are summarised and described in Chapter 24.
VSAM Specific PKUNZIP Commands.
Licensing
Separate ‘file handler’ licenses are required to process sequential, PDS,
VSAM and magnetic tape/cartridge files. These licenses also apply to
the archives created. For example, the VSAM file handler license is
required to write VSAM ZIP files and to read a VSAM archive. See
Appendix B. Licensing Guide for more details.
T4ASI025-00-00
PKUNZIP Commands
223
Summary of general PKUNZIP commands
The following commands are available in this release of PKUNZIP.
224
Command
Description
<dataset name>
Defines the name of a dataset which should be
extracted from the ZIP archive. Wildcards can be
used to define several datasets.
-ALIASMEMBER
Specifies that PDS Alias attributes found in the
archive will be used to create Alias entries in the PDS
directory.
-ARCHINDD
Specifies the DD name which references a ZIP
archive to be read in by PKUNZIP.
-ARCHIVE
Specifies the ZIP archive which the PKUNZIP
program should examine or use for selecting files to
extract. This is a required command for the PKUNZIP
program.
-BINARY
Specifies that files selected for extraction are binary
files, and that no translation should be performed on
these files.
-CACHEMEMORY
Specifies the amount of memory to be assigned to
PKZIP's internal caching mechanisms.
-CNVEXT
Specifies how extracted files whose filenames
include file extensions should be treated.
-DELIM
Specifies the delimiter characters that separate each
text record.
-ECHO
Specifies that a copy of PKUNZIP commands should
be output to the message dataset.
-EXTRACT
Specifies that the selected files are to be extracted
from a ZIP archive. This is the default action for the
PKUNZIP program.
- FILEPROCERR
Indicates whether file processing errors should
terminate PKZIP processing.
-FTRAN
Specifies the translation table to be used for
translating file names, comments and control data
between the character set used in the ZIP archive,
and that used in the external environment.
-HIERARCHY
Specifies that the full dataset component hierarchy
should be used when converting a filename between
ZIP archive format and MVS format. This is the
default option for PKUNZIP.
-HLQ
Specifies that the given high level components of the
dataset name should be replaced with a new set of
high level components during extraction.
-INSERTMEMBER
Specifies that files can be added to an existing PDS
during extraction.
PKZIP for MVS: User Reference
T4ASI025-00-00
T4ASI025-00-00
-MAKEPDS
Specifies that ZIP files should be extracted as PDS
members.
-MAKESEQ
Specifies that ZIP files should be extracted as
Sequential datasets.
-MAKEVSAM
Specifies that ZIP files should be extracted as VSAM
files.
-NOALIASMEMBER
Specifies that Alias attributes found in the archive (for
PDS members) will be ignored.
-NOATTRIB
Specifies that the stored file attributes should not be
used when creating a new extracted dataset.
-NOCRLF
Specifies that extracted text files without internal
delimiters are formatted using the record size of the
dataset into which the file is being extracted.
-NOHIERARCHY
Specifies that only the last component of the dataset
component hierarchy should be used when
converting a filename between ZIP archive format
and MVS format.
-NOSYSIN
Requests that PKUNZIP does not use the SYSIN
dataset for commands.
-OUTBLKSIZ
Specifies the block size to be used for a dataset
created by decompression.
-OUTDCLASS
Specifies the DFSMS data class to be used for a
dataset created by decompression.
-OUTDD
Specifies a DD name which references the dataset to
which ZIP files should be extracted.
-OUTDIRBLKS
Specifies the number of directory blocks to be used
for a new extracted PDS.
-OUTLRL
Specifies the logical record length to be used for a
dataset created by decompression.
-OUTMCLASS
Specifies the DFSMS management class to be used
for a dataset created by decompression.
-OUTNORLSE
Specifies that free space should not be released
when extracted datasets are deallocated.
-OUTPRIMARY
Specifies the number of space units to be used in the
primary partition of a dataset created by
decompression.
-OUTRLSE
Specifies that free space should be released when
extracted datasets are deallocated.
-OUTSCLASS
Specifies the DFSMS storage class to be used for a
dataset created by decompression.
-OUTSECONDARY
Specifies the number of space units to be used in the
secondary partition of a dataset created by
decompression.
-OUTSPACE
Specifies how space is to be allocated for a dataset
created by decompression.
PKUNZIP Commands
225
226
-OUTTYPE
Specifies the record format for a dataset created by
decompression.
-OUTUNIT
Specifies the unit to be used for allocation of a
dataset created by decompression.
-OUTVOL
Specifies the volume onto which a dataset created by
decompression should be placed.
-OVERWRITE
Specifies that if an extracted dataset or file has the
same name as an existing dataset then the existing
dataset can be overwritten.
-PAD
Specifies a character to be used for padding records
decompressed into a fixed length record dataset.
-PASSWORD
Specifies a password to be used for extracting
encrypted files from the specified archive.
-TAPETODISK
Specifies that Cartridge based archives should be
copied to a temporary disk file for processing.
-TEMPBLKSIZ
Specifies the block size to be used for a temporary
ZIP dataset.
-TEMPDCLASS
Specifies the DFSMS data class to be used for a
temporary ZIP dataset.
-TEMPPRIMARY
Specifies the number of space units to be used in the
primary partition of a temporary ZIP dataset.
-TEMPSCLASS
Specifies the DFSMS storage class to be used for a
temporary ZIP dataset.
-TEMPSECONDARY
Specifies the number of space units to be used in the
secondary partition of a temporary ZIP dataset.
-TEMPSPACE
Specifies how space is to be allocated for a
temporary ZIP dataset.
-TEMPTYPE
Specifies the record format for a temporary ZIP
dataset.
-TEMPUNIT
Specifies the unit to be used for allocation of a
temporary ZIP dataset.
-TEMPVOL
Specifies the volume onto which a temporary ZIP
dataset should be placed.
-TERM
Specifies the terminator characters to be removed
from the end of file.
-TEST
Test the specified datasets within the ZIP archive for
integrity.
-TEXT
Specifies that files selected for extraction are text
files, and should be translated from the internal
character set to the external character set, after
decompression, using the translation table specified
or defaulted.
-TRAN
Specifies the translation table to be used for
translating data between the character set to be used
in the external environment and the character set to
be used in the ZIP archive.
PKZIP for MVS: User Reference
T4ASI025-00-00
T4ASI025-00-00
-VIEW
Output details of the files selected from the ZIP
archive to the SYSPRINT dataset.
-ZDW
Specifies that files selected for extraction contain
ZDWs to be used for specifying record lengths on
decompression.
-ZIPCUR
Specifies a PDS dataset to which PKUNZIP can
extract members when no path is stored in the ZIP
archive or when the path has been dropped by the –
NOHIERARCHY command.
PKUNZIP Commands
227
General PKUNZIP commands
<dataset name>
This command, which is identified by not having a "-" character at the
start, is used to identify a file, or set of files, within the ZIP archive. The
processing that is to be performed on the selected files is determined by
the other commands which are input, or defaulted.
The dataset name can be specified with or without the path names stored
in the ZIP archive, and may be specified in either MVS format, or in
MS-DOS and UNIX formats. In addition, wildcard characters can be
included to identify multiple files. File extensions, as used in MS-DOS
and UNIX systems, can also be used to specify files within the archive,
but are not necessarily used as part of the name of the extracted file as
an MVS dataset.
Note that file and path names are stored in a ZIP archive in UNIX format.
The processing described below will attempt to match the dataset name
specified in the parameters with the stored file and path names in UNIX
format.
MVS format filenames
The following is the main syntax for specifying a dataset or file name for
decompression from a ZIP archive.
[<dataset component>][.<dataset component>][...][(member1)]
This syntax specifies a general dataset, with an indefinite number of
levels of component. Where this dataset identifies a PDS, one or more
members may also be specified.
Any dataset component or member name may have wildcards as part of
its contents. Three wildcards are supported:
?
is used to identify any single character.
This wildcard DOES NOT span levels of dataset component (see
below)
*
is used to identify a sequence of zero or more characters to be
matched.
This wildcard DOES NOT span levels of dataset component (see
below)
**
is used to identify a sequence of zero or more characters to be
matched.
This wildcard CAN span levels of dataset component (see below)
Note that the * and ? wildcards cannot span dataset components
whereas the ** wildcard can span dataset components.
For example TJB.* would find the ZIP file
TJB/SET1
228
PKZIP for MVS: User Reference
T4ASI025-00-00
but would not find
TJB/SET1/ITEM1
Whereas TJB.** would find both ZIP files
TJB/SET1
TJB/SET1/ITEM1
The * and ** wildcards provide the user with extra flexibility for finding
datasets.
For example TJB.*.SOURCE
would find the ZIP file
TJB/BASE25/SOURCE
but not
TJB/BASE25/UPDATED/SOURCE
Whereas TJB.**.SOURCE
would find both ZIP files
TJB/BASE25/SOURCE
TJB/BASE25/UPDATED/SOURCE
Should only a single component or member name be used to identify a
file, the ZIPCUR statement, if present, will be used to identify a PDS to
which that file should be extracted as a member. If ZIPCUR is not
present then the component will be interpreted as a single high level
qualifier.
MS-DOS and UNIX format filenames
In addition to the main MVS syntax, the following syntax is also
supported. This may help the user when decompressing a ZIP archive
from another platform.
“[pathname][/pathname]...[/]filename[.ext]”
Note that the “/” path separators may also be specified using the “\”
character, to make it compatible with MS-DOS filenames. When
converting the filenames to MVS format, the path separators are
interpreted as “.” characters.
The lowest component (which may be the filename or extension name,
depending on the CNVEXT setting), may be specified to be a PDS
member by using the MAKEPDS command.
For PKZIP for MVS, the same wildcard characters are available for MVS
as for MSDOS and UNIX.
T4ASI025-00-00
PKUNZIP Commands
229
Default dataset names
If no <dataset name> is input to PKUNZIP a default value of ** is used.
The ** file selection will select all files within the archive.
-ALIASMEMBER
The -ALIASMEMBER command is used to indicate that Alias attributes
that exist for PDS members being recreated should be used to create
Alias entries in the directory.
See also –NOALIASMEMBER.
-ARCHINDD
The -ARCHINDD command is used to specify the ZIP archive to be read
in by PKUNZIP.
The full syntax for this command is:
-ARCHINDD(<ddname>)
where <ddname> refers to a DD statement in this job step.
For example, to view an existing archive on Tape:
//VIEW
EXEC PGM=PKUNZIP,REGION=2M
//SYSPRINT DD SYSOUT=*
//INPUT
DD DSN=MY.ARCHIVE.ZIP,
//
UNIT=CART,DISP=SHR,
//
DCB=(RECFM=U,LRECL=6160,BLKSIZE=6160,DSORG=PS),
//
LABEL=(1,NL,EXPDT=99365),VOL=SER=ARCH01
//SYSIN
DD *
-ECHO
–ARCHINDD(INPUT)
-VIEW
/*
This command is typically used for GDG and Tape processing. Full
details of this processing can found in Chapter 6. Processing Sequential
Files and Chapter 9. Processing Magnetic Tapes.
-ARCHIVE
The -ARCHIVE command is used to specify the ZIP archive to be
examined by the PKUNZIP program for files to extract or view.
The full syntax for this command is:
-ARCHIVE(<ZIP dataset name>)
where <ZIP dataset name> is the full MVS name of the sequential
dataset, PDS member or VSAM dataset for the ZIP archive.
230
PKZIP for MVS: User Reference
T4ASI025-00-00
There is no default value for the -ARCHIVE command, and it must
always be specified, unless the ZIP archive is specified using the –
ARCHINDD command.
Note:

PKUNZIP processing will perform a SYSTEM ENQ using this name
as the Resource (minor) Name and PKZIP as the Queue (major)
name. This ENQ will prevent PKZIP tasks in the same system from
using the archive while this task is reading it. If required, the scope
of this ENQ should be changed to SYSTEMS using GRS RNL (or
similar) processing.
-ATTRIB
The -ATTRIB command is used to specify that the stored file attributes
for a ZIP file should be used when creating a new extracted dataset.
This is the default setting. Using this, PKUNZIP will extract the stored file
attributes for a ZIP file (if they exist) to create a new extracted dataset.
File attributes that are suitable for this use are stored by PKZIP for MVS
processing and other products (e.g. PKZIP for VM). If no attributes are
retained in the archive, or some attributes are missing, the required
dataset attributes should be specified using -OUT commands.
See also –NOATTRIB.
-BINARY
This command is used to determine how a selected file is extracted. If
this command is used, PKUNZIP will translate the extracted file as a
binary file. If neither this command nor the -TEXT command is used, the
file will be translated as the type of file by which it is marked in the file
information (refer to the -VIEW command later in this chapter, under the
DETAIL option, for more details of this). If a file is marked as a binary file,
it will be extracted as if this command were given.
A binary file is stored in a ZIP archive as a stream of binary characters,
without record delimiters.
When a file is decompressed using the -BINARY command, PKUNZIP
will perform no translation on the contents. It will extract the file's records
to the output file using the maximum record size defined for the output
file. If the last record does not completely fill a record in a fixed record
length file, it is expanded with binary zero characters.
-CACHEMEMORY
This command requires the HyperZIP license, please refer to Appendix
B. Licensing Guide for more details.
T4ASI025-00-00
PKUNZIP Commands
231
This command is used to specify the amount of memory to be assigned
to PKUNZIP's internal caching mechanisms. Increasing the value of
-CACHEMEMORY will increase the amount of virtual memory used by
PKUNZIP and may reduce the I/O activity to the archive. A large
-CACHEMEMORY value should reduce the elapsed time for
decompression processes.
PKUNZIP may use multiple caches to perform its processing, so the
amount of memory used may vary according to the number and types of
files being processed.
The full syntax for this command is:
-CACHEMEMORY(<bytes>)
where <bytes> specifies the total number of bytes to be assigned to the
caches used in PKUNZIP. For example, use the following statement to
specify 0.50Mb:
-CACHEMEMORY(500000)
The minimum cache size recommended is 64000, the maximum value is
231-1. Generally, decompressing larger files will benefit from a larger
-CACHEMEMORY value.
If the -CACHEMEMORY command is not specified or the performance
license is not present, then the command value will default to 0 and
caching will not be performed.
Additional information describing -CACHEMEMORY is documented in
Chapter 13. Performance.
Warning: A large -CACHEMEMORY value, for example 100000000, will
cause PKUNZIP to use a large amount of virtual memory. If a large value
is coded and large files are being decompressed then it is vitally
important that your site has sufficient storage and/or Page Datasets to
support PKUNZIP's virtual memory requests. A shortage of storage
and/or Page Datasets can have a severe effect on an MVS system so
discuss your requirements with the appropriate technical support people
before trying this option with a large value.
-CNVEXT
The -CNVEXT (Convert Extension) command is used to specify how to
translate filenames which have file extensions when a file is extracted
from a ZIP archive.
The full syntax for this command is:
-CNVEXT(DROP|SUFFIX|NAMEFILE)
where the extension conversion to be used for converting filename
extensions is specified by one of the following parameters:
232
PKZIP for MVS: User Reference
T4ASI025-00-00
DROP
The file extension is dropped, so that the last dataset component
(the member name if extracting to a PDS) created is just the last
component of the filename held in the ZIP archive. This is the
default value for the -CNVEXT command.
SUFFIX
The file extension is suffixed to the last component of the
filename held in the ZIP archive to form the last dataset
component (the member name if extracting to a PDS). If this
name is more than 8 characters long, it is truncated to 8
characters.
NAMEFILE
The file extension is used as the last dataset component (the
member name if extracting to a PDS). If no file extension exists,
the last component of the filename held in the ZIP archive is
used.
If no -CNVEXT command is specified when extracting a file, PKUNZIP
will use the default conversion method of DROP on each file.
-DELIM
The -DELIM command is used when decompressing a file as text. The
command specifies a delimiter that terminates each record (except for
the last) when a file is being decompressed. This delimiter is removed
from the data and the preceding characters are processed as one record.
The last record in the file is suffixed by a file terminator as defined by the
-TERM command. The -DELIM command is ignored when a file is
decompressed as binary.
The full syntax for this command is:
-DELIM(<delimiter characters>)
where <delimiter characters> specifies the character(s) that indicate the
end of each text file record (except for the last) that is decompressed.
0-4 <delimiter characters> may be specified, each character must take
one of the following values:
CR
The record delimiter includes the ASCII carriage return character
(hexadecimal 0D).
CZ
The record delimiter includes the ASCII Ctrl-Z character (hexadecimal
1A).
LF
The record delimiter includes the ASCII line feed character
(hexadecimal 0A).
Any combination of these characters may be used up to a limit of 4
characters.
T4ASI025-00-00
PKUNZIP Commands
233
Note:

If no -DELIM command and no –TERM command are specified when
decompressing a text file, PKUNZIP will search for a range of
delimiters and terminators, which should correctly process files from
most system. The default processing should be used unless the data
is known to contain characters that are not handled correctly by the
default processing.

The default values that PKUNZIP will search if both –DELIM and –
TERM are not specified are:

DELIM values of CRLFCZ, LFCRCZ, CRLF, LFCR, CRCZ,
LFCZ, CR and LF.

TERM default values as specified in the –TERM command.

If either a DELIM or TERM command is specified, then the
character(s) specified or defaulted by both commands will be used
in the search process.

If a –TERM command is specified but no –DELIM command is
specified, then the default delimiter is CRLF.

The usual delimiter used for transfers from MS-DOS systems is
CRLF, and the usual delimiter used for transfers to UNIX systems is
LF.

To ensure that the output is correct, the same –DELIM command
that was used on the original compression should be used when
decompressing a file created by PKZIP for MVS.
-ECHO
The -ECHO command is used to display commands input to PKUNZIP
on the output message dataset.
When this command is used, PKUNZIP will copy the command line that
contains the -ECHO command and all subsequent command lines (from
the configuration file, PARM or SYSIN) to the output message dataset.
By default, the –ECHO facility is activated. Thus, the –ECHO command
need only be used if the –NOECHO command has been used to
suppress the output of preceding commands. In this circumstance, the
command line that contains the -ECHO command may be processed
before the line is displayed, so any errors in this line may be output
before the line is displayed.
See also –NOECHO.
234
PKZIP for MVS: User Reference
T4ASI025-00-00
-EXTRACT command
The -EXTRACT command is used to specify that the files specified by
the <dataset name> command should be extracted from the ZIP archive.
This is the default command for the PKUNZIP program, i.e. if no other
commands are specified, an -EXTRACT operation will be performed.
Files which are extracted are decompressed using the method by which
they were compressed, unless this is specifically overridden by use of the
-BINARY, -TEXT or -ZDW commands. They are then written, by default,
to sequential datasets, the names of which are determined by the
processing options in force, together with the filenames held in the ZIP
archive.
If there is no stored pathname, an extracted file is written to a PDS
member within the current dataset, determined by the ZIPCUR
command. The member name is the same as that of the filename under
which the file is stored in the ZIP archive, as modified by the -CNVEXT
command.
When extracting to an existing PDS you must specify -INSERTMEMBER
to add or -OVERWRITE to update members within that PDS.
The -HLQ and –MAKE* commands can also be used for changing the
name and the type of dataset to which an extracted file is written.
The –EXTRACT commands reads an existing Zip Archive, so requires
that either the –ARCHIVE command or the –ARCHINDD command be
specified.
-FILEPROCERR
The -FILEPROCERR option is used to specify whether processing errors
will terminate PKUNZIP processing, or if the processing will attempt to
continue.
PKUNZIP can process a number of files the most important of which are
the output files. If an I/O related problem occurs (e.g. file full) with one of
these files, PKUNZIP has the option of:

continuing with other files, but not processing the file which had the
error

stopping the processing.
These options are specified as follows:
-FILEPROCERR(TERMINATE|TOLERATE)
T4ASI025-00-00
TERMINATE
Stop processing if an error is detected.
TOLERATE
Allow processing to continue with other files after a file error.
PKUNZIP Commands
235
Note:

When file errors are TOLERATEd, the PKUNZIP job will complete
with an error return code and messages indicating the problem. This
command is distinguished from -FILESELERR because this sort of
error occurs after the file extraction begins.
-FILESELERR
The -FILESELERR option is used to specify whether selection errors will
terminate PKUNZIP processing, or if the processing will attempt to
continue selecting other files.
Selection is the first phase of PKUNZIP processing, where the files that
have been selected are checked to verify that it is possible for PKUNZIP
to process these files. If PKUNZIP detects a problem in this process
(e.g. file exists and -OVERWRITE has not been specified), then
PKUNZIP has the option of:

continuing with other files, but not processing the file which had the
error

stopping the processing.
These options are specified as follows:
-FILESELERR(TERMINATE|TOLERATE)
TERMINATE
Stop processing if an error is detected.
TOLERATE
Allow processing to continue with other files after a file error.
This is the default specification.
Note:
236

When file errors are TOLERATEd, the PKUNZIP job will complete
with an error return code and messages indicating any files that had
a problem during selection.

This command is distinguished from -FILEPROCERR because a file
selection error occurs before the file extraction begins.
PKZIP for MVS: User Reference
T4ASI025-00-00
-FTRAN
The -FTRAN (File TRANslation) command is used to specify a translation
table for use with filenames, comments, and similar control information in
a ZIP archive.
The full syntax for this command is:
-FTRAN(<translation table>)
where <translation table> is the name of a loadable translation table. This
translation table may either be supplied, or may be created by yourself,
as described in the Modifying a translation table section of Chapter 16.
Translation and Translation Tables.
This command is likely to be used where the filenames or comments that
would be created by using PKUNZIP for MVS using the standard
translation tables would contain characters which would be
indecipherable, or files with filenames that are illegal on MVS systems.
See Chapter 16. Translation and Translation Tables for further
discussion of how translation tables are used.
If this command is not specified, the default translation table, ASCII, is
used.
-HIERARCHY
The -HIERARCHY command is used to specify that the full dataset
component hierarchy should be used when converting a filename
between ZIP archive format and MVS format. This is the default option
for PKUNZIP.
For example the ZIP file:
T4ZIP/BASE25/SOURCE/MEM1
could be extracted to a PDS member:
T4ZIP.BASE25.SOURCE(MEM1)
Similarly the ZIP file:
T4ZIP/MY/DATA
could be extracted to a sequential dataset:
T4ZIP.MY.DATA
See also -NOHIERARCHY.
T4ASI025-00-00
PKUNZIP Commands
237
-HLQ
The -HLQ (High Level Qualifier) command allows users to rename files
as the files are extracted from an archive. The command is used to
specify that the given high level components of the dataset name should
be replaced with a new set of high level components during extraction. A
number of –HLQ commands, each with wild cards can be used, to create
a generic conversion for the input archive files.
The various formats for this command are:
-HLQ(<ZIP file hlq>,<MVS hlq>)
-HLQ(,<MVS hlq>)
-HLQ(<ZIP file hlq>,)
-HLQ(**,<MVS name>)
Where

<ZIP file hlq> defines the high-level qualifier characters of the input
ZIP file name that are to be substituted by the <MVS hlq>. This value
can be up to 80 characters long and may specify wild characters to
assist in the matching. The wild characters that can be specified are:

‘*’ – to match any number of characters (within one high level
qualifier).

‘?’ – to match any single characters (except a ‘/’ qualifier
separator).

<MVS hlq> specifies an MVS High Level Qualifier that will be used to
create the MVS file name. This can be a maximum of 54 characters
long and should match MVS dataset naming standards.

<MVS name> specifies the associated MVS file name. This can be a
maximum of 54 characters long and should match MVS dataset
naming standards.
As shown above, either <ZIP file hlq> or <MVS hlq> (but not both) can be
left blank (see examples below). This allows partial or full dataset
components to be added or removed from an existing ZIP file name.
As shown above, ‘**’ can be specified as the first parameter of the –HLQ
command. This allows the entire ZIP file name to be replaced “blind” i.e.
without needing to know the original ZIP file name (see examples below).
Note:

238
In previous versions of PKZIP for MVS, the ‘/’ character was used to
separate the two parameters. This character is still supported, but
the ‘,’ is recommended as this is consistent with other commands
and removes confusion about the use of the ‘/’ character in the Zip
file name.
PKZIP for MVS: User Reference
T4ASI025-00-00

The HLQ command is not recommended when using –
NOHIERARCHY, -OUTDD or –ZIPCUR commands, as these
commands can also change the output dataset name used, in
potentially conflicting ways.

The HLQ command is processed after the -CNVEXT command has
been used. For example, the -CNVEXT command may cause the
removal of the ‘extension’ in the ZIP file name, in which case the
extension is not available for matching and should not be used when
specifying the <ZIP file hlq>.
Operation
The –HLQ processing for each ZIP archive file selected for extraction
proceeds as follows:

The input –HLQ commands are searched in the order specified until
a match is found with the beginning of the ZIP archive file name and
the <ZIP file hlq>.

The matched portions of the ZIP archive file name are replaced with
the <MVS hlq> (or <MVS name> when ‘**’ is specified as the <ZIP
file hlq>) to create the MVS name to be used.
Examples of HLQ
Using -HLQ(<old name>,<new name>)
Use both the old and new name to replace (part of) the archive file
name’s high level qualifier.
T4ASI025-00-00
Archive File Name
HLQ
Output File Name
T4ZIP/SRCE/TEXT
(T4ZIP,ASIZIP)
ASIZIP.SRCE.TEXT
T4ZIP/LONGNAME
(T4ZIP.LONG,ASIZIP.)
ASIZIP.NAME
T4ZIP/SRCE/TEXT
(*,NEWHLQ)
NEWHLQ.SRCE.TEXT
T4ZIP/BTEXT/CAHX
(T4ZIP.?TEXT.,NEW.)
NEW.CAHX
PKUNZIP Commands
239
Example of blank new name
A blank new name is used to suppress part of the original high level
qualifier.
Archive File Name
HLQ
Output File Name
T4ZIP/SRCE/TEXT
(T4,)
ZIP.SRCE.TEXT
Examples of blank old name
A blank old name is typically used when you want to add a new prefix
(high level qualifier) to the original file name, but can be used add
additional characters to the existing High Level Qualifier.
Archive File Name
HLQ
Output File Name
T4ZIP/SRCE/TEXT
(,OLD.)
OLD.T4ZIP.SRCE.TEXT
T4ZIP/SRCE/TEXT
(,NEW)
NEWT4ZIP.SRCE.TEXT
Note:

In this case, since the old name was blank, this -HLQ will match all
files. Any -HLQ commands subsequently entered will not be used to
convert any extracted file names.
Example of ** as an old name
An ‘**’ specified as the old name is typically used when you want to
rename the archive file, regardless of its current name.
Archive File Name
HLQ
Output File Name
T4ZIP/SRCE/TEXT
(**,NEW.FILE.NAME)
NEW.FILE.NAME
When using ** it is recommended that you extract only one file from the
archive, otherwise PKUNZIP will extract the first file and then attempt to
overwrite it with any subsequently selected files. For example to rename
ASIZIP.FIRST using the ** specify:
-ARCHIVE(ASIZIP.TRIAL.ZIP)
-OUTUNIT(SYSDA)
ASIZIP.FIRST
-HLQ(**/NEW.FILE.NAME)
240
PKZIP for MVS: User Reference
T4ASI025-00-00
Note:

In this case, this -HLQ will match all files. Any –HLQ commands
subsequently entered will not be used to convert any extracted file
names.
Example using a number of HLQ commands
The following output shows a number of HLQ commands being used
when extracting from an archive which contains the following files:
ZIPREG/EH70/BTEXT
ZIPREG/EH69/ATEXT
ZIPREG/EH71/SEQ
ZIPREG/VB.TXT
ZIPREG/EH70/PDS/ARCHCICS
ZIPREG/BTEXT/CAHX
UNZIP101I PKZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
UNZIP010I -ECHO
UNZIP010I -ARCHIVE(ZIPREG.EH70.ZIP3)
UNZIP010I -HLQ(ZIPREG.EH6*.,EH69TEXT.)
UNZIP010I -HLQ(*.EH70.,ZIPREG.EH70.OUT3.)
UNZIP010I -HLQ(ZIPREG.VB,ZIPEG.EH70.OUT4)
UNZIP010I -HLQ(ZIPREG.?TEXT.,ZIPREG.EH70.OUT2.)
UNZIP010I -HLQ(*,NEW.ZIPREG)
UNZIP609I ZIP file ZIPREG/EH70/BTEXT inflated to MVS file ZIPREG.EH70.OUT3.BTEXT
UNZIP609I ZIP file ZIPREG/EH69/ATEXT inflated to MVS file EH69TEXT.ATEXT
UNZIP609I ZIP file ZIPREG/EH71/SEQ inflated to MVS file NEW.ZIPREG.EH71.SEQ
UNZIP609I ZIP file ZIPREG/VB.TXT inflated to MVS file ZIPEG.EH70.OUT4
UNZIP609I ZIP file ZIPREG/EH70/PDS/ARCHCICS inflated to MVS file
ZIPREG.EH70.OUT3.PDS(ARCHCICS)
UNZIP609I ZIP file ZIPREG/EH70/PDS/ARCHDCM inflated to MVS file
ZIPREG.EH70.OUT3.PDS(ARCHDCM)
UNZIP609I ZIP file ZIPREG/BTEXT/CAHX inflated to MVS file ZIPREG.EH70.OUT2.CAHX
UNZIP102I PKZIP MVS
2.5
level x ending.
-INSERTMEMBER
The –INSERTMEMBER command is used to specify that an extracted file
can be added to a PDS as a new member.
By default, when extracting to an existing PDS, PKUNZIP will not add or
update members. To add a new member you must specify the –
INSERTMEMBER command, to update an existing member you must
specify the –OVERWRITE command.
-MAKEPDS
The -MAKEPDS command is used to specify that the ZIP file should be
extracted as a member of a PDS. The -MAKEPDS command will
override any stored file attributes which imply that the ZIP file is not a
member of PDS (e.g. DSORG=PS). When MAKEPDS is used, the lowest
component of a dataset name is interpreted as a PDS member name
rather than as the lowest component of a sequential dataset name.
T4ASI025-00-00
PKUNZIP Commands
241
For example the ZIP file:
T4ZIP/BASE25/SOURCE/MEM1
could be extracted to a sequential dataset:
T4ZIP.BASE25.SOURCE.MEM1
but when -MAKEPDS is specified the ZIP file would be extracted
to the PDS member:
T4ZIP.BASE25.SOURCE(MEM1)
Please note that when extracting to an existing PDS you must specify
-INSERTMEMBER or -OVERWRITE to add or update members within
that PDS.
This command requires the PKZIP PDS File Handler License, see
Appendix B. Licensing Guide for more details.
Note:

Only one of -MAKEPDS, -MAKESEQ or –MAKEVSAM can be used
in an execution of PKUNZIP.
-MAKESEQ
The -MAKESEQ command is used to specify that the ZIP file should be
extracted as a sequential file. The -MAKESEQ command will override
any stored file attributes which imply that the ZIP file is not sequential
(e.g. DSORG=PO).
If no file attributes are stored for the ZIP file then PKUNZIP will attempt to
unzip the file to a sequential dataset.
This command requires the PKZIP Sequential File Handler License, see
Appendix B. Licensing Guide for more details.
Note:

Only one of -MAKEPDS, -MAKESEQ or –MAKEVSAM can be used
in an execution of PKUNZIP.
-MAKEVSAM
The -MAKEVSAM command is used to specify that the ZIP file should be
extracted as a VSAM file. The -MAKEVSAM command will override any
stored file attributes which imply that the ZIP file is not VSAM (e.g.
DSORG=PO).
This command requires the PKZIP VSAM File Handler License, see
Appendix B. Licensing Guide for more details.
242
PKZIP for MVS: User Reference
T4ASI025-00-00
Note:

Only one of -MAKEPDS, -MAKESEQ or –MAKEVSAM can be used
in an execution of PKUNZIP.
-NOALIASMEMBER
The -NOALIASMEMBER command is used to indicate that Alias
attributes that exist for PDS members extracted should be ignored.
This is the default setting.
See also –ALIASMEMBER.
-NOATTRIB
The -NOATTRIB command is used to specify that the stored file
attributes for a ZIP file should not be used when creating a new extracted
dataset.
By default, PKUNZIP will use the stored file attributes for a ZIP file to
create a new extracted dataset. The required dataset attributes should be
specified using -OUT commands when the -NOATTRIB command is
specified.
See also –ATTRIB.
-NOCRLF
The -NOCRLF command can be used when a text file is being extracted
from a ZIP archive (see the -TEXT command section later in this chapter
for more details of extracting text files). It is used to inform PKUNZIP that
the selected files do not have any internal CR/LF/CZ characters as record
delimiters or terminators. When this command is used, PKUNZIP will use
the maximum record length of the dataset into which each file is
extracted to determine the record lengths that are output. If the last
record does not completely fill a record in a fixed record length file, it is
expanded with EBCDIC space characters (hexadecimal 40). By default
this command is not specified.
Note:

T4ASI025-00-00
Specifying this command is functionally equivalent to specifying
-DELIM() and -TERM(). Either will work but the specification of
DELIM and TERM is recommended and in a future release this
command may be removed.
PKUNZIP Commands
243
-NOECHO
The -NOECHO command is used to suppress commands input to PKZIP
from the output message dataset.
When this command is used, PKUNZIP will stop outputting the command
lines to the output message dataset.
Note that the command line that contains the -NOECHO command may
not be processed before the line is displayed, so this line may be output.
See also -ECHO.
-NOHIERARCHY
The -NOHIERARCHY command is used to specify that only the last
component of the dataset name should be used when converting a
filename between ZIP archive format and MVS format. In general another
command such as -ZIPCUR would be used also to specify the final
location of an extracted file.
For example, where -ZIPCUR specifies:
NEWZIP.ASM
the ZIP file:
T4ZIP/BASE25/SOURCE/MEM1
would be extracted to the PDS member:
NEWZIP.ASM(MEM1)
Please note that when extracting to an existing PDS you must specify
-INSERTMEMBER to add or -OVERWRITE to update members within
that PDS.
-HIERARCHY is the default option for PKUNZIP.
See also -HIERARCHY, -OVERWRITE.
-NOSYSIN
If the -NOSYSIN command is given on the PARM parameter or in the
Configuration File, then the SYSIN dataset is not opened for commands.
If the NOSYSIN command is given within the SYSIN dataset, then it will
have no effect.
The -NOSYSIN command is useful when calling PKUNZIP from another
program because it ensures that PKUNZIP will not interfere with the
SYSIN passed to the calling program.
See Chapter 15. Calling PKZIP from a Program for more details.
244
PKZIP for MVS: User Reference
T4ASI025-00-00
-OUTBLKSIZ
The -OUTBLKSIZ command is used to specify the block size to be used
for a new extracted dataset.
The full syntax for this command is:
-OUTBLKSIZ(<block size>)
where <block size> is the block size to be used for the new extracted
dataset.
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If this command is not
specified and there is no associated stored attribute, the new extracted
dataset defaults to a block size of 6160 bytes.
Note:

The default is not used when the associated SMS command
(-OUTDCLASS) is specified.

This command or the associated attribute stored in the archive will be
ignored for output files with an unblocked record format.

The value 0 may be specified to allow the system to determine an
appropriate block size for PDS or Sequential files, but this value
should not be used for record format U (OUTTYPE(U)) files, as the
system may not set an appropriate block size for this type of file.
-OUTDCLASS
The -OUTDCLASS command is used to specify the DFSMS data class to
be used for a new extracted dataset.
The full syntax for this command is:
-OUTDCLASS(<data class>)
where <data class > is the DFSMS data class to be used for placing the
new extracted dataset.
If this command is not specified, no data class is used for placing the
new extracted dataset.
When a new extracted dataset is being created, an -OUTVOL,
-OUTUNIT, -OUTDD, -OUTDCLASS, -OUTMCLASS or –OUTSCLASS
command should be used to specify the placement of the extracted
dataset.
T4ASI025-00-00
PKUNZIP Commands
245
-OUTDD
The -OUTDD command is used to specify a DD statement which
identifies a dataset to which PKZIP should attempt to extract ZIP files to.
The -OUTDD command must be used in conjunction with normal file
selections (see <dataset name> command) as the -OUTDD command
does not select files.
The full syntax of this command is:
-OUTDD(<ddname>)
where <ddname> refers to a DD statement in the job step that is
executing PKUNZIP.
Note:

Only one –OUTDD command can be specified at a time.

When using the –OUTDD command, many other UNZIP commands
are redundant. These redundant commands include the following:
Command
Rational
-HLQ
-OUTDD command tells PKUNZIP exactly where
the data should go – the specified DD will name the
output file. However the -HLQ might have some
effect on the member name of a PDS
-OUTLRL,
-OUTBLKSIZE,
-OUTTYPE
These DCB attributes must be specified on the
identified DD.
-OUTRLSE
-OUTNORLSE
The identified DD statement will determine whether
the dataset is allocated with RLSE.
-CNVEXT
As with -HLQ, the specified DD will name the
output file.
Decompressing a single sequential dataset
In these examples we have a ZIP file called MY/SEQ/DATASET in the
ZIP archive ARCHIVE.DATASET.ZIP.
To decompress a single ZIP file to a sequential dataset that already
exists:
//SEQUNZIP EXEC PGM=PKUNZIP,REGION=2M
//SYSPRINT DD SYSOUT=*
//OLDSEQ
DD DISP=OLD,DSN=DATASET.SEQ
//SYSIN
DD *
-ECHO
-ARCHIVE(ARCHIVE.DATASET.ZIP)
-OUTDD(OLDSEQ)
"MY/SEQ/DATASET"
/*
246
PKZIP for MVS: User Reference
T4ASI025-00-00
To decompress a single ZIP file to a new sequential dataset:
//SEQUNZIP EXEC PGM=PKUNZIP,REGION=2M
//SYSPRINT DD SYSOUT=*
//NEWSEQ
DD DSN=NEW.DATASET.SEQ,
//
DISP=(NEW,CATLG,DELETE),
//
DCB=(DSORG=PS,RECFM=FB,LRECL=80,BLKSIZE=6160),
//
SPACE=(TRK,(1,1)),UNIT=SYSDA,VOL=SER=TSTVOL
//SYSIN
DD *
-ECHO
-ARCHIVE(ARCHIVE.DATASET.ZIP)
-OUTDD(NEWSEQ)
"MY/SEQ/DATASET"
/*
Note:

When using -OUTDD to extract a file to a sequential dataset,
PKUNZIP assumes that the -OVERWRITE command has been
specified. PKUNZIP processing will open the specified file for output,
write the extracted data and then close the file. The actual effect on
the defined dataset may depend on the DISP parameter. For
example, DISP=MOD may append the extracted data to the file,
while DISP=OLD will cause any existing data to be overwritten. If
multiple files are selected for extraction, the same points apply, i.e.
the DISP parameter in the JCL will control whether or not previously
extracted data is overwritten or newly extracted data is appended to
the existing file.

Attributes of the output dataset, for example the DCB information,
must be specified on the DD. JCL facilities such as the use of
references to previous DD statements or existing datasets in the
DCB statement can assist in this specification.
Decompressing members to a PDS
In these examples we have ZIP files called MY/MEMBERS/DATA1,
MY/MEMBERS/DATA2 etc. in the ZIP archive ARCHIVE.DATASET.ZIP.
To decompress members to a PDS, that already exists:
//PDSUNZIP EXEC PGM=PKUNZIP,REGION=2M
//SYSPRINT DD SYSOUT=*
//OLDPDS
DD DISP=SHR,DSN=DATASET.PDS
//SYSIN
DD *
-ECHO
-ARCHIVE(ARCHIVE.DATASET.ZIP)
-OUTDD(OLDPDS)
"MY/MEMBERS/*"
/*
T4ASI025-00-00
PKUNZIP Commands
247
To decompress members to a new PDS:
//PDSUNZIP EXEC PGM=PKUNZIP,REGION=2M
//SYSPRINT DD SYSOUT=*
//NEWPDS
DD DSN=NEW.DATASET.PDS,
//
DISP=(NEW,CATLG,CATLG),
//
DCB=(DSORG=PO,RECFM=FB,LRECL=80,BLKSIZE=6160),
//
SPACE=(TRK,(1,1,10)),UNIT=SYSDA,VOL=SER=TSTVOL
//SYSIN
DD *
-ECHO
-ARCHIVE(ARCHIVE.DATASET.ZIP)
-OUTDD(NEWPDS)
"MY/MEMBERS/*"
/*
Note:

When using –OUTDD to extract files as members of a PDS,
PKUNZIP assumes that the -INSERTMEMBER and –
NOHIERARCHY commands have been specified.
-OUTDIRBLKS
The -OUTDIRBLKS command is used to specify the number of directory
blocks to be used for a new PDS.
The full syntax for this command is:
-OUTDIRBLKS(<dirblks>)
where <dirblks> is the number of directory blocks to be used for creating
the new PDS.
This command should only be used when extracting ZIP files to members
of a new PDS.
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If this command is not
specified and there is no associated stored attribute then any PDS
created by PKUNZIP will be allocated with 10 directory blocks.
Note:

248
The default is not used when the associated SMS command
(-OUTDCLASS) is specified.
PKZIP for MVS: User Reference
T4ASI025-00-00
-OUTLRL
The -OUTLRL command is used to specify the logical record length to be
used for a new extracted dataset.
The full syntax for this command is:
-OUTLRL(<record length>)
where <record length> is the logical record length to be used for the new
extracted dataset.
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If this command is not
specified and there is no associated stored attribute, the new extracted
dataset is allocated with a logical record length of 80.
Note:

The default is not used when the associated SMS command
(-OUTDCLASS) is specified.

This command or the associated attribute stored in the archive will be
ignored for output files with an Undefined record format.
-OUTMCLASS
The -OUTMCLASS command is used to specify the DFSMS
management class to be used for a new extracted dataset.
The full syntax for this command is:
-OUTMCLASS(<management class>)
where <management class > is the DFSMS management class to be
used for placing the new extracted dataset.
If this command is not specified, no management class is used for
placing the new extracted dataset.
When a new extracted dataset is being created, an -OUTVOL,
-OUTUNIT, -OUTDD, -OUTDCLASS, -OUTMCLASS or –OUTSCLASS
command should be used to specify the placement of the extracted
dataset.
T4ASI025-00-00
PKUNZIP Commands
249
-OUTNORLSE
The -OUTNORLSE command is used to specify that, when deallocated,
free space should not be released for an extracted dataset.
-OUTRLSE is the default for extracted sequential datasets, whereas
-OUTNORLSE is the default for extracted PDS members (it is assumed
that the extra space may be required by other members of the PDS).
-OUTPRIMARY
The -OUTPRIMARY command is used to specify the number of data
units to be used on the primary extent of a new extracted dataset.
The full syntax for this command is:
-OUTPRIMARY(<data units>)
where <data units> is the number of data units to be used in the primary
extent of the new extracted dataset.
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If this command is not
specified and there is no associated stored attribute, the new extracted
dataset defaults to a primary extent of 100 data units. See –OUTSPACE
for the definition of the data unit.
Note:

250
The default is not used when the associated SMS command
(-OUTDCLASS) is specified.
PKZIP for MVS: User Reference
T4ASI025-00-00
-OUTRLSE
The -OUTRLSE command is used to specify that, when deallocated, free
space should be released for an extracted dataset. This command helps
save space when decompressing data.
-OUTRLSE is the default for extracted sequential datasets, whereas
-OUTNORLSE is the default for extracted PDS members (it is assumed
that the extra space may be required by other members of the PDS).
-OUTSCLASS
The -OUTSCLASS command is used to specify the DFSMS storage
class to be used for a new extracted dataset.
The full syntax for this command is:
-OUTSCLASS(<storage class>)
where <storage class > is the DFSMS storage class to be used for
placing the new extracted dataset.
If this command is not specified, no storage class is used for placing the
new extracted dataset.
When a new extracted dataset is being created, an -OUTVOL,
-OUTUNIT, -OUTDD, -OUTDCLASS, -OUTMCLASS or –OUTSCLASS
command should be used to specify the placement of the extracted
dataset.
-OUTSECONDARY
The -OUTSECONDARY command is used to specify the number of data
units to be used on the secondary extent of a new extracted dataset.
The full syntax for this command is:
-OUTSECONDARY(<data units>)
where <data units> is the number of data units to be used in the
secondary extent of the new extracted dataset. <data units> may not be
specified as 0.
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If this command is not
specified and there is no associated stored attribute, the new extracted
dataset defaults to a secondary extent of 100 data units. See –
OUTSPACE for the definition of the data unit.
T4ASI025-00-00
PKUNZIP Commands
251
Note:

The default is not used when the associated SMS command
(-OUTDCLASS) is specified.
-OUTSPACE
The -OUTSPACE command is used to specify the type of data units to be
used for allocating a new extracted dataset.
The full syntax for this command is:
-OUTSPACE(TRK|CYL|BLK)
where the type of data unit to be used for allocating the new extracted
dataset is specified by one of the following parameters:
TRK
The extracted dataset is to be allocated by tracks.
CYL
The extracted dataset is to be allocated by cylinders.
BLK
The extracted dataset is to be allocated by blocks; the average
block size is taken from the -OUTBLKSIZ command.
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If this command is not
specified and there is no associated stored attribute, the new extracted
dataset is allocated in tracks (TRK option).
By default, both the primary and secondary extents are allocated at a size
of 100 of these data units. This default can be changed by using the
-OUTPRIMARY or -OUTSECONDARY commands.
Note:

252
The default is not used when the associated SMS command
(-OUTDCLASS) is specified.
PKZIP for MVS: User Reference
T4ASI025-00-00
-OUTTYPE
The -OUTTYPE command is used to specify the record format of records
within a new extracted dataset.
The full syntax for this command is:
-OUTTYPE(U|F|FA|FB|FBA|FBM|FBS|FM|V|VA|VB|VBA|VBM|VM)
where the record format to be used for allocating the new extracted
dataset is specified by one of the following parameters:
U
Undefined records.
F
Fixed records.
V
Variable records.
.B
Records will be Blocked – if not specified processing assumes
one record per block.
.A or ..A
The record(s) contain ISO/ANSI device control characters.
.M or ..M
The record(s) contain Machine code control characters.
FBS
Fixed Block Standard – i.e. no short blocks.
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If this command is not
specified and there is no associated stored attribute, the extracted
dataset is allocated with a fixed blocked (FB) record format.
For further information on the meanings of the supported settings, see
information on the RECFM parameter in the JCL Reference manual.
Note:
T4ASI025-00-00

The default is not used when the associated SMS command
(-OUTDCLASS) is specified.

The use of –OUTLRL and –OUTBLKSIZ depends on the type
specified. If U is specified, then the –OUTLRL value will be ignored.
If an unblocked format is specified, then –OUTBLKSIZ will be
ignored.
PKUNZIP Commands
253
-OUTUNIT
The -OUTUNIT command is used to specify the generic unit on which a
new extracted non VSAM dataset is to be allocated.
The full syntax for this command is:
-OUTUNIT(<unit name>)
where <unit name> is the generic unit name on which the new extracted
dataset is to be allocated.
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If this command is not
specified, there is no associated stored attribute and a UNIT is required,
then the installation default UNIT (typically SYSALLDA) is used.
Note:

For non VSAM datasets, the volume information in the archive will be
ignored if the –OUTUNIT command is specified.
-OUTVOL
The -OUTVOL command is used to specify the volume on which a new
extracted dataset is to be allocated.
The full syntax for this command is:
-OUTVOL(<volume name>[ <volume name> …])
where <volume name> is the volume name on which the new extracted
dataset is to be allocated. Up to 31 volumes can be specified, separated
by blanks.
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If this command is not
specified and there is no associated stored attribute there is no
associated default.
Note:
254

For non VSAM datasets, the volume information in the archive will be
ignored if the –OUTUNIT command is specified.

For a VSAM file, this command is used to specify volumes at the
Cluster Level.
PKZIP for MVS: User Reference
T4ASI025-00-00
-OVERWRITE
Specifies that if an extracted dataset or file has the same name as an
existing dataset then the existing dataset should be overwritten.
By default, when extracting to an existing PDS, PKUNZIP will not add or
update members. To add a new member you must specify the –
INSERTMEMBER command, to update an existing member you must
specify the –OVERWRITE command.
-PAD
The -PAD command is used to specify a single (EBCDIC) character that
may be used to pad out the end of each record after it is decompressed.
This is used by PKUNZIP when a file is being decompressed to a dataset
with a fixed record length, and the records are shorter than the required
record length.
The full syntax for the command is:
-PAD(<pad character>)
where <pad character> specifies the character to be used for padding the
end of every record.
The pad character may be specified by one of the following methods:
None
If no pad character is specified, but the PAD command is
used, PKUNZIP will assume space (X’40’) characters.
EBCDIC character
A single EBCDIC character value.
X’Hex character’
A single hexadecimal character.
If the PAD command is not specified but records must be padded,
PKUNZIP will use a space character if a TEXT decompression is being
performed or a null character (X’00’) if a BINARY decompression is being
performed.
T4ASI025-00-00
PKUNZIP Commands
255
-PASSWORD
This command can be used to decrypt the selected files in a ZIP archive.
The full syntax for this command is:
-PASSWORD(<password>)
where <password> is the password that is to be used for decrypting the
files. The password is case sensitive, meaning that "Secret", "secret" and
"SECRET" are all different passwords. This should be noted, especially
where the password is being input from JCL, to ensure that the
JCL/editor options do not capitalise, and hence invalidate, the password.
This is mostly of concern when you are transferring ZIP files between
MVS and MS-DOS or UNIX, where passwords are commonly lower case.
If the files selected for extraction are not encrypted, they will be extracted
as normal if this command is specified. If any of the selected files are
encrypted with a different password, they will not be extracted, but a
warning message will be output. Note that a ZIP archive may contain files
encrypted under several different passwords, in which case each set of
files with a different password must be extracted separately.
-TAPETODISK
This command is used to determine whether or not a temporary archive
(i.e. disk archive) may be used to maintain a copy of an input archive.
This option is significant where that archive is based on a sequential
device that can support ZIP processing but there may be significant
operator involvement (i.e. 3480 or 3490 cartridge device). PKZIP for
MVS will always attempt to create a disk archive for 3420 tape devices.
If this command is specified when PKUNZIP is reading a cartridge based
archive, the ZIP processing will attempt to copy the input archive to a
temporary dataset (allocating this dataset using the TEMP* commands
that are specified or defaulted). When PKZIP is reading a ‘round tape’
(3420) tape based archive, a temporary dataset will always be used, even
if this command has not been specified.
If the allocated temporary space is insufficient, then the processing will
revert to direct Tape processing, with the consequent impact on tape
handling and potentially slower processing.
Note:

256
When using this option, it may also be useful to code the JCL
parameter FREE=CLOSE on the DD associated with the input
archive. Using this, the tape drive will be made available for other
processing once the copy has been completed. If FREE=CLOSE is
not specified, then the tape must remain mounted while the UNZIP
processing is progressing.
PKZIP for MVS: User Reference
T4ASI025-00-00
-TEMPBLKSIZ
The -TEMPBLKSIZ command is used to specify the block size to be used
for a temporary ZIP dataset.
The full syntax for this command is:
-TEMPBLKSIZ(<block size>)
where <block size> is the block size to be used for the temporary ZIP
dataset.
If this command is not specified, the temporary ZIP dataset defaults to
the block size of 20000 bytes if the archive is being cached, or ½ track
blocking if not. Note that PKUNZIP performance may be affected by the
dataset block size, and a large block size should improve performance.
Note:

A temporary ZIP dataset is only used to assist performance when
PKUNZIP is processing a ‘sequential’ archive (e.g. a Tape).
-TEMPDCLASS
The -TEMPDCLASS command is used to specify the DFSMS data class
to be used for a temporary ZIP dataset.
The full syntax for this command is:
-TEMPDCLASS(<data class>)
where <data class > is the DFSMS data class to be used for placing the
temporary ZIP dataset.
If this command is not specified, no data class is used for the temporary
ZIP dataset.
Note:

T4ASI025-00-00
A temporary ZIP dataset is only used to assist performance when
PKUNZIP is processing a ‘sequential’ archive (e.g. a Tape).
PKUNZIP Commands
257
-TEMPPRIMARY
The -TEMPPRIMARY command is used to specify the number of data
units to be used on the primary extent of a temporary ZIP dataset.
The full syntax for this command is:
-TEMPPRIMARY(<data units>)
where <data units> is the number of data units to be used in the primary
extent of the temporary ZIP dataset.
If this command is not specified, primary extent is defaulted to 100 data
units.
Note:

A temporary ZIP dataset is only used to assist performance when
PKUNZIP is processing a ‘sequential’ archive (e.g. a Tape).
-TEMPSCLASS
The -TEMPSCLASS command is used to specify the DFSMS storage
class to be used for a temporary ZIP dataset.
The full syntax for this command is:
-TEMPSCLASS(<storage class>)
where <storage class > is the DFSMS storage class to be used for
placing the temporary ZIP dataset.
If this command is not specified, no management class is used for the
temporary ZIP dataset.
Note:

A temporary ZIP dataset is only used to assist performance when
PKUNZIP is processing a ‘sequential’ archive (e.g. a Tape).
-TEMPSECONDARY
The -TEMPSECONDARY command is used to specify the number of
data units to be used on the secondary extent of a temporary ZIP
dataset.
The full syntax for this command is:
-TEMPSECONDARY(<data units>)
where <data units> is the number of data units to be used in the
secondary extent of the temporary ZIP dataset. <data units> may not be
specified as 0.
258
PKZIP for MVS: User Reference
T4ASI025-00-00
If this command is not specified, the secondary extent size is defaulted to
100 data units.
Note:

A temporary ZIP dataset is only used to assist performance when
PKUNZIP is processing a ‘sequential’ archive (e.g. a Tape).
-TEMPSPACE
The -TEMPSPACE command is used to specify the type of data units to
be used for allocating a temporary ZIP dataset.
The full syntax for this command is:
-TEMPSPACE(TRK|CYL|BLK)
where the type of data unit to be used for allocating the temporary ZIP
dataset is specified by one of the following parameters:
TRK
The ZIP temporary dataset is to be allocated by tracks. This is the
default value assigned for the type of data unit if -TEMPSPACE is
not specified.
CYL
The ZIP temporary dataset is to be allocated by cylinders.
BLK
The ZIP temporary dataset is to be allocated by blocks; the block
size is taken from the -TEMPBLKSIZ command.
Note:

A temporary ZIP dataset is only used to assist performance when
PKUNZIP is processing a ‘sequential’ archive (e.g. a Tape).
-TEMPTYPE
The -TEMPTYPE command is used to specify the record format of
records within a temporary ZIP dataset.
The full syntax for this command is:
-TEMPTYPE(U|F|FB)
where <record format> may take the following values:
T4ASI025-00-00
U
to specify undefined records. This is the default.
F
to specify fixed records.
FB
to specify fixed block records.
PKUNZIP Commands
259
Note:

A temporary ZIP dataset is only used to assist performance when
PKUNZIP is processing a ‘sequential’ archive (e.g. a Tape).
-TEMPUNIT
The -TEMPUNIT command is used to specify the generic unit on which a
temporary ZIP dataset is to be allocated.
The full syntax for this command is:
-TEMPUNIT(<unit name>)
where <unit name> is the generic unit name on which the temporary ZIP
dataset is to be allocated.
If this command is not specified and a UNIT is required, then the
installation default UNIT (typically SYSALLDA) is used.
Note:

A temporary ZIP dataset is only used to assist performance when
PKUNZIP is processing a ‘sequential’ archive (e.g. a Tape).
-TEMPVOL
The -TEMPVOL command is used to specify the volume on which a
temporary ZIP dataset is to be allocated.
The full syntax for this command is:
-TEMPVOL(<volume name>[ <volume name> …])
where <volume name> is the volume name on which the temporary ZIP
dataset is to be allocated. Up to 31 volumes can be specified, separated
by blanks.
If this command is not specified, no specific volume is assigned to the
ZIP temporary dataset.
Note:

A temporary ZIP dataset is only used to assist performance when
PKUNZIP is processing a ‘sequential’ archive (e.g. a Tape).
-TERM
The -TERM command is used to specify a terminator (of between 0 and
4 characters) that has been suffixed to the last record of a file and should
be ignored, when decompressing a text file. The -TERM command is
ignored when a file is being decompressed as binary.
260
PKZIP for MVS: User Reference
T4ASI025-00-00
The full syntax for this command is:
-TERM(<terminator characters>)
where <terminator characters> specifies the character(s) to be ignored at
the end of a text file.
Each of the 0-4 <terminator characters> may have one of the following
values:
CR
The file terminator includes an ASCII carriage return character
(hexadecimal 0D).
LF
The file terminator includes an ASCII line feed character (hexadecimal
0A).
CZ
The file terminator includes an ASCII Ctrl-Z character (hexadecimal 1A).
Any combination of these characters may be used up to a limit of 4
characters.
Note:
T4ASI025-00-00

If no -DELIM command and no –TERM command are specified when
decompressing a text file, PKUNZIP will search for a range of
delimiters and terminators, which should correctly process files from
most system. This default processing should be used unless the data
is known to contain characters that are not handled correctly by the
default processing.

The default values that PKUNZIP will search for if both –DELIM and
–TERM are not specified are:

DELIM default values as specified in the –DELIM command.

TERM values of CR, CZ or LF. Any of the DELIM values may
also be used as File Terminators if they occur at the end of the
file.

If either a DELIM or TERM command is specified, then the
character(s) specified or defaulted by both commands will be used
in the search process.

If a –DELIM() command is specified but no –TERM() command is
specified, then the default terminator is CRLFCZ.

The usual terminator used for transfers from MS-DOS systems is
CRLFCZ, and the usual terminator used for transfers from UNIX
systems is LF.
PKUNZIP Commands
261

To ensure that the output is correct, the same –TERM() command
that was used on the original compression should be used when
decompressing a file created. In addition, this value must not
contain the -DELIM() value. This restriction is a result of the
processing checking for -DELIM() characters before checking for the
–TERM() characters. So, for example, if the DELIM value is CRLF,
TERM values of CFLFCZ or CZCRLF will not process correctly.
CRLFCZ will generate an additional record containing the translation
of CZ (x’1A’). CZCRLF will add an additional byte containing the
translation of CZ (x’1A’), to the last record of the file.

If the terminator specified (or defaulted) is not matched by the last
character(s) in the extracted file, then the bytes up to the end of the
decompressed data will be written. No warning message is given.
TEST command
The -TEST command is used to test the integrity of files within the ZIP
archive, to ensure that they are valid and have not been corrupted.
PKUNZIP will perform all the actions which would normally be taken
during an -EXTRACT command, except that no data is actually extracted
or written to a file.
The data is extracted and checked against the stored CRC to ensure its
integrity. For each file that is successfully checked, its validity is
confirmed with a message to the SYSPRINT dataset.
The –TEST commands reads an existing Zip Archive, so requires that
either the -ARCHIVE command or the –ARCHINDD command be
specified.
-TEXT
This command is used to determine the way in which a selected file is
extracted. If this command is used, PKUNZIP will translate the extracted
file as a text file. If neither this command nor the -BINARY command is
used, the file will be translated as the type of file by which it is marked in
the file information (Refer to the -VIEW command later in this chapter,
under the DETAIL option, for more details of this). If such a file is marked
as a text file, it will be extracted as if this command had been given.
A text file is stored in a ZIP archive as a stream of ASCII characters, with
embedded delimiters. Delimiters are normally stored as ASCII CR/LF
sequences if the file was compressed under MS-DOS, AS/400 or MVS,
or as an ASCII LF character if it was compressed under a UNIX style
system. Details of record delimiters used by PKZIP for MVS are given in
the -DELIM command section of Chapter 21. PKZIP Commands.
262
PKZIP for MVS: User Reference
T4ASI025-00-00
When a file is decompressed using the -TEXT command, PKUNZIP will
translate the ASCII characters to EBCDIC characters using the specified
or defaulted translation table. It will extract the file's records to the output
file using the delimiters as record boundaries (the delimiters themselves
are not output). If the output file has a fixed record length, PKUNZIP will
truncate records if they are too long and will expand them with EBCDIC
space characters (hexadecimal 40) if they are too short.
If a compressed text file does not have any internal delimiters, the
-NOCRLF command should be used to inform PKUNZIP that the
maximum record length in the output file should be used instead of the
record delimiters.
-TRAN
The -TRAN command is used to specify a translation table for use when
extracting text files from a ZIP archive.
The full syntax for this command is:
-TRAN(<translation table>)
where <translation table> is the name of a loadable translation table
which is used for translating the data within the extracted text files from
the internal, normally ASCII character set to the external, normally
EBCDIC, character set. This translation table may either be supplied with
the PKUNZIP program, or may be created by yourself, as described in
the Modifying a translation table section of Chapter 16. Translation and
Translation Tables.
If this command is not specified, the default translation table, ASCII, is
used.
-VIEW command
This command will output information about the selected files contained
in the ZIP archive onto the SYSPRINT dataset. The full syntax for this
command is:
-VIEW[option1][option2]...
where: [option1], [option2], etc. can be any of the valid options for this
command. These valid options are listed later in this section.
Note
Please note that there should be no space between -VIEW and the
option. If present the option will be interpreted as a file specification (see
below).
-VIEW SIZE
T4ASI025-00-00
is incorrect, view will only display the file named ‘size’
PKUNZIP Commands
263
-VIEWSIZE
is correct, view will display all files sorted by size
The –VIEW commands reads an existing Zip Archive, so requires that
either the -ARCHIVE command or the –ARCHINDD command be
specified.
Options
In its simplest form, where just the -VIEW command is given, without any
options, an output similar to the following is displayed on the screen.
UNZIP501I
Length Method
Size Ratio Date
UNZIP502I --------- ------- ---------- --- ---------UNZIP503I
3578 DeflatN
956 74% 07-30-19xx
UNZIP503I
1614 DeflatN
431 74% 09-07-19xx
UNZIP503I
2970 DeflatN
801 74% 09-08-19xx
UNZIP503I
2521 DeflatN
726 72% 09-07-19xx
UNZIP503I
1941 DeflatN
531 73% 09-08-19xx
UNZIP503I
11933 DeflatN
2459 80% 09-14-19xx
UNZIP503I
1667 DeflatN
442 74% 09-07-19xx
UNZIP503I
3083 DeflatN
955 70% 09-13-19xx
UNZIP503I
3983 DeflatN
976 76% 09-08-19xx
UNZIP503I
4105 DeflatN
1054 75% 09-08-19xx
UNZIP503I
4031 DeflatN
940 77% 09-10-19xx
UNZIP503I
3020 DeflatN
955 69% 09-10-19xx
UNZIP503I
4625 DeflatN
1184 75% 09-08-19xx
UNZIP503I
2970 DeflatN
813 73% 09-08-19xx
UNZIP503I
4031 DeflatN
953 77% 09-10-19xx
UNZIP503I
1957 DeflatN
549 72% 09-08-19xx
UNZIP503I
4511 DeflatN
1109 76% 09-08-1897
UNZIP503I
1541 DeflatN
436 72% 09-03-19xx
UNZIP505I ------------------ ---UNZIP506I
64081
16270 75%
Time
----11:55
17:23
15:11
08:59
14:57
17:39
10:18
16:39
14:59
14:58
09:56
08:40
14:36
14:57
09:23
11:12
14:35
12:07
CRC-32
-------8B9A1E80
3DD08201
73951335
0F2EA477
AA588493
7266FE37
B4306683
BC889589
23F32729
D49BF956
AC3FE911
67821F88
654A3470
BA227472
8BE2ACE9
649EC958
48616AE6
E7AC2AA9
*
*
*
*
*
*
*
Name
---NUMCHK.MAC
BSBLBPTR.MAC
LINTEL.MAC
BSAMDEF.MAC
LINTELH.MAC
PARSEC.ASM
BSBLKDEF.MAC
ZIPWORK.MAC
LMEMCPY.MAC
LMEMSET.MAC
GASCII.MAC
ZIPWORK.BAK
LMEMSET.BAK
LINTEL.BAK
GASCII.BAK
LINTELH.BAK
LMEMCPY.BAK
BSBLBPTR.BAK
This is a standard, unsorted display of the contents of a ZIP archive. The
columns displayed consist of:
264
Length
The original (uncompressed) size of the file. Note that this
may differ slightly from the physical MVS size, due to the
inclusion of imbedded record delimiters used to convert the
file to PKZIP format. Refer to Chapter 5. ZIP Files, for more
information.
Method
The type of compression routine that has been used to
compress this file. Valid values are as follows:
Stored
This file has been stored without any
compression.
Shrunk
This file has been shrunk by PKZIP
version 1.
Reducen
(where n is 1 to 4)
This file has been reduced by PKZIP
version 1.
Implode
This file has been imploded by PKZIP
version 1.
DeflatN
This file has been compressed by PKZIP
version 2 using the Normal method.
DeflatX
This file has been compressed by PKZIP
version 2 using the Maximum method.
PKZIP for MVS: User Reference
T4ASI025-00-00
DeflatF
This file has been compressed by PKZIP
version 2 using the Fast method.
DeflatS
This file has been compressed by PKZIP
version 2 using the Superfast method.
Size
The current (compressed) size of the file.
Ratio
The percentage reduction in the file size as a result of this
compression.
Date
The date of the file, as stored in the ZIP archive. Note that,
for an MVS file, this is the date as specified by the
TIMESTAMP command used when the file was compressed.
Time
The time of the file, as stored in the ZIP archive. Note that,
for an MVS file, this is the time as defined by the
TIMESTAMP command used when the file was compressed.
CRC-32
The CRC value of the file, as calculated by the CRC-32
routine. If the file has been encrypted in the ZIP archive, an
asterisk character (*) suffix is applied to the CRC value.
Name
The name of the file, as stored in the ZIP archive.
The details, or order, of the information displayed using the -VIEW
command may be modified by specifying various options. These options
are appended to the -VIEW command, with no delimiters (as shown in
the example given after the descriptions), and are described below.
Any of these options may be specified together. Note however that, if
more than one option that modifies the order of the displayed files is
specified, i.e. DATE, NAME, OFFSET, PERCENT or SIZE (REVERSE is
an exception) only the last option is satisfied (e.g. -VIEWDATEPERCENT
will only sort by percent).
BRIEF option
This option is used to give only brief details of the files which are selected
for display. This display will not give details of the file's CRC or its
encryption status.
DATE option
This option is used to display the selected files in ascending order of the
file's date and time, as stored in the ZIP archive.
NAME option
This option is used to display the selected files in ascending order of
filename, as stored in the ZIP archive.
OFFSET option
This option is used to display the selected files in the order of offset in
which they are stored within the ZIP archive. This is the default order in
which files are displayed if no other ordering option is used.
T4ASI025-00-00
PKUNZIP Commands
265
PERCENT option
This option is used to display the selected files in ascending order of
compression percentage.
SIZE option
This option is used to display the files in ascending order of
uncompressed file size.
REVERSE option
This option can be used to reverse the order in which files are displayed it can be used in conjunction with any other ordering option.
COMMENT option
This option is used to display any file comment that is attached to a
particular file, on a separate line following the file's details.
DETAIL option
This option is used to give full technical details of the file in a multi-line
display. The output format is as follows:
UNZIP507I
UNZIP508I
UNZIP509I
UNZIP510I
UNZIP511I
UNZIP512I
UNZIP513I
UNZIP514I
UNZIP515I
Filename: NUMCHK.MAC
File type: Text
Date and Time: 30-Jul-19xx 11:55:26
Compression Method: DeflatN
Compressed Size:
956
Uncompressed Size:
3578
32 bit CRC value: 8B9A1E80
Created by: PKZIP: 2.0 under MS-DOS
Needed to extract: PKUNZIP: 2.0
The values and meaning of the fields are as in the normal display
version, with the exception of the following additional fields:
The file type is a judgement made by PKZIP during
compression based on either the -TEXT/-BINARY command
or on the contents of the file if neither command is input (See
the -TEXT section on earlier in this chapter for more details).
File type
In addition, the file will be marked "encrypted" if it has been
stored as an encrypted file.
The file type shows the translation of the file that will be made
when it is extracted by PKUNZIP if the explicit
-TEXT/-BINARY commands are not input.
Created by
This gives the version of PKZIP and the operating system
under which this file was compressed.
Needed to
extract
This gives the minimum version level of PKUNZIP required to
extract this file.
Following these lines, the output will include details of any file attributes
that are stored in the archive.
266
PKZIP for MVS: User Reference
T4ASI025-00-00
Note:

The order in which file attributes are displayed may vary.
Example
As an example, the command:
-VIEWNAMEREVERSE
may be given. This command will give a normal display of files within the
ZIP archive, in order of filename (in descending alphabetical order). For
the original example given at the start of this section, the output would be
as follows:
UNZIP501I
Length Method
Size Ratio
Date
Time CRC-32
Name
UNZIP502I ---------- ------- ---------- ----- ---------- ----- ----------UNZIP503I
3083 DeflatN
955 70% 09-13-19xx 16:39 BC889589
ZIPWORK.MAC
UNZIP503I
3020 DeflatN
955 69% 09-10-19xx 08:40 67821F88 * ZIPWORK.BAK
UNZIP503I
11933 DeflatN
2459 80% 09-14-19xx 17:39 7266FE37
PARSEC.ASM
UNZIP503I
3578 DeflatN
956 74% 07-30-19xx 11:55 8B9A1E80
NUMCHK.MAC
UNZIP503I
4105 DeflatN
1054 75% 09-08-19xx 14:58 D49BF956
LMEMSET.MAC
UNZIP503I
4625 DeflatN
1184 75% 09-08-19xx 14:36 654A3470 * LMEMSET.BAK
UNZIP503I
3983 DeflatN
976 76% 09-08-19xx 14:59 23F32729
LMEMCPY.MAC
UNZIP503I
4511 DeflatN
1109 76% 09-08-19xx 14:35 48616AE6 * LMEMCPY.BAK
UNZIP503I
2970 DeflatN
801 74% 09-08-19xx 15:11 73951335
LINTEL.MAC
UNZIP503I
2970 DeflatN
813 73% 09-08-19xx 14:57 BA227472 * LINTEL.BAK
UNZIP503I
1941 DeflatN
531 73% 09-08-19xx 14:57 AA588493
LINTELH.MAC
UNZIP503I
1957 DeflatN
549 72% 09-08-19xx 11:12 649EC958 * LINTELH.BAK
UNZIP503I
4031 DeflatN
940 77% 09-10-19xx 09:56 AC3FE911
GASCII.MAC
UNZIP503I
4031 DeflatN
953 77% 09-10-19xx 09:23 8BE2ACE9 * GASCII.BAK
UNZIP503I
1667 DeflatN
442 74% 09-07-19xx 10:18 B4306683
BSBLKDEF.MAC
UNZIP503I
1614 DeflatN
431 74% 09-07-19xx 17:23 3DD08201
BSBLBPTR.MAC
UNZIP503I
1541 DeflatN
436 72% 09-03-19xx 12:07 E7AC2AA9 * BSBLBPTR.BAK
UNZIP503I
2521 DeflatN
726 72% 09-07-19xx 08:59 0F2EA477
BSAMDEF.MAC
UNZIP505I ------------------- ----UNZIP506I
64081
16270 75%
-ZDW
The -ZDW (ZIP Descriptor Word) command is designed for compressing
and decompressing binary datasets that have variable record lengths.
The -ZDW command when used with PKZIP forces the compression
processing to store record lengths as it compresses a binary file. The –
ZDW command when used with PKUNZIP forces the decompression
processing to extract the stored values, allowing PKUNZIP to
decompress the file whilst preserving the original record lengths.
If you specify the -ZDW command then you should also specify the
-BINARY command. If a file was compressed with -BINARY -ZDW then
you should decompress it with -BINARY -ZDW.
The -ZDW command is not required when compressing a text dataset on
MVS. When compressing text, PKZIP by default places the ASCII CR/LF
delimiter at the end of each record thus ensuring the proper length on
decompression (see Chapter 5. ZIP Files for more details).
T4ASI025-00-00
PKUNZIP Commands
267
The -ZDW command was written specifically for IBM mainframe users
(MVS, VM, VSE) and may not be supported on other platforms yet. If the
target platform does not support the -ZDW command, then it may not be
possible to preserve variable record lengths of a binary file, in these
cases the file should be compressed with just the -BINARY command
before transfer.
Note:

Use of this command when the file being extracted has not been
created using –ZDW, may cause unpredictable results, because the
decompression processing will incorrectly extract a record length
from data that does not contain this length.
-ZIPCUR
The -ZIPCUR (ZIP CURrent) command is used to specify a PDS to which
PKUNZIP can extract files when no path is stored in the ZIP archive or
when the path has been dropped by the -NOHIERARCHY command.
The full syntax for this command is:
-ZIPCUR(<dataset component><.dataset component><...><.dataset
component>)
For example, the ZIP file:
FRED
with the command:
-ZIPCUR(T4ZIP.BASE25.NAMES)
will be extracted as the PDS member:
T4ZIP.BASE25.NAMES(FRED)
268
PKZIP for MVS: User Reference
T4ASI025-00-00
Chapter 24. VSAM Specific PKUNZIP Commands
This chapter describes the commands available for creating new
extracted VSAM datasets. For more details on many of these
commands, please refer to the DEFINE CLUSTER command in the IBM
manual Access Method Services.
The VSAM file handler license is required to read and write VSAM files,
see Appendix B. Licensing Guide for more details.
General Syntax for creating an extracted VSAM dataset
Cluster Level
[-MAKEVSAM]
[-PADVSAM|-NOPADVSAM]
[-OUTATTR(INDEXED|NONINDEXED|NUMBERED)]
[-OUTBUFSPACE(size)]
[-OUTCATALOG(catalog[/password)]
[-OUTCISZ(size)]
[-OUTDUPLICATES(FAIL|IGNORE)]
[-OUTEEXT(entrypoint)]
[-OUTERASE|-OUTNOERASE]
[-OUTFILE(ddname)]
[-OUTFREECI(CI-percent) [-OUTFREECA(CA-percent)]]
[-OUTIMBED|-OUTNOIMBED]
[-OUTKEYS(length offset)]
[-OUTOWNER(owner)]
[-OUTPRIMARY(primary)]
[-OUTRECORDSIZE(average maximum)]
[-OUTREPLICATE|-OUTNOREPLICATE]
[-OUTREUSE|-OUTNOREUSE]
[-OUTSECONDARY(secondary)]
[-OUTSHR(crossregion[ crosssystem])]
[-OUTSPACE(TRK|CYL|REC|MB|KB)]
[-OUTSPANNED|-OUTNONSPANNED]
[-OUTSPEED|-OUTRECOVERY]
[-OUTTO(date)|-OUTFOR(days)]
[-OUTVOL(volser)]
[-OUTWRITECHK|-OUTNOWRITECHK]
Data Level
[-OUTDATACISZ(size)]
[-OUTDATAEEXT(entrypoint)]
[-OUTDATAFILE(ddname)]
[-OUTDATAORD|-OUTDATANORD]
[-OUTDATAOWNER(owner)]
[-OUTDATAPRI(primary)]
[-OUTDATARUS|-OUTDATANRUS]
[-OUTDATASEC(secondary)]
[-OUTDATASHR(crossregion[ crosssystem])]
[-OUTDATASPACE(TRK|CYL|REC|MB|KB)]
[-OUTDATAVOL(volser[ volser])]
[-OUTDATAWCK|-OUTDATANWCK]
T4ASI025-00-00
VSAM Specific PKUNZIP Commands
269
Index Level
[-OUTINDXCISZ(size)]
[-OUTINDXEEXT(entrypoint)]
[-OUTINDXFILE(ddname)]
[-OUTINDXORD|-OUTINDXNORD]
[-OUTINDXOWNER(owner)]
[-OUTINDXPRI(primary)]
[-OUTINDXRUS|-OUTINDXNRUS]
[-OUTINDXSEC(secondary)]
[-OUTINDXSHR(crossregion[ crosssystem])]
[-OUTINDXSPACE(TRK|CYL|REC|MB|KB)]
[-OUTINDXVOL(volser[ volser])]
[-OUTINDXWCK|-OUTINDXNWCK]
270
PKZIP for MVS: User Reference
T4ASI025-00-00
Summary of VSAM cluster level commands
The following commands are available in this release of PKUNZIP and
are specific to VSAM files only.
T4ASI025-00-00
Command
Description
-MAKEVSAM
Specifies that the dataset should be extracted to a
new VSAM file. Please refer to general PKUNZIP
commands.
-NOPADVSAM
VSAM records should not be padded to the maximum
record length.
-PADVSAM
VSAM records should be padded to the maximum
record length.
-OUTSPACE
How space is to be allocated for a new, extracted
VSAM dataset.
-OUTPRIMARY
Specifies the number of space units to be used in the
primary partition for a new, extracted VSAM dataset.
-OUTSECONDARY
Specifies the number of space units to be used in the
secondary partition for a new, extracted VSAM
dataset.
-OUTVOL
Specifies the volume onto which a new, extracted
VSAM dataset is created. Please refer to general
PKUNZIP commands.
-OUTATTR
Specifies the VSAM file type of a new, extracted
dataset.
-OUTBUFSPACE
Specifies the Bufferspace parameter of the IDCAMS
Define Cluster command used to create a new,
extracted VSAM dataset.
-OUTCATALOG
Specifies the Catalog parameter of the IDCAMS
Define Cluster command used to create a new,
extracted VSAM dataset.
-OUTCISZ
Specifies the Controlintervalsize parameter of the
IDCAMS Define Cluster command used to create a
new, extracted VSAM dataset.
-OUTDUPLICATES
Specifies whether duplicate keys should ignored when
decompressing a file to a KSDS.
-OUTEEXT
Specifies the Exceptionexit parameter of the IDCAMS
Define Cluster command used to create a new,
extracted VSAM dataset.
-OUTERASE
Specifies the Erase parameter of the IDCAMS Define
Cluster command used to create a new, extracted
VSAM dataset.
-OUTFILE
Specifies the File parameter of the IDCAMS Define
Cluster command used to create a new, extracted
VSAM dataset.
VSAM Specific PKUNZIP Commands
271
272
-OUTFOR
Specifies the For parameter of the IDCAMS Define
Cluster command used to create a new extracted
VSAM dataset.
-OUTFREECA
Specifies the ca-percent attribute of the Freespace
parameter of the IDCAMS Define Cluster command
used to create a new, extracted VSAM dataset.
-OUTFREECI
Specifies the ci-percent attribute of the Freespace
parameter of the IDCAMS Define Cluster command
used to create a new, extracted VSAM dataset.
-OUTIMBED
Specifies the Imbed parameter of the IDCAMS Define
Cluster command used to create a new, extracted
VSAM dataset.
-OUTKEYS
Specifies the VSAM key fields in an extracted VSAM
KSDS.
-OUTNOERASE
Specifies the Noerase parameter of the IDCAMS
Define Cluster command used to create a new,
extracted VSAM dataset.
-OUTNOIMBED
Specifies the Noimbed parameter of the IDCAMS
Define Cluster command used to create a new,
extracted VSAM dataset.
-OUTNONSPANNED
Specifies the Nonspanned parameter of the IDCAMS
Define Cluster command used to create a new,
extracted VSAM dataset.
-OUTNOREPLICATE
Specifies the Noreplicate parameter of the IDCAMS
Define Cluster command used to create a new,
extracted VSAM dataset.
-OUTNOREUSE
Specifies the Noreuse parameter of the IDCAMS
Define Cluster command used to create a new,
extracted VSAM dataset.
-OUTNOWRITECHK
Specifies the Nowritecheck parameter of the IDCAMS
Define Cluster command used to create a new,
extracted VSAM dataset.
-OUTOWNER
Specifies the Owner parameter of the IDCAMS Define
Cluster command used to create a new, extracted
VSAM dataset.
-OUTRECORDSIZE
Specify record lengths of VSAM datasets created by
decompression.
-OUTRECOVERY
Specifies the Recovery parameter of the IDCAMS
Define Cluster command used to create a new,
extracted VSAM dataset.
-OUTREPLICATE
Specifies the Replicate parameter of the IDCAMS
Define Cluster command used to create a new,
extracted VSAM dataset.
-OUTREUSE
Specifies the Reuse parameter of the IDCAMS Define
Cluster command used to create a new, extracted
VSAM dataset.
PKZIP for MVS: User Reference
T4ASI025-00-00
-OUTSHR
Specifies the Shareoptions parameter of the IDCAMS
Define Cluster command used to create a new,
extracted VSAM dataset.
-OUTSPANNED
Specifies the Spanned parameter of the IDCAMS
Define Cluster command used to create a new,
extracted VSAM dataset.
-OUTSPEED
Specifies the Speed parameter of the IDCAMS Define
Cluster command used to create a new, extracted
VSAM dataset.
-OUTTO
Specifies the To parameter of the IDCAMS Define
Cluster command used to create a new, extracted
VSAM dataset.
-OUTWRITECHK
Specifies the Writecheck parameter of the IDCAMS
Define Cluster command used to create a new,
extracted VSAM dataset.
Summary of VSAM data level commands
The following commands are specific to the data component of VSAM
files only.
T4ASI025-00-00
Command
Description
-OUTDATACISZ
Specifies the Controlintervalsize parameter of the
IDCAMS Define Cluster command used to create the
data component of a new, extracted VSAM dataset.
-OUTDATAEEXT
Specifies the Exceptionexit parameter of the IDCAMS
Define Cluster command used to create the data
component of a new, extracted VSAM dataset.
-OUTDATAFILE
Specifies the File parameter of the IDCAMS Define
Cluster command used to create the data component
of a new, extracted VSAM dataset.
-OUTDATANORD
Specifies the Unordered parameter of the IDCAMS
Define Cluster command used to create the data
component of a new, extracted VSAM dataset.
-OUTDATANRUS
Specifies the Noreuse parameter of the IDCAMS
Define Cluster command used to create the data
component of a new, extracted VSAM dataset.
-OUTDATANWCK
Specifies the Nowritecheck parameter of the IDCAMS
Define Cluster command used to create the data
component of a new, extracted VSAM dataset.
-OUTDATAORD
Specifies the Ordered parameter of the IDCAMS
Define Cluster command used to create the data
component of a new, extracted VSAM dataset.
-OUTDATAOWNER
Specifies the Owner parameter of the IDCAMS Define
Cluster command used to create the data component
of a new, extracted VSAM dataset.
VSAM Specific PKUNZIP Commands
273
-OUTDATAPRI
Specifies the primary space allocation used in the
IDCAMS Define Cluster command used to create the
data component of a new, extracted VSAM dataset.
-OUTDATARUS
Specifies the Reuse parameter of the IDCAMS Define
Cluster command used to create the data component
of a new, extracted VSAM dataset.
-OUTDATASEC
Specifies the secondary space allocation used in the
IDCAMS Define Cluster command used to create the
data component of a new, extracted VSAM dataset.
-OUTDATASHR
Specifies the Shareoptions parameter of the IDCAMS
Define Cluster command used to create the data
component of a new, extracted VSAM dataset.
-OUTDATASPACE
Specifies the space allocation type used in the
IDCAMS Define Cluster command used to create the
data component of a new, extracted VSAM dataset.
-OUTDATAVOL
Specifies the Volumes parameter of the IDCAMS
Define Cluster command used to create the data
component of a new, extracted VSAM dataset.
-OUTDATAWCK
Specifies the Writecheck parameter of the IDCAMS
Define Cluster command used to create the data
component of a new, extracted VSAM dataset.
Summary of VSAM index level commands
The following commands are specific to the index component of VSAM
files only.
274
Command
Description
-OUTINDXCISZ
Specifies the Controlintervalsize parameter of the
IDCAMS Define Cluster command used to create the
index component of a new, extracted VSAM dataset.
-OUTINDXEEXT
Specifies the Exceptionexit parameter of the IDCAMS
Define Cluster command used to create the index
component of a new, extracted VSAM dataset.
-OUTINDXFILE
Specifies the File parameter of the IDCAMS Define
Cluster command used to create the index
component of a new, extracted VSAM dataset.
-OUTINDXNORD
Specifies the Unordered parameter of the IDCAMS
Define Cluster command used to create the index
component of a new, extracted VSAM dataset.
-OUTINDXNRUS
Specifies the Noreuse parameter of the IDCAMS
Define Cluster command used to create the index
component of a new, extracted VSAM dataset.
-OUTINDXNWCK
Specifies the Nowritecheck parameter of the IDCAMS
Define Cluster command used to create the index
component of a new, extracted VSAM dataset.
PKZIP for MVS: User Reference
T4ASI025-00-00
T4ASI025-00-00
-OUTINDXORD
Specifies the Ordered parameter of the IDCAMS
Define Cluster command used to create the index
component of a new, extracted VSAM dataset.
-OUTINDXOWNER
Specifies the Owner parameter of the IDCAMS Define
Cluster command used to create the index
component of a new, extracted VSAM dataset.
-OUTINDXPRI
Specifies the primary space allocation used in the
IDCAMS Define Cluster command used to create the
index component of a new, extracted VSAM dataset.
-OUTINDXRUS
Specifies the Reuse parameter of the IDCAMS Define
Cluster command used to create the index
component of a new, extracted VSAM dataset.
-OUTINDXSEC
Specifies the secondary space allocation used in the
IDCAMS Define Cluster command used to create the
index component of a new, extracted VSAM dataset.
-OUTINDXSHR
Specifies the Shareoptions parameter of the IDCAMS
Define Cluster command used to create the index
component of a new, extracted VSAM dataset.
-OUTINDXSPACE
Specifies the space allocation type used in the
IDCAMS Define Cluster command used to create the
index component of a new, extracted VSAM dataset.
-OUTINDXVOL
Specifies the Volumes parameter of the IDCAMS
Define Cluster command used to create the index
component of a new, extracted VSAM dataset.
-OUTINDXWCK
Specifies the Writecheck parameter of the IDCAMS
Define Cluster command used to create the index
component of a new, extracted VSAM dataset.
VSAM Specific PKUNZIP Commands
275
VSAM Cluster Level commands
The following commands are used when specifying the cluster level
attributes of the VSAM dataset to be created. Only commands that are
new or changed from those used in general PKUNZIP operations are
detailed in this section.
Note that most file attributes associated with a VSAM file are retained in
the archive as attributes of the Data and Index components. As a result,
there are no default values from the archive for most of the cluster level –
OUT VSAM commands. For example, there is no cluster level allocation
information stored in the archive for VSAM files - allocation information
required is retained as an attribute of the Data (and if appropriate, Index)
component(s) of the cluster.
-NOPADVSAM
The –NOPADVSAM command is used to specify that PKUNZIP should
not pad variable length records.
The full syntax for the command is:
-NOPADVSAM
This is the default option.
-PADVSAM
The -PADVSAM is used to specify that PKUNZIP should pad variable
length records with the supplied or default PAD character, to the length
specified as the Average and the Maximum in the -OUTRECORDSIZE.
The full syntax for the command is:
-PADVSAM
Note:

276
Padding will only occur if –PADVSAM is specified and the Average
and Maximum record lengths, as specified in the
-OUTRECORDSIZE are the same.
PKZIP for MVS: User Reference
T4ASI025-00-00
-OUTATTR
The -OUTATTR command is used to specify the VSAM file type of a new
extracted dataset.
The full syntax for the command is:
-OUTATTR(<file type>)
where <file type> is the type of VSAM file to be allocated for the new
extracted dataset, and may take one of the following values:
NONINDEXED
The extracted dataset is allocated as an entry-sequenced
VSAM file.
INDEXED
The extracted dataset is allocated as a key-sequenced
VSAM file.
NUMBERED
The extracted dataset is allocated as a relative record VSAM
file.
If this command is not specified, the new extracted dataset is allocated
using the type of file stored in the file attributes. This command will
override any VSAM file type stored in the file attributes.
-OUTBUFSPACE
The -OUTBUFSPACE command is used to help create a new extracted
VSAM dataset. It has the same meaning and restrictions as the
BUFFERSPACE clause of the IDCAMS DEFINE CLUSTER command:
The full syntax for the command is:
-OUTBUFSPACE(<size>)
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
T4ASI025-00-00
VSAM Specific PKUNZIP Commands
277
-OUTCATALOG
The -OUTCATALOG command is used to help create a new extracted
VSAM dataset. It has the same meaning and restrictions as the
CATALOG clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTCATALOG(<catname>[/password])
If this command is not specified, there is no default.
When extracting VSAM datasets, the catalog information in the archive is
ignored. Standard installation conventions should correctly catalog the
dataset.
-OUTCISZ
The -OUTCISZ command is used to help create a new extracted VSAM
dataset. It has the same meaning and restrictions as the
CONTROLINTERVALSIZE clause of the IDCAMS DEFINE CLUSTER
command.
The full syntax for the command is:
-OUTCISZ(<size>)
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTDUPLICATES
The -OUTDUPLICATES command is used to specify whether duplicate
keys should ignored when decompressing a file to a KSDS.
The full syntax for the command is:
-OUTDUPLICATES(FAIL|IGNORE)
If this command is not specified processing will be aborted when a
duplicate key is encountered.
278
PKZIP for MVS: User Reference
T4ASI025-00-00
-OUTEEXT
The -OUTEEXT command is used to help create a new extracted VSAM
dataset. It has the same meaning and restrictions as the
EXCEPTIONEXIT clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTEEXT(<entrypoint>)
If specified, this command will override the data stored in the file
attributes.
This information is not stored in the file attributes. If this command is not
specified then the value may be defaulted by the IDCAMS DEFINE
CLUSTER command.
Note:

See Restrictions for PKZIP Version 2.5 for MVS on page 21 for
additional information about this command.
-OUTERASE
The -OUTERASE command is used to help create a new extracted
VSAM dataset. It has the same meaning and restrictions as the ERASE
clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTERASE
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTFILE
The -OUTFILE command is used to help create a new extracted VSAM
dataset. It has the same meaning and restrictions as the FILE clause of
the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTFILE(<ddname>)
There is no default for this command.
T4ASI025-00-00
VSAM Specific PKUNZIP Commands
279
If this command is specified then a suitable DD statement should also be
specified in the JCL. Please refer to the FILE clause of the IDCAMS
DEFINE CLUSTER command in the IBM manual Access Method
Services for more details.
-OUTFOR
The -OUTFOR command is used to help create a new extracted VSAM
dataset. It has the same meaning and restrictions as the FOR clause of
the IDCAMS DEFINE CLUSTER command:
The full syntax for the command is.
-OUTFOR(<days>)
If specified, this command will override the data stored in the file
attributes.
This information is not stored in the file attributes. If this command is not
specified then the value may be defaulted by the IDCAMS DEFINE
CLUSTER command.
-OUTFREECA
The -OUTFREECA command is used to help create a new extracted
VSAM dataset. It has the same meaning and restrictions as the CApercent attribute of the FREESPACE clause of the IDCAMS DEFINE
CLUSTER command.
The full syntax for the command is:
-OUTFREECA(<CA-percent>)
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
280
PKZIP for MVS: User Reference
T4ASI025-00-00
-OUTFREECI
The -OUTFREECI command is used to help create a new extracted
VSAM dataset. It has the same meaning and restrictions as the CIpercent attribute of the FREESPACE clause of the IDCAMS DEFINE
CLUSTER command.
The full syntax for the command is:
-OUTFREECI(<CI-percent>)
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTIMBED
The -OUTIMBED command is used to help create a new extracted
VSAM dataset. It has the same meaning and restrictions as the IMBED
clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTIMBED
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
T4ASI025-00-00
VSAM Specific PKUNZIP Commands
281
-OUTKEYS
The -OUTKEYS command is used to specify information about the key
fields of records in a new extracted VSAM key-sequenced dataset.
The full syntax for the command is:
-OUTKEYS(length offset)
where length specifies the length of the key-field in bytes (between 1 and
255)
and offset specifies the offset of the key from the beginning of the data
record, in bytes.
In fact length and offset have the same meanings as in the KEYS clause
of the IDCAMS DEFINE CLUSTER command.
This command is ignored when entry-sequenced or relative record VSAM
datasets are being created.
If this command is not specified, the key field information is taken from
the file attributes stored in the ZIP archive. This command will override
the data stored in the file attributes if it is specified.
-OUTNOERASE
The -OUTNOERASE command is used to help create a new extracted
VSAM dataset. It has the same meaning and restrictions as the
NOERASE clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTNOERASE
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
282
PKZIP for MVS: User Reference
T4ASI025-00-00
-OUTNOIMBED
The -OUTNOIMBED command is used to help create a new extracted
VSAM dataset. It has the same meaning and restrictions as the
NOIMBED clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTNOIMBED
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTNONSPANNED
The -OUTNONSPANNED command is used to help create a new
extracted VSAM dataset. It has the same meaning and restrictions as the
NONSPANNED clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTNONSPANNED
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTNOREPLICATE
The -OUTNOREPLICATE command is used to help create a new
extracted VSAM dataset. It has the same meaning and restrictions as the
NOREPLICATE clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTNOREPLICATE
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
T4ASI025-00-00
VSAM Specific PKUNZIP Commands
283
-OUTNOREUSE
The -OUTNOREUSE command is used to help create a new extracted
VSAM dataset. It has the same meaning and restrictions as the
NOREUSE clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTNOREUSE
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTNOWRITECHK
The -OUTNOWRITECHK command is used to help create a new
extracted VSAM dataset. It has the same meaning and restrictions as the
NOWRITECHECK clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTNOWRITECHK
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTOWNER
The -OUTOWNER command is used to help create a new extracted
VSAM dataset. It has the same meaning and restrictions as the OWNER
clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTOWNER(<owner>)
This information is not stored in the file attributes, however the equivalent
DATA and INDEX level information is.
Note:

284
See Restrictions for PKZIP Version 2.5 for MVS on page 21 for
additional information about this command.
PKZIP for MVS: User Reference
T4ASI025-00-00
-OUTPRIMARY
The -OUTPRIMARY command is used to specify the number of data
units to be used on the primary extent of a new extracted dataset.
The full syntax for this command is:
-OUTPRIMARY(<data units>)
where <data units> is the number of data units to be used in the primary
extent of the new extracted dataset.
This value will only be used if the –OUTSPACE command has also been
used. If the –OUTSPACE command has been used and no value is
coded, the new extracted dataset defaults to a primary extent of 100 data
units. See
–OUTSPACE for the definition of the data unit.
-OUTRECORDSIZE
The -OUTRECORDSIZE command is used to specify the average and
maximum lengths, in bytes, of the data records in a new extracted VSAM
dataset.
The full syntax for the command is:
-OUTRECORDSIZE(average maximum)
where average specifies the average length, in bytes, of each data record
and maximum specifies the maximum length, in bytes, of any data record
In fact average and maximum have the same meanings and restrictions
as in the RECORDSIZE clause of the IDCAMS DEFINE CLUSTER
command:
If this command is not specified, the record size information is taken from
the file attributes stored in the ZIP archive. This command will override
the data stored in the file attributes if it is specified.
-OUTRECOVERY
The -OUTRECOVERY command is used to help create a new extracted
VSAM dataset. It has the same meaning and restrictions as the
RECOVERY clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTRECOVERY
If specified, this command will override the data stored in the file
attributes.
T4ASI025-00-00
VSAM Specific PKUNZIP Commands
285
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTREPLICATE
The -OUTREPLICATE command is used to help create a new extracted
VSAM dataset. It has the same meaning and restrictions as the
REPLICATE clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTREPLICATE
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTREUSE
The -OUTREUSE command is used to help create a new extracted
VSAM dataset. It has the same meaning and restrictions as the REUSE
clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTREUSE
If this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTSECONDARY
The -OUTSECONDARY command is used to specify the number of data
units to be used on the secondary extent of a new extracted dataset.
The full syntax for this command is:
-OUTSECONDARY(<data units>)
where <data units> is the number of data units to be used in the
secondary extent of the new extracted dataset. <data units> may not be
specified as 0.
286
PKZIP for MVS: User Reference
T4ASI025-00-00
This value will only be used if the –OUTSPACE command has also been
used. If the –OUTSPACE command has been used and no value is
coded, the new extracted dataset defaults to a secondary extent of 100
data units. See
–OUTSPACE for the definition of the data unit.
-OUTSHR
The -OUTSHR command is used to help create a new extracted VSAM
dataset. It has the same meaning and restrictions as the
SHAREOPTIONS clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTSHR(<crossregion>[ crosssystem>])
If this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTSPACE
The -OUTSPACE command is used to specify the type of data units to be
used (at the cluster level) for allocating a new extracted dataset.
The full syntax for this command is:
-OUTSPACE(TRK|CYL|REC|MB|KB)
where the type of data unit to be used for allocating the new extracted
dataset is specified by one of the following parameters:
TRK
The extracted dataset is to be allocated by tracks. This is the default
value assigned for the type of data unit if -OUTSPACE is not
specified.
CYL
The extracted dataset is to be allocated by cylinders.
REC
The extracted dataset is to be allocated by records.
MB
The extracted dataset is to be allocated by megabytes. This option
may only be used with ICF catalogs.
KB
The extracted dataset is to be allocated by kilobytes. This option
may only be used with ICF catalogs.
By default, both the primary and secondary extents are allocated at a size
of 100 of these data units. The -OUTPRIMARY or -OUTSECONDARY
commands can be used to change this value.
T4ASI025-00-00
VSAM Specific PKUNZIP Commands
287
Note:

-OUTDATASPACE and -OUTINDXSPACE provide the ability to
specify the allocation parameter for the Data and Index component of
the VSAM cluster. If either –OUTDATASPACE or –
OUTINDXSPACE parameters are specified, then the value specified
or defaulted in a preceding –OUTSPACE command will be ignored,
so no cluster level allocation will be defined for the file to be created.
-OUTSPANNED
The -OUTSPANNED command is used to help create a new extracted
VSAM dataset. It has the same meaning and restrictions as the
SPANNED clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTSPANNED
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTSPEED
The -OUTSPEED command is used to help create a new extracted
VSAM dataset. It has the same meaning and restrictions as the SPEED
clause of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTSPEED
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
288
PKZIP for MVS: User Reference
T4ASI025-00-00
-OUTTO
The -OUTTO command is used to help create a new extracted VSAM
dataset. It has the same meaning and restrictions as the TO clause of the
IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTTO(<date>)
If specified, this command will override the data stored in the file
attributes.
This information is not stored in the file attributes. If this command is not
specified then the value may be defaulted by the IDCAMS DEFINE
CLUSTER command.
-OUTWRITECHK
The -OUTWRITECHK command is used to help create a new extracted
VSAM dataset. It has the same meaning and restrictions as the
OUTWRITECHECK clause of the IDCAMS DEFINE CLUSTER
command.
The full syntax for the command is:
-OUTWRITECHK
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
T4ASI025-00-00
VSAM Specific PKUNZIP Commands
289
VSAM Data Level commands
These commands provide the ability to specify options for the Data
component of the VSAM cluster to be defined. Some of these options
are similar to the options that can be specified at the cluster level using
the –OUT commands listed in the Cluster Level section previously.
Given that these options have similar results, the recommendation is to
use cluster level commands where possible.
-OUTDATACISZ
The -OUTDATACISZ command is used to help create the data
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the CONTROLINTERVALSIZE clause as specified in
the DATA portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTDATACISZ(<size>)
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTDATAEEXT
The -OUTDATAEEXT command is used to help create the data
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the EXCEPTIONEXIT clause as specified in the DATA
portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTDATAEEXT(<mname>)
If specified, this command will override the data stored in the file
attributes.
This information is not stored in the file attributes. If this command is not
specified then the value may be defaulted by the IDCAMS DEFINE
CLUSTER command.
290
PKZIP for MVS: User Reference
T4ASI025-00-00
-OUTDATAFILE
The -OUTDATAFILE command is used to help create the data
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the FILE clause as specified in the DATA portion of
the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTDATAFILE(<ddname>)
There is no default for this command.
If this command is specified then a suitable DD statement should also be
specified in the JCL. Please refer to the FILE clause of the IDCAMS
DEFINE CLUSTER command in the IBM manual Access Method
Services for more details.
-OUTDATANORD
The -OUTDATANORD command is used to help create the data
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the UNORDERED clause as specified in the DATA
portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTDATANORD
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTDATANRUS
The -OUTDATANRUS command is used to help create the data
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the NOREUSE clause as specified in the DATA
portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTDATANRUS
If specified, this command will override the data stored in the file
attributes.
T4ASI025-00-00
VSAM Specific PKUNZIP Commands
291
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTDATANWCK
The -OUTDATANWCK command is used to help create the data
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the NOWRITECHECK clause as specified in the
DATA portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTDATANWCK
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTDATAORD
The -OUTDATAORD command is used to help create the data
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the ORDERED clause as specified in the DATA
portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTDATAORD
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
292
PKZIP for MVS: User Reference
T4ASI025-00-00
-OUTDATAOWNER
The -OUTDATAOWNER command is used to help create the data
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the OWNER clause as specified in the DATA portion
of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTDATAOWNER(<ownerid>)
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTDATAPRI
The -OUTDATAPRI command is used to help create the data component
of a new extracted VSAM dataset. It has the same meaning and
restrictions as the primary attribute of the space clauses as specified in
the DATA portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTDATAPRI(<primary>)
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
Note:

T4ASI025-00-00
This value is only used if –OUTDATASPACE has been coded or
defaulted.
VSAM Specific PKUNZIP Commands
293
-OUTDATARUS
The -OUTDATARUS command is used to help create the data
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the REUSE clause as specified in the DATA portion of
the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTDATARUS
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTDATASEC
The -OUTDATASEC command is used to help create the data
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the secondary attribute of the space clauses as
specified in the DATA portion of the IDCAMS DEFINE CLUSTER
command.
The full syntax for the command is:
-OUTDATASEC(<secondary>)
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
Note:

294
This value is only used if both –OUTDATASPACE and
-OUTDATAPRI commands have been coded or defaulted.
PKZIP for MVS: User Reference
T4ASI025-00-00
-OUTDATASHR
The -OUTDATASHR command is used to help create the data
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the SHAREOPTIONS clause as specified in the DATA
portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTDATASHR(<crossregion>[ crosssystem])
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTDATASPACE
The -OUTDATASPACE command is used to help create the data
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the associated space clauses as specified in the
DATA portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for this command is:
-OUTDATASPACE(TRK|CYL|REC|MB|KB)
where the type of data unit to be used for allocating the data component
of the new extracted dataset is specified by one of the following
parameters:
TRK
The Data component is to be allocated by tracks.
CYL
The Data component is to be allocated by cylinders.
REC
The Data component is to be allocated by records.
MB
The Data component is to be allocated by megabytes. This option
may only be used with ICF catalogs.
KB
The Data component is to be allocated by kilobytes. This option may
only be used with ICF catalogs.
If this command is not specified, the default information is taken from the
file attributes stored in the ZIP archive.
If this attribute is not included in the stored file attributes then there is no
default for this command. In this circumstance, there is no default value
for the primary and secondary extents of the Data component, so if this
command is used, -OUTDATAPRI and -OUTDATASEC commands
must be used to set primary and secondary extent values.
T4ASI025-00-00
VSAM Specific PKUNZIP Commands
295
Note:

The -OUTSPACE command provides the ability to specify the
allocation parameter at the cluster level of the VSAM cluster.

If -OUTSPACE is specified, then the value specified or defaulted in
any preceding -OUTDATASPACE command will be ignored, so no
data level allocation will be defined for the file to be created and the
data level allocation may be defaulted by the IDCAMS DEFINE
CLUSTER command.
-OUTDATAVOL
The -OUTDATAVOL command is used to help create the data
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the VOLUMES clause as specified in the DATA
portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTDATAVOL(<volser>[ <volser> …])
If specified, this command will override the data stored in the file
attributes. Up to 31 volumes can be specified, separated by blanks.
If neither this command nor –OUTVOL is specified, the relevant
information is taken from the file attributes stored in the ZIP archive. If the
file attribute is not stored and this command is not specified then the
value may be defaulted by the IDCAMS DEFINE CLUSTER command.
-OUTDATAWCK
The -OUTDATAWCK command is used to help create the data
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the WRITECHECK clause as specified in the DATA
portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTDATAWCK
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
296
PKZIP for MVS: User Reference
T4ASI025-00-00
VSAM Index Level commands
These commands provide the ability to specify options for the Index
component of the VSAM cluster to be defined. Some of these options
are similar to the options that can be specified at the cluster level using
the –OUT commands listed in the Cluster Level section previously.
Given that these options have similar results, the recommendation is to
use cluster level commands where possible.
Note that VSAM Index Level commands will only be used when creating
new Key Sequenced (KSDS) files, for example, when the –OUTATTR
command specifies INDEXED.
-OUTINDXCISZ
The -OUTINDXCISZ command is used to help create the index
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the CONTROLINTERVALSIZE clause as specified in
the INDEX portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTINDXCISZ(<size>)
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTINDXEEXT
The -OUTINDXEEXT command is used to help create the index
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the EXCEPTIONEXIT clause as specified in the
INDEX portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTINDXEEXT(<entrypoint>)
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
T4ASI025-00-00
VSAM Specific PKUNZIP Commands
297
-OUTINDXFILE
The -OUTINDXFILE command is used to help create the index
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the FILE clause as specified in the INDEX portion of
the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTINDXFILE(<ddname>)
There is no default for this command.
If this command is specified then a suitable DD statement should also be
specified in the JCL. Please refer to the FILE clause of the IDCAMS
DEFINE CLUSTER command in the IBM manual Access Method
Services for more details.
-OUTINDXNORD
The -OUTINDXNORD command is used to help create the index
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the UNORDERED clause as specified in the INDEX
portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTINDXNORD
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTINDXNRUS
The -OUTINDXNRUS command is used to help create the index
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the NOREUSE clause as specified in the INDEX
portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTINDXNRUS
If specified, this command will override the data stored in the file
attributes.
298
PKZIP for MVS: User Reference
T4ASI025-00-00
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTINDXNWCK
The -OUTINDXNWCK command is used to help create the index
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the NOWRITECHECK clause as specified in the
INDEX portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTINDXNWCK
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTINDXORD
The -OUTINDXORD command is used to help create the index
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the ORDERED clause as specified in the INDEX
portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTINDXORD
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
T4ASI025-00-00
VSAM Specific PKUNZIP Commands
299
-OUTINDXOWNER
The -OUTINDXOWNER command is used to help create the index
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the OWNER clause as specified in the INDEX portion
of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTINDXOWNER(<ownerid>)
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTINDXPRI
The -OUTINDXPRI command is used to help create the index
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the primary attribute of the space clauses as specified
in the INDEX portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTINDXPRI(<primary>)
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
Note:

300
This value is only used if –OUTINDXSPACE has been coded or
defaulted.
PKZIP for MVS: User Reference
T4ASI025-00-00
-OUTINDXRUS
The -OUTINDXRUS command is used to help create the index
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the REUSE clause as specified in the INDEX portion
of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTINDXRUS
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTINDXSEC
The -OUTINDXSEC command is used to help create the index
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the secondary attribute of the space clauses as
specified in the INDEX portion of the IDCAMS DEFINE CLUSTER
command.
The full syntax for the command is:
-OUTINDXSEC(<secondary>)
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
Note:

T4ASI025-00-00
This value is only used if both -OUTINDXSPACE and -OUTINDXPRI
commands have been coded or defaulted.
VSAM Specific PKUNZIP Commands
301
-OUTINDXSHR
The -OUTINDXSHR command is used to help create the index
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the SHAREOPTIONS clause as specified in the
INDEX portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTINDXSHR(<crossregion>[ crosssystem])
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
-OUTINDXSPACE
The -OUTINDXSPACE command is used to help create the index
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the associated space clauses as specified in the
INDEX portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for this command is:
-OUTINDXSPACE(TRK|CYL|REC|MB|KB)
where the type of data unit to be used for allocating the index component
of the new extracted dataset is specified by one of the following
parameters:
TRK
The Index component is to be allocated by tracks.
CYL
The Index component is to be allocated by cylinders.
REC
The Index component is to be allocated by records.
MB
The Index component is to be allocated by megabytes. This option
may only be used with ICF catalogs.
KB
The Index component is to be allocated by kilobytes. This option
may only be used with ICF catalogs.
If this command is not specified, the default information is taken from the
file attributes stored in the ZIP archive.
If this attribute is not included in the stored file attributes then there is no
default for this command. In this circumstance, there is no default value
for the primary and secondary extents of the Index component, so if this
command is used, -OUTINDXPRI and -OUTINDXSEC commands must
be used to set primary and secondary extent values.
302
PKZIP for MVS: User Reference
T4ASI025-00-00
Note:

The -OUTSPACE command provides the ability to specify the
allocation parameter at the cluster level of the VSAM cluster. If –
OUTSPACE is specified, then the value specified or defaulted in any
preceding –OUTINDXSPACE command will be ignored, so no
index level allocation will be defined for the file to be created and the
index level allocation may be defaulted by the IDCAMS DEFINE
CLUSTER command.
-OUTINDXVOL
The -OUTINDXVOL command is used to help create the index
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the VOLUMES clause as specified in the INDEX
portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTINDXVOL(<volser>[ <volser> …])
If specified, this command will override the data stored in the file
attributes. Up to 31 volumes can be specified, separated by blanks.
If neither this command nor the –OUTVOL command is specified, the
relevant information is taken from the file attributes stored in the ZIP
archive. If the file attribute is not stored and this command is not specified
then the value may be defaulted by the IDCAMS DEFINE CLUSTER
command.
-OUTINDXWCK
The -OUTINDXWCK command is used to help create the index
component of a new extracted VSAM dataset. It has the same meaning
and restrictions as the WRITECHECK clause as specified in the INDEX
portion of the IDCAMS DEFINE CLUSTER command.
The full syntax for the command is:
-OUTINDXWCK
If specified, this command will override the data stored in the file
attributes.
If this command is not specified, the relevant information is taken from
the file attributes stored in the ZIP archive. If the file attribute is not stored
and this command is not specified then the value may be defaulted by the
IDCAMS DEFINE CLUSTER command.
T4ASI025-00-00
VSAM Specific PKUNZIP Commands
303
Chapter 25. What To Do If You Have a Problem
If you have any inquiries to make regarding PKZIP for MVS or if you
experience any problems with it that you are unable to solve, please
contact your local distributor, ASi or Targetfour who will be glad to offer
any support you may need.
Problems with PKZIP generally fall into one of two categories:
1. Problems getting the product to do what you want it to do
2. Problems where the product fails in some way while processing your
request.
Appropriate actions in these two cases are documented in the next two
sections of this chapter.
If the solution to the problem requires updating the product in some way,
this update will generally be supplied in the form of a Patch Notes. These
Patch Notes and the process to use when applying a patch note are
described in later sections of this chapter.
Problems can occur that require additional information, particularly trace
details, to be supplied to assist in problem resolution. The final section of
this chapter describes how to obtain the trace information that may be
requested.
Problems using the product
If you have any problems using PKZIP for MVS, the first reference is of
course, this manual. It is intended to fully describe both the product and
how to use the product. In particular, the introductory chapters (such as
Chapter 7. Processing PDS Members on page 57) are intended to
provide examples and explanation that should cover the majority of the
uses of the product.
If this manual does not provide you with sufficient information, then
please contact your support representative, indicating exactly what you
are trying to achieve and the difficulties you have had. They will be
pleased to help you and will use the information to update the manual.
If difficulties are experienced when using PKZIP or PKUNZIP it is often
worth viewing the contents of the ZIP archive referenced by the job. Try
to compare the ZIP file names contained in the archive with the datasets
you are trying to compress or extract to (bearing in mind any commands
which may modify the names in question). Run a PKUNZIP -TEST on the
archive to check the ZIP file’s integrity.
T4ASI025-00-00
What to do if you have a problem
305
Failures using the product
The headings below describe some of the typical failures that might be
encountered and what to do in the event of such a problem.
Dynalloc Errors
If PKZIP for MVS outputs a Dynamic Allocation (SVC99) error code then
you should look this code up in the IBM manual that is appropriate to your
level of the Operating System. If you do not have access to this manual
then contact IBM or your supplier for more details.
Typical errors include:

Invalid output dataset name due to; spaces, lower case or special
characters in the output dataset name, or incorrect use of the -HLQ
command

Incorrect volume or unit names specified.
User Abends
In some situations PKZIP may produce a User Abend in response to an
error. User Abends are identified by a WTO (Write To Operator)
message which is produced by PKZIP or PKUNZIP. Examples include:
PKZIP ABEND U0004
PKUNZIP ABEND U0008
If you experience a User Abend then please refer to Chapter 27. User
Abend Codes for more information.
System Abends
System Abends such as SB37, S001 etc are usually accompanied by a
system message. For example:
IEC030I B37-04,IFG0032,MYJOB,MYSTEP,MYFILE,416,TAPE11
System abends can often be attributed to the DASD resources allocated
for a dataset, for example, a lack of disk space or too few directory
blocks for a PDS will cause problems.
Look up the system message and abend code in the IBM System
Messages manual. You may find that increasing the primary and
secondary allocations for the failing dataset or changing the volume on
which the dataset resides may cure the problem. If the problem cannot
be fixed then report it to your supplier.
Program Abends
A program abend is identified by an IEA995I system message where the
System Completion Code is 0Cx. For example:
306
PKZIP for MVS: User Reference
T4ASI025-00-00
IEA995I SYMPTOM DUMP OUTPUT
SYSTEM COMPLETION CODE=0C4 REASON CODE=00000010
TIME=15.42.57 SEQ=03234 CPU=0000 ASID=0023
PSW AT TIME OF ERROR 078D1000
8002DCA4 ILC 6 INTC 10
ACTIVE LOAD MODULE
ADDRESS=0002A000
OFFSET=00003CA4
NAME=ZFSUDF00
DATA AT PSW 0002DC9E - CB045832 0018D77F 30003000
GPR 0-3 0001EA84 014004CD 0001A15B 5ED20140
GPR 4-7 0001EA84 00000080 0001EAFE 00003FFF
GPR 8-11 0001E9FC 0001EA19 000186A0 00007BF4
GPR 12-15 0002D200 0001E9A8 000000FF FE50F0D1
END OF SYMPTOM DUMP
In the unlikely event that you receive a program Abend you should obtain
an up-to-date copy of the patch notes to see if there are any patches
which can be applied to solve the problem. The patch notes are available
from your supplier, or the ASi or Targetfour web sites. Further
information on the Patch Process is supplied later in this chapter.
If no patch is available to correct the problem then you should report the
Abend to your supplier immediately, so that a fix can be found. When
reporting the problem you should supply:

A copy of the IEA995I message in its entirety.

A copy of the SYSPRINT output, ensuring that –NOECHO has not
been used so that all the commands used are visible.

A -VIEWDETAIL of the archive being processed.

Full dataset information (e.g. DCB) for the files and archives being
processed.

The DUMP output from the failing program.
Dumps are obtained by inserting a //SYSUDUMP DD SYSOUT=* (or
similar) statement into the JCL. Dumps may also be obtained using a
//SYSABEND DD SYSOUT=* or similar statement, however the
SYSABEND dumps contain more MVS control information that is seldom
needed to diagnose a ZIP problem. Machine readable dumps created
using SYSMDUMP are not as useful and should only be supplied as a
last resort.
The best way to pass this information to support personnel is to create
sequential dataset(s) containing this output, then use PKZIP for MVS to
compress the output for transmission. Even though (with the exception
of SYSMDUMP) this is text data, the output should be compressed using
the -BINARY and -ZDW commands. The sequential files used for this
output (with the exception of SYSMDUMP) should be variable length with
a logical record length of 137 bytes.
Finally, it is possible that changing the commands in use or the files being
processed will enable you to circumvent the problem. Even if this is the
case, please report the abend so that it can be fixed for the ongoing
improvement of the product.
T4ASI025-00-00
What to do if you have a problem
307
Patch Notes
As noted above fixes can be issued to correct problems found with a
specific level of the PKZIP software. In addition, the Patch Notes can
contain recent information and additional documentation that might assist
with a problem. Regardless of your problem, it may be worthwhile to
obtain the latest level of patch notes. In addition, it is recommended that
the patch notes be reviewed from time to time and new maintenance be
applied to ensure that your PKZIP processing continues to be problem
free.
Documentation on the process of applying patches and reporting on
these is included in the Patch Notes.
The Patch Notes Document is available from your supplier, the ASi web
site, the Targetfour web site, or the Targetfour Help Desk (contact
information can be found on the inside front cover).
The Patch Process
Patches to PKZIP for MVS are typically applied using the IBM utility
AMASPZAP. The patches are supplied in the form of sample JCL and
actual control cards for that utility and are applied by executing the JCL in
a batch job. Patches should always receive the return code of 0 – any
non zero return codes should be investigated.
When applying patches, we recommend that the user take a copy of the
library prior to the patch being applied. This will provide a convenient way
to remove the patches, should a problem occur with the patching
process.
In addition to patching the actual affected modules, patches for this level
of PKZIP for MVS also update a ‘patch table’, which can be quickly used
to determine which patches have been applied. See Printing the applied
patches - ZIPPATCH later for more information.
Patches also include a checksum which should ensure that patches are
input as expected.
Printing the applied patches - ZIPPATCH
The ZIPPATCH program will normally be requested by support staff to
determine the level of patches installed on the system. To execute this
program, use JCL similar to the following, changing the STEPLIB to
match the installation Load Library for PKZIP. This JCL is supplied in
member ZIPPATCH of the Installation Control Library.
//ZIPPATCH EXEC PGM=ZIPPATCH
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//*
When executed, the program will output information to SYSPRINT like
the following:
308
PKZIP for MVS: User Reference
T4ASI025-00-00
ZIPP100I: ZIPPATCH 2.5/x
ZIPP101I: Patch Table Entries:
ZIPP110I:
,
,
2,
,
ZIPP199I: ZIPPATCH 2.5/x
starting.
4,
,
ending.
6,
,
8,
.
The output above indicates that this system has patches 2, 4, 6 and 8
applied.
T4ASI025-00-00
What to do if you have a problem
309
Messages from ZIPPATCH processing
The format of the messages produced by ZIPPATCH is as follows:
ZIPPnnns < - Message Text ->
where:
nnn
is the message number.
s
is the severity. The possible values are:
E
I
100
Error
Information
Severity: Information
Message Text: ZIPPATCH version starting.
Explanation: The indicated level of ZIPPATCH processing is starting.
Action: None.
101
Severity: Information
Message Text: Patch Table Entries:
Explanation: Following lines indicate which patches have been applied.
Action: None.
110
Severity: Information
Message Text: …
Explanation: Each line indicates up to 10 patch numbers for patches
that have been applied.
Action: None.
199
Severity: Information
Message Text: ZIPPATCH version ending.
Explanation: The indicated level of ZIPPATCH processing is
terminating.
Action: None.
310
PKZIP for MVS: User Reference
T4ASI025-00-00
PKZIP for MVS Trace facilities
In certain circumstances, when directed by support personnel, it may
necessary to obtain trace information to assist in resolving a problem.
This section describes how to do this, and what should be done to pass
this information back to the support team.
There are two different trace mechanisms used by PKZIP for MVS.
These are selected using the following commands:

-TRACE command.

-DG (Debug) command.
Information for each of these commands is presented in the following
sections.
Tracing has the capability of producing a significant amount of output and
will severely impact the performance of any PKZIP for MVS processing.
It should not be used except when directed to do so by support
personnel.
-TRACE command
The -TRACE command can be used to trace all
compression/decompression processing for example, the command
processing.
Tracing can be performed at a number of levels and can be output with a
variety of additional data. The exact level and additional data is specified
by parameters to the TRACE command. The support personnel
requesting the trace information will specify the exact parameters
required. An example of a Trace command is:
-TRACE(LEVEL 3)
The trace output will be displayed along with other ZIP output in the
SYSPRINT DD. An example of the Trace output is as follows:
TRACE: 17:41:34.777136 04/08/1999 TCB:006DE570 TSKS1000
TRACE: Task starting... ZIPDTASK
TRACE: 17:41:34.852029 04/08/1999 TCB:006CAD80 DCM0100
TRACE: DTASK task starting
This output contains only text characters.
The best way to pass this information to support personnel is to create a
sequential dataset containing this output (support personnel will probably
ask for all the output so this will be included anyway), then use PKZIP for
MVS to compress the output for transmission. Even though this is text
data, the output should be compressed using the –BINARY and –ZDW
commands. The sequential file used for this output should be variable
length with a logical record length of 137 bytes.
T4ASI025-00-00
What to do if you have a problem
311
If it is not possible to compress the data on the mainframe, then this
output may be transferred to a PC using ASCII and CRLF conversion.
Note that this output must be kept separate from the -DG command
output, which must be treated as binary data as explained below.
-DG command
The -DG command provides detailed trace information for file related
processing, for example, the I/O activity to datasets.
To specify this trace use the following command:
-DG
-DG trace output is written to one of a number of special DD statements,
with different parts of the processing outputting trace information to
different DDs. The DD statements used are listed in the following JCL
example.
//PRTFILEU
//PRTFILEZ
//PRTFILE1
//PRTFILE2
//PRTFILE3
//PRTFILE4
//PRTFILE5
//PRTFILE6
DD
DD
DD
DD
DD
DD
DD
DD
SYSOUT=*
SYSOUT=*
SYSOUT=*
SYSOUT=*
SYSOUT=*
SYSOUT=*
SYSOUT=*
SYSOUT=*
These DDs must be added to the JCL associated with any PKZIP for
MVS execution that uses the –DG command. Specifying the -DG
command without including these DD statements can result in a number
of unpredictable Abends.
The data output to each of these DD’s will look like the following:
MAINFSU2
MAINGEN*
MAINTERM
MAINUZ2X
\
`M
Ö
D
Ö
0
!y
!y
!y
Ö
Ö
Ö
8
8
8
*
*
*
¬
¬
MH
MH
}
{
{
…
…
…
…
This data includes both binary and text data as can be seen when the
preceding lines are displayed in hexadecimal:
MAINFSU2
`M 0
…
DCCDCEEF0000007D80F2000000000000000000000000000000000000000000000000000000000000
41956242000400940208000000000000000000000000000000000000000000000000000000000000
-----------------------------------------------------------------------------MAINGEN*
Ö
!y Ö
8
*
¬
MH
{
…
DCCDCCD500B000E3005A00E3000100EF00E5000000000000805F00E580DC00E700E700EC00000000
4195755C020002C400A802C4000D02D802EC00000000000000FE02E8054802A802A802B000000000
-----------------------------------------------------------------------------MAINTERM
\
D !y Ö
8
*
¬
MH
…
DCCDECDD804E001C005A00E3000100EF00E5000000000000805F00E580DC00E700E7000000000000
41953594081000D400A802C4000D02D802EC00000000000000FE02E8054802A802A8000000000000
-----------------------------------------------------------------------------MAINUZ2X
Ö
!y Ö
8
*
}
{
…
DCCDEEFE00B000E3005A00E3000100EF00E5000000000000008600E5802D00E100E100EC00000000
41954927020002C400A802C4000D02D802EC00000000000004D402E8034002B002B002B000000000
312
PKZIP for MVS: User Reference
T4ASI025-00-00
The best way to pass this information to support personnel is to create
sequential datasets containing this output, then use PKZIP for MVS to
compress the datasets for transmission. This output should be
compressed with the -BINARY and -ZDW commands. The sequential
files used for this output should be variable length with a logical record
length of 137 bytes.
If it is not possible to compress the data on the mainframe, then this
output may be transferred to a PC using the binary option (do not convert
the data to ASCII or append CRLFs). However this method removes the
record structure of the trace information and may potentially translate
some of the data, so is not recommended.
T4ASI025-00-00
What to do if you have a problem
313
Chapter 26. PKZIP and PKUNZIP Messages
This chapter gives details of the standard messages produced by PKZIP
and PKUNZIP. All the messages detailed in this section are written to
SYSPRINT. Most messages are the same in both PKZIP and PKUNZIP;
where there is a difference, this is noted in the explanation for the
message. Where the details of the message refer to PKZIP or PKUNZIP,
it should also be taken to refer to the other program.
Messages from the ZIPPATCH program are described in the section
Messages from ZIPPATCH processing in Chapter 25. What To Do If You
Have a Problem. Messages from the ZIPPLIC licensing program are
described in Chapter 28. Licensing Messages.
Message format
The format of the messages produced by both PKZIP and PKUNZIP is as
follows:
prefixnnns < - Message Text ->
where:
prefix
is a prefix indicated from which program the message
originated. The possible values are:
ZIP
UNZIP
for the PKZIP program
for the PKUNZIP program
nnn
is the message number.
s
is the severity. The possible values are:
F
E
W
I
Fatal
Error
Warning
Information
The messages produced by the PKZIP and PKUNZIP programs are
described in the following section, listed in order of message number.
Details of messages produced by PKZIP and PKUNZIP
010
Severity: Information
Message Text: command line output
Explanation: Command line input from SYSIN.
Action: None.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
315
011
Severity: Information
Message Text: command line output
Explanation: Command line input from PARM.
Action: None.
012
Severity: Information
Message Text: command line output
Explanation: Command line input from the configuration file.
Action: None.
020
Severity: Error
Message Text: PKZIP does not have an installed licence (Product
product).
Explanation: PKZIP has not been licensed (correctly). This may indicate
incorrect installation. See Licensing in Appendix A. Installation Guide and
Appendix B. Licensing Guide for details of the PKZIP licensing utility.
PKZIP will perform no further processing for the current file.
Action: Contact your supplier for new licence details.
021
Severity: Error
Message Text: PKZIP licence has expired (Product product).
Explanation: The PKZIP licence has expired. This may indicate
incorrect installation. See Licensing in Appendix A. Installation Guide and
Appendix B. Licensing Guide for details of the PKZIP licensing utility.
PKZIP will perform no further processing for the current file.
Action: Contact your supplier for new licence details.
022
Severity: Error
Message Text: PKZIP is licensed for a different CPU (Product product).
Explanation: PKZIP is not licensed for the CPU on which it is currently
running. This may indicate incorrect installation. See Licensing in
Appendix A. Installation Guide and Appendix B. Licensing Guide for
details of the PKZIP licensing utility.
PKZIP will perform no further processing for the current file.
Action: Contact your supplier for new licence details.
316
PKZIP for MVS: User Reference
T4ASI025-00-00
023
Severity: Warning
Message Text: PKZIP licence will expire in number days for Product
product.
Explanation: number is the number of days before the licence expires.
PKZIP’s license will expire in the specified time period. This message will
start to appear about 4 weeks before the current licence expires - contact
your supplier for details of a new licence.
See Licensing in Appendix A. Installation Guide and Appendix B.
Licensing Guide for details of the PKZIP licensing utility.
Action: Contact your supplier for new licence details.
025
Severity: Error
Message Text: Licence has not started on this processor for product
product.
Explanation: The product is authorised for use on this processor starting
at a later date.
Action: Contact your supplier for new licence details, if the current
starting date is not appropriate.
026
Severity: Error
Message Text: Error processing the PKZIP Licensing database.
Explanation: The Licensing database associated with PKZIP has been
found to be corrupt or missing. The product will no longer function
completely.
Action: Restore your product files from a backup or re-install the product.
Reapply the License updates. Contact your supplier for additional
information.
091
Severity: Error
Message Text: Subtask taskid terminated unexpectedly - review Job Log
and preceding messages for further information.
Explanation: The indicated subtask has terminated without completing
its processing. A system problem or other unexpected error has been
detected.
Action: Review the Job Log and output for other messages which
describe the problem. Rectify the indicated error and rerun the job.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
317
092
Severity: Error
Message Text: File processing not completed due to error: fileid.
Explanation: The file has not been completely processed, due to errors
during the processing of this or previous files.
Action: Review the Job Log and output for other messages which
describe the problem. Rectify the indicated error and rerun the job.
099
Severity: Information
Message Text: Output Archive successfully created/updated.
Explanation: Processing to create the output archive has completed and
it should be available for further processing. Preceding messages will
indicate file(s) that were not placed in the archive because of errors in
selection or processing.
Action: Use the messages to determine the file(s) that were not correctly
placed in the archive. Correct the errors and re-run as appropriate
101
Severity: Information
Message Text: program version patch patch starting: date-time.
Explanation: PKZIP/PKUNZIP processing is starting. The version and
patch level (highest applied patch) in use is displayed.
Action: None.
102
Severity: Information
Message Text: program version ending.
Explanation: PKZIP/PKUNZIP processing is ending. The version used
is displayed.
Action: None
104
Severity: Error
Message Text: ARCHIVE, ARCHINDD and/or ARCHOUTDD missing.
Explanation: There is insufficient information to determine the target or
input archives. Processing is not possible.
Action: Specify the ARCHIVE, ARCHINDD and/or ARCHOUTDD
command(s) and rerun the processing.
318
PKZIP for MVS: User Reference
T4ASI025-00-00
106
Severity: Error
Message Text: ARCHIVE file ziparch could not be opened.
Explanation: ziparch is the dataset name of the ZIP archive.
The file has been specified in the ARCHIVE command. However, PKZIP
can’t find or can’t open this file.
Action: Specify an existing and accessible file.
107
Severity: Error
Message Text: No licence for ISPF panels found.
Explanation: The ISPF licence was not found in the licence database,
although PKZIP was called from an ISPF panel.
Action: Supply an ISPF licence and rerun the program.
108
Severity: Error
Message Text: GZIP compression processing will not update an existing
archive.
Explanation: An input archive has been specified which is only
supported for -VIEW processing. GZIP compression processing can only
be used to create new archives. Delete the input archive and/or do not
use ARCHINDD for GZIP compression processing.
Action: Correct and re-run this processing.
109
Severity: Warning
Message Text: Archive starts with XXXXXXXXx, which is not a valid
archive identifier.
Explanation: The first few characters of the archive have been checked
for the GZIP/ZIP archive identifier characters and these have not been
found. Either the file is not an archive or it has not been correctly
created/transmitted.
Action: Check that the archive identified has been correctly specified and
created (for example, has been transferred as a Binary file).
120
Severity: Error
Message Text: Unable to extract ZIP file zipfile, output dataset already
exists.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
319
Explanation: zipfile is the ZIP file name that PKUNZIP is attempting to
extract.
PKUNZIP has been requested to extract the specified ZIP file. However,
the dataset to which the ZIP file would be extracted already exists, and
would be overwritten if the ZIP file was extracted. PKUNZIP will not
overwrite datasets or members unless the -OVERWRITE command is
specified.
Action: Specify the correct file for extraction from the ZIP archive. Modify
the intended destination for the ZIP file by using the -HLQ command or
-NOHIERARCHY and -ZIPCUR commands. Alternatively specify the
-OVERWRITE command if the dataset should be overwritten by the
extracted file.
121
Severity: Warning
Message Text: Unable to determine file type for dataset dset,
DYNALLOC error code Xerrcode
Explanation: dset is the dataset name that is being examined
errcode is the error code returned by DYNALLOC
PKZIP/PKUNZIP cannot determine the file type for the specified dataset
whilst examining the files for compression/decompression. The
DYNALLOC macro has returned the specified error code. The specified
dataset will not be compressed, although other files that have been
specified will be.
Action: Determine the error, using the error code provided, and rerun the
program. Note that some file types may not be able to be determined
using PKZIP/PKUNZIP.
122
Severity: Error
Message Text: Invalid file specification supplied: filespec
Explanation: filespec is the name that has been supplied.
The file specification that has been supplied is invalid and cannot be
processed by PKZIP/PKUNZIP.
Action: Correct the specification and rerun the program.
123
Severity: Error
Message Text: ZIPCUR DD statement does not refer to a PDS
Explanation: The -ZIPCUR command or DD statement has been
specified to PKZIP/PKUNZIP but it does not specify a dataset which is a
PDS.
Action: Specify a PDS in the -ZIPCUR command, or remove the
-ZIPCUR command and rerun the program.
320
PKZIP for MVS: User Reference
T4ASI025-00-00
124
Severity: Error
Message Text: Output dataset name has zero length: zipfile
Explanation: zipfile is the ZIP file that PKUNZIP is attempting to extract.
The output dataset name constructed by PKUNZIP has zero length. The
dataset name is created from the ZIP file name and modified according
to various PKUNZIP commands such as -HLQ, -ZIPCUR, -MAKEPDS.
Action: Review the original ZIP file name with respect to the PKUNZIP
commands that have been specified (for example the combination of
-NOHIERARCHY and -MAKEPDS could result in a member name but no
associated PDS name). Correct the commands and re-run the job.
125
Severity: Error
Message Text: Output dataset name too long: zipfile
Explanation: zipfile is the ZIP file that PKUNZIP is attempting to extract.
The output dataset name constructed by PKUNZIP is not a valid MVS
dataset name. The dataset name is created from the ZIP file name and
modified according to various PKUNZIP commands such as -HLQ,
-ZIPCUR and -MAKEPDS.
Action: Review the original ZIP file name with respect to the PKUNZIP
commands that have been specified (for example did the -HLQ
command or -ZIPCUR command substitute too many characters?).
Correct the commands and re-run the job.
126
Severity: Error
Message Text: No output dataset name created: zipfile
Explanation: zipfile is the ZIP file that PKUNZIP is attempting to extract.
PKUNZIP was unable to construct an output dataset name for the given
ZIP file name.
Action: Review the original ZIP file name with respect to the PKUNZIP
commands that have been specified. Correct the commands and re-run
the job. If problems persist then contact your supplier for assistance.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
321
127
Severity: Error
Message Text: Output member name too long: zipfile
Explanation: zipfile is the ZIP file that PKUNZIP is attempting to extract.
The output member name constructed by PKUNZIP is not a valid MVS
member name. The member name is created from the last component of
the ZIP file name and modified according to various PKUNZIP
commands such as -HLQ and -CNVEXT.
Action: Review the original ZIP file name with respect to the PKUNZIP
commands that have been specified. Correct the commands and re-run
the job.
128
Severity: Error
Message Text: Output member name contains path: zipfile
Explanation: zipfile is the ZIP file that PKUNZIP is attempting to extract.
The output member name constructed by PKUNZIP is not a valid MVS
member name. The member name created will vary according to the
various PKUNZIP commands specified (e.g. -HLQ, -MAKEPDS,
-CNVEXT).
Action: Review the original ZIP file name with respect to the PKUNZIP
commands that have been specified. Correct the commands and re-run
the job. If problems persist then contact your supplier for assistance.
129
Severity: Warning
Message Text: No files matched/available for file selection selection
Explanation: selection is the selection that PKZIP is attempting to match
with real files, or that PKUNZIP is attempting to match with the ZIP
archive. No files can be matched with the specified selection, or any that
were matched could not be processed. Note that other selections may be
valid, in which case those selections will be actioned.
Action: Review the selections that have been specified and ensure that
they are correct. If necessary, correct the commands and re-run the job.
322
PKZIP for MVS: User Reference
T4ASI025-00-00
180
Severity: Error
Message Text: Unable to allocate configuration dataset to DD name
ddname, DYNALLOC error code errcode, name dataset.
Explanation: ddname is the ddname that ZIP was trying to allocate.
errcode is the return code generated by the DYNALLOC (SVC99) macro.
This message is output by ZIP when it is unable to allocate a
configuration dataset.
Action: Ensure that the configuration dataset is correctly specified and
allocated. Note that the problem may be with the default name (in which
case the DD name will be ZIPCFG rather than CONFIG)
181
Severity: Error
Message Text: Unable to open configuration file with DD name ddname,
return code errcode
Explanation: ddname is the ddname for the dataset being opened.
errcode is the return code from the OPEN macro.
This message is output by PKZIP when it is unable to open the default or
specifically allocated configuration file
Action: Ensure that the configuration file is correctly allocated and
specified. Examine the return code to determine, and correct, the exact
problem. If the problem is with the default name the DD name will be
ZIPCFG rather than CONFIG.
190
Severity:
Message Text:
Explanation: Refer to Patch Notes for explanation of message.
Action: Refer to Patch Notes.
191
Severity:
Message Text:
Explanation: Refer to Patch Notes for explanation of message.
Action: Refer to Patch Notes.
192
Severity:
Message Text:
Explanation: Refer to Patch Notes for explanation of message.
Action: Refer to Patch Notes.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
323
193
Severity:
Message Text:
Explanation: Refer to Patch Notes for explanation of message.
Action: Refer to Patch Notes.
194
Severity:
Message Text:
Explanation: Refer to Patch Notes for explanation of message.
Action: Refer to Patch Notes.
201
Severity: Error
Message Text: Parameter "-" found with no qualifier.
Explanation: A command prefix has been found, but there is no
subsequent command to be processed.
Action: Correct the parameter.
202
Severity: Error
Message Text: Processing command command is invalid.
Explanation: command is the command that has been input to
PKZIP/PKUNZIP.
The specified command is not recognised by this version of PKZIP.
Action: Correct the parameter.
203
Severity: Error
Message Text: Viewing parameter parameter is unknown.
Explanation: parameter is the parameter input to PKZIP/PKUNZIP.
The specified parameter to the View command is not recognised by this
version of PKZIP.
Action: Correct the parameter.
324
PKZIP for MVS: User Reference
T4ASI025-00-00
204
Severity: Error
Message Text: Password supplied is too long: password
Explanation: password is the password that has been recognised by
PKZIP/PKUNZIP.
The specified password is longer than the maximum allowed length of 64
characters.
Action: Correct the password.
205
Severity: Error
Message Text: Incorrect password format supplied: password
Explanation: password is the password that has been recognised by
PKZIP/PKUNZIP.
The specified password is in an unrecognised format.
Action: Correct the password.
206
Severity: Error
Message Text: No password supplied: password
Explanation: password is the password that has been recognised by
PKZIP/PKUNZIP.
The -PASSWORD command has been input, but no actual password has
been supplied.
Action: Correct the password command to include the actual password.
207
Severity: Error
Message Text: Command beginning: Command is too long - discarded.
Explanation: Command is the start of the input command detected in the
input. The command has been continued for too many characters. It has
been discarded.
Action: Correct the command or shorten it by removing white space (for
example blank characters).
208
Severity: Error
Message Text: Command has not been completed (Input file: file).
Explanation: A command was detected in the input file. Further input is
required but there are no more records in the input file.
Action: Complete the command in the input file.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
325
211
Severity: Error
Message Text: MS-DOS file specification filespec is incorrectly
delimited.
Explanation: filespec is the filename that has been recognised by
PKZIP/PKUNZIP.
The filename specified has a delimiter which indicates that it is being
presented in MS-DOS format, but no end of filename delimiter has been
found.
Action: Correct the parameter.
212
Severity: Error
Message Text: METHOD option parameter is unknown.
Explanation: parameter is the METHOD parameter that has been input.
The specified parameter to the -METHOD command is not recognised by
this version of PKZIP.
Action: Correct the parameter.
213
Severity: Error
Message Text: ARCHIVE dataset name supplied is too long: dataset
name
Explanation: dataset name is the dataset name that has been input.
The specified dataset name supplied with the -ARCHIVE command is
longer than the maximum allowed length of 44 characters.
Action: Correct the dataset name.
214
Severity: Error
Message Text: Incorrect ARCHIVE dsname format supplied: dataset
name
Explanation: dataset name is the dataset name that has been input.
The dataset name specified by the -ARCHIVE command is not in a
recognisable format.
Action: Correct the dataset name.
326
PKZIP for MVS: User Reference
T4ASI025-00-00
215
Severity: Error
Message Text: No ARCHIVE dsname supplied: dataset name
Explanation: dataset name is the dataset name that has been input.
The dataset name supplied with the -ARCHIVE command is not present.
Action: Supply a dataset name with the -ARCHIVE command.
216
Severity: Error
Message Text: command volume name supplied is too long: volume
name
Explanation: volume name is the volume name that has been input.
The specified volume name supplied with the command is longer than
the maximum allowed length of 6 characters.
Action: Correct the volume name.
217
Severity: Error
Message Text: Incorrect command volume format supplied: volume
name
Explanation: volume name is the volume name that has been input.
The volume name specified by the command is not in a recognisable
format.
Action: Correct the volume name.
218
Severity: Error
Message Text: Command: command volume count exceeded.
Explanation: More than 31 volumes have been specified.
Action: Reduce the number of volumes specified to a maximum of 31.
219
Severity: Error
Message Text: TRAN table name supplied is too long: table name
Explanation: table name is the module name that has been input.
The translation table name supplied with the -TRAN command is longer
than the 8 character maximum.
Action: Correct the translation table name.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
327
220
Severity: Error
Message Text: Incorrect TRAN table name format supplied: table name
Explanation: table name is the module name that has been input.
The translation table name specified by the -TRAN command is not in a
recognisable format.
Action: Correct the translation table name.
221
Severity: Error
Message Text: No TRAN table name supplied: table name
Explanation: table name is the module name that has been input.
The translation table name supplied with the -TRAN command is not
present.
Action: Supply a translation table name with the -TRAN command.
222
Severity: Error
Message Text: FTRAN table name supplied is too long: table name
Explanation: table name is the module name that has been input.
The translation table name supplied with the -FTRAN command is longer
than the 8 character maximum.
Action: Correct the translation table name.
223
Severity: Error
Message Text: Incorrect FTRAN table name format supplied: table
name
Explanation: table name is the module name that has been input.
The translation table name specified by the -FTRAN command is not in a
recognisable format.
Action: Correct the translation table name.
224
Severity: Error
Message Text: No FTRAN table name supplied: table name
Explanation: table name is the module name that has been input.
The translation table name supplied with the -FTRAN command is not
present.
Action: Supply a translation table name with the -FTRAN command.
328
PKZIP for MVS: User Reference
T4ASI025-00-00
225
Severity: Error
Message Text: Delimiter too long: delimiter
Explanation: delimiter is the delimiter that has been input.
The record delimiter supplied with the -DELIM command is longer than
the maximum 4 characters.
Action: Modify the delimiter supplied.
226
Severity: Error
Message Text: Unknown delimiter supplied: delimiter
Explanation: delimiter is the delimiter that has been input.
The delimiter supplied with the -DELIM command is invalid or has invalid
contents.
Action: Correct the supplied delimiter.
227
Severity: Error
Message Text: Incorrect delimiter string format supplied: delimiter
Explanation: delimiter is the delimiter that has been input.
The delimiter string supplied with the -DELIM command has an incorrect
format
Action: Correct the supplied delimiter.
228
Severity: Error
Message Text: No delimiter string supplied: delimiter
Explanation: delimiter is the delimiter that has been input.
No valid delimiter string has been supplied with the -DELIM command.
Action: Correct the supplied delimiter.
229
Severity: Error
Message Text: Terminator too long: terminator
Explanation: terminator is the terminator that has been input.
The file terminator supplied with the -TERM command is longer than the
maximum 4 characters.
Action: Modify the terminator supplied.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
329
230
Severity: Error
Message Text: Unknown terminator supplied: terminator
Explanation: terminator is the terminator that has been input.
The file terminator supplied with the -TERM command is invalid or has
invalid contents.
Action: Correct the supplied terminator.
231
Severity: Error
Message Text: Incorrect terminator string format supplied: terminator
Explanation: terminator is the terminator that has been input.
The file terminator string supplied with the -TERM command has an
incorrect format.
Action: Correct the supplied terminator.
232
Severity: Error
Message Text: No terminator string supplied: terminator
Explanation: terminator is the terminator that has been input.
No valid file terminator string has been supplied with the -TERM
command.
Action: Correct the supplied terminator.
233
Severity: Error
Message Text: CNVEXT parameter parameter is unknown.
Explanation: parameter is the parameter specified to the command.
The parameter supplied to the -CNVEXT command is invalid.
Action: Correct the supplied CNVEXT parameter.
234
Severity: Error
Message Text: ARCHUNIT unit reference supplied is too long: unit name
Explanation: unit name is the unit name specified.
The unit name supplied with the -ARCHUNIT command is longer than the
maximum of 8 characters.
Action: Correct the unit name.
330
PKZIP for MVS: User Reference
T4ASI025-00-00
235
Severity: Error
Message Text: Incorrect ARCHUNIT unit format supplied: unit name
Explanation: unit name is the unit name specified.
The unit name supplied with the -ARCHUNIT command has an incorrect
format.
Action: Correct the unit name.
236
Severity: Error
Message Text: No ARCHUNIT unit supplied: unit name
Explanation: unit name is the unit name specified.
No unit name has been supplied with the -ARCHUNIT command.
Action: Supply a unit name.
237
Severity: Error
Message Text: command value supplied is too small: number
Explanation: number is the value specified.
The number specified is too small – check the details for the command to
determine the minimum supported value.
Action: Correct the number supplied.
238
Severity: Error
Message Text: command value supplied is too large: number
Explanation: number is the value specified.
The number specified is too large – check the details for the command to
determine the maximum supported value.
Action: Correct the number supplied.
239
Severity: Error
Message Text: command value supplied is not numeric: value
Explanation: value is the value specified.
This value contains non-numeric characters.
Action: Correct the value supplied.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
331
240
Severity: Information
Message Text: Command: command is obsolete and should be
removed.
Explanation: The command used is no longer supported but is still
accepted to maintain command compatibility.
Action: The command should be removed.
241
Severity: Information
Message Text: Command: command has been replaced with newcommand. Refer to the manual for further information.
Explanation: The command used is still supported to maintain
compatibility but should be replaced with the updated command.
Action: Refer to the manual, starting with the Changes Section, to
determine how to replace the command.
246
Severity: Error
Message Text: ARCHSPACE parameter parameter is unknown.
Explanation: parameter is the parameter specified.
The specified parameter to the -ARCHSPACE command is not a valid
parameter.
Action: Correct the parameter.
247
Severity: Error
Message Text: ARCHSCLASS class reference supplied is too long:
class name
Explanation: class name is the class name specified.
The storage class name supplied with the -ARCHSCLASS command is
longer than the maximum of 8 characters.
Action: Correct the class name.
248
Severity: Error
Message Text: Incorrect ARCHSCLASS class format supplied: class
name
Explanation: class name is the class name specified.
The storage class name supplied with the -ARCHSCLASS command has
an incorrect format.
Action: Correct the class name.
332
PKZIP for MVS: User Reference
T4ASI025-00-00
249
Severity: Error
Message Text: No ARCHSCLASS class supplied: class name
Explanation: class name is the class name specified.
No storage class name has been supplied with the -ARCHSCLASS
command.
Action: Supply a class name.
250
Severity: Error
Message Text: ARCHMCLASS class reference supplied is too long:
class name
Explanation: class name is the class name specified.
The management class name supplied with the -ARCHMCLASS
command is longer than the maximum of 8 characters.
Action: Correct the class name.
251
Severity: Error
Message Text: Incorrect ARCHMCLASS class format supplied: class
name
Explanation: class name is the class name specified.
The management class name supplied with the -ARCHMCLASS
command has an incorrect format.
Action: Correct the class name.
252
Severity: Error
Message Text: No ARCHMCLASS class supplied: class name
Explanation: class name is the class name specified.
No management class name has been supplied with the ARCHMCLASS
command.
Action: Supply a class name.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
333
253
Severity: Error
Message Text: ARCHDCLASS class reference supplied is too long:
class name
Explanation: class name is the class name specified.
The data class name supplied with the -ARCHDCLASS command is
longer than the maximum of 8 characters.
Action: Correct the class name.
254
Severity: Error
Message Text: Incorrect ARCHDCLASS class format supplied: class
name
Explanation: class name is the class name specified.
The data class name supplied with the -ARCHDCLASS command has an
incorrect format.
Action: Correct the class name.
255
Severity: Error
Message Text: No ARCHDCLASS class supplied: class name
Explanation: class name is the class name specified.
No data class name has been supplied with the -ARCHDCLASS
command.
Action: Supply a class name.
256
Severity: Error
Message Text: ZIPCUR dataset name supplied is too long: dataset
name
Explanation: dataset name is the dataset name specified.
The dataset name supplied to the ZIPCUR command is longer than the
maximum allowed dataset name.
Action: Supply a correct dataset name.
334
PKZIP for MVS: User Reference
T4ASI025-00-00
257
Severity: Error
Message Text: Incorrect ZIPCUR dsname format supplied: dataset
name
Explanation: dataset name is the dataset name specified.
The dataset name supplied with the -ZIPCUR command has an incorrect
format.
Action: Correct the dataset name.
258
Severity: Error
Message Text: No ZIPCUR dsname supplied: dataset name
Explanation: dataset name is the dataset name specified.
No dataset name has been supplied with the -ZIPCUR command.
Action: Supply a dataset name.
259
Severity: Error
Message Text: TASKS parameter supplied is invalid: number
Explanation: number is the parameter specified.
The parameter supplied to the -TASKS command is invalid (too low or
too high in value).
Action: Supply a valid -TASKS parameter.
260
Severity: Error
Message Text: Incorrect TASKS parameter format supplied: number
Explanation: number is the parameter specified.
The parameter supplied to the -TASKS command has an incorrect
format.
Action: Supply a valid -TASKS parameter.
261
Severity: Error
Message Text: No TASKS parameter supplied: number
Explanation: number is the parameter specified.
No parameter has been supplied with the -TASKS command.
Action: Supply a valid -TASKS parameter.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
335
262
Severity: Error
Message Text: FILESELECTOR name has the wrong length: name
Explanation: name is the module name specified.
The module name supplied with the -FILESELECTOR command is
longer than the maximum of 8 characters.
Action: Correct the module name.
263
Severity: Error
Message Text: Incorrect FILESELECTOR name format supplied: name
Explanation: name is the module name specified.
The module name supplied with the -FILESELECTOR command has an
incorrect format.
Action: Correct the module name.
264
Severity: Error
Message Text: No FILESELECTOR name supplied: name
Explanation: name is the module name specified.
No module name has been supplied with the -FILESELECTOR
command.
Action: Correct the module name.
265
Severity: Error
Message Text: MEMORY parameter supplied is invalid: memory
Explanation: memory is the parameter specified.
The parameter supplied to the -MEMORY command is invalid (too low or
too high in value).
Action: Supply a valid -MEMORY parameter.
266
Severity: Error
Message Text: Incorrect MEMORY parameter format supplied: memory
Explanation: memory is the parameter specified.
The parameter supplied to the -MEMORY command has an incorrect
format.
Action: Supply a valid -MEMORY parameter.
336
PKZIP for MVS: User Reference
T4ASI025-00-00
267
Severity: Error
Message Text: No MEMORY parameter supplied: memory
Explanation: memory is the parameter specified.
No parameter has been supplied with the -MEMORY command.
Action: Supply a valid -MEMORY parameter.
271
Severity: Error
Message Text: TEMPUNIT unit reference supplied is too long: unit name
Explanation: unit name is the unit name specified.
The unit name supplied with the -TEMPUNIT command is longer than the
maximum of 8 characters.
Action: Correct the unit name.
272
Severity: Error
Message Text: Incorrect TEMPUNIT unit format supplied: unit name
Explanation: unit name is the unit name specified.
The unit name supplied with the -TEMPUNIT command has an incorrect
format.
Action: Correct the unit name.
273
Severity: Error
Message Text: No TEMPUNIT unit supplied: unit name
Explanation: unit name is the unit name specified.
No unit name has been supplied with the -TEMPUNIT command.
Action: Supply a unit name.
283
Severity: Error
Message Text: No TEMPSPACE parameter is unknown: parameter
Explanation: parameter is the parameter specified.
The parameter supplied with the -TEMPSPACE command is not one of
the known valid options.
Action: Supply a valid parameter.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
337
284
Severity: Error
Message Text: TEMPSCLASS class reference supplied is too long:
class name
Explanation: class name is the class name specified.
The storage class name supplied with the -TEMPSCLASS command is
longer than the maximum of 8 characters.
Action: Correct the class name.
285
Severity: Error
Message Text: Incorrect TEMPSCLASS class format supplied: class
name
Explanation: class name is the class name specified.
The storage class name supplied with the -TEMPSCLASS command has
an incorrect format.
Action: Correct the class name.
286
Severity: Error
Message Text: No TEMPSCLASS class supplied: class name
Explanation: class name is the class name specified.
No storage class name has been supplied with the -TEMPSCLASS
command.
Action: Supply a class name.
287
Severity: Error
Message Text: TEMPMCLASS class reference supplied is too long:
class name
Explanation: class name is the class name specified.
The management class name supplied with the -TEMPMCLASS
command is longer than the maximum of 8 characters.
Action: Correct the class name.
338
PKZIP for MVS: User Reference
T4ASI025-00-00
288
Severity: Error
Message Text: Incorrect TEMPMCLASS class format supplied: class
name
Explanation: class name is the class name specified.
The management class name supplied with the -TEMPMCLASS
command has an incorrect format.
Action: Correct the class name.
289
Severity: Error
Message Text: No TEMPMCLASS class supplied: class name
Explanation: class name is the class name specified.
No management class name has been supplied with the TEMPMCLASS
command.
Action: Supply a class name.
290
Severity: Error
Message Text: TEMPDCLASS class reference supplied is too long:
class name
Explanation: class name is the class name specified.
The data class name supplied with the -TEMPDCLASS command is
longer than the maximum of 8 characters.
Action: Correct the class name.
291
Severity: Error
Message Text: Incorrect TEMPDCLASS class format supplied: class
name
Explanation: class name is the class name specified.
The data class name supplied with the -TEMPDCLASS command has an
incorrect format.
Action: Correct the class name.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
339
292
Severity: Error
Message Text: No TEMPDCLASS class supplied: class name
Explanation: class name is the class name specified.
No data class name has been supplied with the -TEMPDCLASS
command.
Action: Supply a class name.
293
Severity: Error
Message Text: Command: command format incorrect - check brackets.
Explanation: The required opening or closing brackets are missing.
Action: Supply the required brackets.
296
Severity: Error
Message Text: ARCHTYPE parameter parameter is unknown
Explanation: parameter is the parameter specified.
The parameter supplied to the -ARCHTYPE command is unknown.
Action: Correct the option.
297
Severity: Error
Message Text: TEMPTYPE parameter parameter is unknown
Explanation: parameter is the parameter specified.
The parameter supplied to the -TEMPTYPE command is unknown.
Action: Correct the option.
340
PKZIP for MVS: User Reference
T4ASI025-00-00
300
Severity: Error
Message Text: OUTUNIT unit reference supplied is too long: unit name
Explanation: unit name is the unit name specified.
The unit name supplied with the -OUTUNIT command is longer than the
maximum of 8 characters.
Action: Correct the unit name.
301
Severity: Error
Message Text: Incorrect OUTUNIT unit format supplied: unit name
Explanation: unit name is the unit name specified.
The unit name supplied with the -OUTUNIT command has an incorrect
format.
Action: Correct the unit name.
302
Severity: Error
Message Text: No OUTUNIT unit supplied: unit name
Explanation: unit name is the unit name specified.
No unit name has been supplied with the -OUTUNIT command.
Action: Supply a unit name.
312
Severity: Error
Message Text: No OUTSPACE parameter is unknown: parameter
Explanation: parameter is the parameter specified.
The parameter supplied with the -OUTSPACE command is not one of the
known valid options.
Action: Supply a valid parameter.
313
Severity: Error
Message Text: OUTSCLASS class reference supplied is too long: class
name
Explanation: class name is the class name specified.
The storage class name supplied with the -OUTSCLASS command is
longer than the maximum of 8 characters.
Action: Correct the class name.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
341
314
Severity: Error
Message Text: Incorrect OUTSCLASS class format supplied: class
name
Explanation: class name is the class name specified.
The storage class name supplied with the -OUTSCLASS command has
an incorrect format.
Action: Correct the class name.
315
Severity: Error
Message Text: No OUTSCLASS class supplied: class name
Explanation: No storage class name has been supplied with the
-OUTSCLASS command.
Action: Supply a class name.
316
Severity: Error
Message Text: OUTMCLASS class reference supplied is too long: class
name
Explanation: class name is the class name specified.
The management class name supplied with the -OUTMCLASS command
is longer than the maximum of 8 characters.
Action: Correct the class name.
317
Severity: Error
Message Text: Incorrect OUTMCLASS class format supplied: class
name
Explanation: class name is the class name specified.
The management class name supplied with the -OUTMCLASS command
has an incorrect format.
Action: Correct the class name.
318
Severity: Error
Message Text: No OUTMCLASS class supplied: class name
Explanation: class name is the class name specified.
No management class name has been supplied with the -OUTMCLASS
command.
Action: Supply a class name.
342
PKZIP for MVS: User Reference
T4ASI025-00-00
319
Severity: Error
Message Text: OUTDCLASS class reference supplied is too long: class
name
Explanation: class name is the class name specified.
The data class name supplied with the -OUTDCLASS command is longer
than the maximum of 8 characters.
Action: Correct the class name.
320
Severity: Error
Message Text: Incorrect OUTDCLASS class format supplied: class
name
Explanation: class name is the class name specified.
The data class name supplied with the -OUTDCLASS command has an
incorrect format.
Action: Correct the class name.
321
Severity: Error
Message Text: No OUTDCLASS class supplied: class name
Explanation: class name is the class name specified.
No data class name has been supplied with the -OUTDCLASS
command.
Action: Supply a class name.
325
Severity: Error
Message Text: OUTTYPE parameter parameter is unknown
Explanation: parameter is the parameter specified.
The specified parameter supplied to the -OUTTYPE command is
unknown.
Action: Correct the option.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
343
329
Severity: Error
Message Text: command value supplied has an invalid format: value
Explanation: value is the value specified.
The parameter supplied to the command is invalid.
Action: Supply a valid parameter.
330
Severity: Error
Message Text: command command supplied is too long: value
Explanation: value is the value specified.
The parameter supplied with the command is longer than the maximum
allowed.
Action: Correct the parameter.
331
Severity: Error
Message Text: Command parameter parameter is unknown
Explanation: parameter is the parameter specified.
The specified parameter supplied to the command is not supported.
Action: Correct the parameter.
339
Severity: Error
Message Text: TEMPDIRBLKS size supplied is invalid: dirblks
Explanation: dirblks is the size specified.
The size supplied to the -TEMPDIRBLKS command is invalid (too low or
too high in value).
Action: Supply a valid -TEMPDIRBLKS parameter.
340
Severity: Error
Message Text: Incorrect TEMPDIRBLKS size format supplied: dirblks
Explanation: The parameter supplied with the -TEMPDIRBLKS
command has an incorrect format.
Action: Correct the parameter.
344
PKZIP for MVS: User Reference
T4ASI025-00-00
341
Severity: Error
Message Text: No TEMPDIRBLKS record size supplied: dirblks
Explanation: dirblks is the size specified.
No parameter has been supplied with the -TEMPDIRBLKS command.
Action: Supply a parameter.
342
Severity: Error
Message Text: OUTATTR parameter is invalid: attrib
Explanation: attrib is the parameter specified.
The parameter supplied with the -OUTATTR command is not one of the
valid options
Action: Refer to the command reference in this manual and supply a
valid parameter.
343
Severity: Error
Message Text: OUTKEYS parameter is invalid: keys
Explanation: keys is the parameter specified.
The parameter supplied with the -OUTKEYS command is not valid.
Action: Refer to the command reference in this manual and supply a
valid parameter.
344
Severity: Error
Message Text: OUTRECORDSIZE parameter is invalid: size
Explanation: size is the parameter specified.
The parameter supplied with the -OUTRECORDSIZE command is not
valid.
Action: Refer to the command reference in this manual and supply a
valid parameter.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
345
350
Severity: Warning
Message Text: No updates to make to ARCHINDD - copying to
ARCHOUTDD.
Explanation: No file selections were matched for processing on the input
archive specified by ARCHINDD. ARCHINDD will be copied to
ARCHOUTDD.
Action: No action required if the fact that no selections matched is
acceptable. Otherwise correct and re-run the step.
351
Severity: Error
Message Text: No updates to make to ZIP archive
Explanation: PKZIP has not found any changes to make to the specified
ZIP archive with the commands and files selected.
Action: Ensure that the correct parameters have been given to PKZIP,
and that the correct files for addition or update have been selected.
352
Severity: Information
Message Text: Deleted file file name from ZIP archive
Explanation: file name is the ZIP archive name for the file.
The specified file has been deleted from the ZIP archive as a result of the
-DELETE command.
Action: None.
360
Severity: Error
Message Text: Incorrect command format supplied: command
Explanation: command is the command specified.
The specified parameter supplied to the command has an invalid format.
Action: Correct the parameter
361
Severity: Error
Message Text: Incorrect length in command: command
Explanation: command is the command specified.
The specified parameter supplied to the command has an incorrect
length.
Action: Correct the parameter.
346
PKZIP for MVS: User Reference
T4ASI025-00-00
365
Severity: Warning
Message Text: NIA command processing error for file file, NIA(..,…).
Explanation: file is the input file. The NIA command matches this file but
the generated output name is invalid - probably too small. The NIA
command is ignored for this file.
Action: Correct the NIA command if required and re-run.
370
Severity: Error
Message Text: No volume attribute for file dataset
Explanation: dataset is the name of the dataset being created.
PKUNZIP was attempting to create a dataset using stored attributes and
the -OUT commands. In this case no attribute was stored for the volume
and no -OUTVOL command was supplied.
Action: Specify an -OUTVOL command and re-run the job.
371
Severity: Error
Message Text: No VSAM file type attribute for file dataset
Explanation: dataset is the name of the dataset being created.
PKUNZIP was attempting to create a dataset using stored attributes and
the -OUT commands. In this case no attribute was stored for the VSAM
file type and no -OUTATTR command was supplied.
Action: Specify an -OUTATTR command and re-run the job.
372
Severity: Error
Message Text: No VSAM recordsize attribute for file dataset
Explanation: dataset is the name of the dataset being created.
PKUNZIP was attempting to create a dataset using stored attributes and
the -OUT commands. In this case no attribute was stored for the VSAM
recordsize and no -OUTRECORDSIZE command was supplied.
Action: Specify an -OUTRECORDSIZE command and re-run the job.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
347
373
Severity: Error
Message Text: No VSAM keys attribute for file dataset
Explanation: dataset is the name of the dataset being created.
PKUNZIP was attempting to create a dataset using stored attributes and
the -OUT commands. In this case no attribute was stored for the VSAM
keys parameter and no -OUTKEYS command was supplied.
Action: Specify an -OUTKEYS command and re-run the job.
374
Severity: Error
Message Text: No space allocation attribute for file dataset
Explanation: dataset is the name of the dataset being created.
PKUNZIP was attempting to create a dataset using stored attributes and
the -OUT commands. In this case no attribute was stored for the space
allocation and no -OUTSPACE command was supplied.
Action: Specify an -OUTSPACE command and re-run the job.
375
Severity: Error
Message Text: No primary allocation attribute for file dataset
Explanation: dataset is the name of the dataset being created.
PKUNZIP was attempting to create a dataset using stored attributes and
the -OUT commands. In this case no attribute was stored for the primary
allocation and no -OUTPRIMARY command was supplied.
Action: Specify an -OUTPRIMARY command and re-run the job.
376
Severity: Error
Message Text: No secondary allocation attribute for file dataset
Explanation: dataset is the name of the dataset being created.
PKUNZIP was attempting to create a dataset using the stored attributes
and the -OUT commands. In this case no attribute was stored for the
secondary allocation and no -OUTSECONDARY command was supplied.
Action: Specify an -OUTSECONDARY command and re-run the job.
348
PKZIP for MVS: User Reference
T4ASI025-00-00
380
Severity: Error
Message Text: Command value supplied is too long: value
Explanation: value is the value that has been input.
The value specified by the current command is not in a recognisable
format.
Action: Check the syntax of the command in the User Reference.
Correct the command and retry.
381
Severity: Error
Message Text: Incorrect command format supplied: value
Explanation: value is the value that has been input.
The value specified by the current command is not in a recognisable
format.
Action: Check the syntax of the command in the User Reference.
Correct the command and retry.
382
Severity: Error
Message Text: No value supplied for command: value
Explanation: value is the value that has been input.
No value was supplied for the current command.
Action: Check the syntax of the command in the User Reference.
Correct the command and retry.
383
Severity: Error
Message Text: No licence available to process command value
Explanation: value is the command that has been input.
The specified command requires a licence that is not available.'
Action: Correct the command or obtain a suitable licence from your
supplier.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
349
390
Severity: Error
Message Text: Define cluster failed for file file
Explanation: file is the name of the dataset being created.
PKUNZIP was attempting to create a dataset using stored attributes and
the -OUT commands. In this case the IDCAMS DEFINE CLUSTER
function failed.
Action: Check and correct the -OUT commands specified and re-run the
job.
391
Severity: Information
Message Text: The following IDCAMS messages were issued:
Explanation: An error was encountered when calling IDCAMS. The
diagnostic messages issued by IDCAMS follow.
Action: Look up the IDCAMS messages in the appropriate IBM manual
and correct and re-run the job.
392
Severity: Information
Message Text: message text
Explanation: An error was encountered when calling IDCAMS. The
diagnostic messages issued by IDCAMS are given in the text of this
message.
Action: Look up the IDCAMS messages in the appropriate IBM manual
and correct and re-run the job.
402
Severity: Error
Message Text: ARCHIVE file is too small for an archive
Explanation: PKZIP has determined that the archive specified in the
-ARCHIVE command is too small to be a ZIP/GZIP archive dataset. The
archive may be empty.
Action: Ensure that the correct archive dataset has been specified and
that this file contains an archive.
350
PKZIP for MVS: User Reference
T4ASI025-00-00
403
Severity: Error
Message Text: ZIP archive file has an invalid format for a ZIP file:
reason
Explanation: PKZIP has determined that the specified archive can not
be processed - a reason for this decision will be indicated by the text after
the message.
Action: Ensure that the correct archive has been specified and that
PKZIP has access to it. Check that the archive is in a format that can be
processed, noting the record format and volume allocation.
404
Severity: Error
Message Text: ZIP archive file has an invalid format for a ZIP file.
Explanation: PKZIP has determined that there is corruption within the
main ZIP directory for the ZIP archive specified by the -ARCHIVE
command. Some files within the archive may be recoverable.
Action: Ensure that the correct archive has been specified and that
PKZIP has access to it. If the file has been transferred from another
platform please check that it was transferred as binary. A valid ZIP
archive starts with the hex value x’504B’ therefore browsing the archive in
hex can provide a quick visual check that the transfer was successful.'
405
Severity: Information
Message Text: ZIP comment: comment
Explanation: comment is the comment found in the ZIP archive.
The ZIP archive specified by the -ARCHIVE command contains a ZIP file
comment. It is displayed using this message when the archive is first
opened.
Action: None
406
Severity: Error
Message Text: Unable to decompress file attributes for file
Explanation: file is a file for which PKZIP is attempting to decompress
the file attributes, but this operation has failed. No file attributes from the
ZIP archive will be used.
Action: If file attributes are required, determine the reason for their
failure to decompress and retry the operation.
407
Severity: Warning
Message Text: Error whilst compressing file attributes for file, file
attributes will be saved without compression
T4ASI025-00-00
PKZIP and PKUNZIP Messages
351
Explanation: file is a file for which PKZIP is attempting to compress the
file attributes, but this operation has failed. The file attributes from the ZIP
archive will be saved without compression.
Action: If file attributes are required, determine the reason for their
failure to decompress and retry the operation.
408
Severity: Error
Message Text: GZIP archive file has an invalid format for a GZIP file.
Explanation: PKZIP has determined that there is corruption within a
GZIP header for the GZIP archive specified.
Action: Ensure that the correct archive has been specified and that
PKZIP has access to it. If the file has been transferred from another
platform please check that it was transferred as binary. A valid GZIP
archive starts with the hex value x’1F8B’ therefore browsing the archive
in hex can provide a quick visual check that the transfer was successful.'
409
Severity: Information
Message Text: GZIP file comment: comment
Explanation: comment is the comment found in the GZIP archive.
A file within the specified GZIP archive contains this comment.
Action: None
453
Severity: Information
Message Text: Compressed dataset name as filename (compressionmethod percentage).
Explanation: This message is output by PKZIP when a file has been
successfully compressed. The message shows the dataset that was
compressed, the name used in the ZIP archive, the compression method
used and the amount of compression achieved.
This message is output by PKZIP when a file has been successfully
compressed as a result of the -ADD command.
Action: None.
352
PKZIP for MVS: User Reference
T4ASI025-00-00
459
Severity: Information
Message Text: Updated dataset name as filename (compressionmethod percentage).
Explanation: This message is output by PKZIP when a file has been
successfully compressed. The message shows the dataset that was
compressed, the name used in the ZIP archive, the compression method
used and the amount of compression achieved.
This message is output by PKZIP when a file has been successfully
compressed as a result of the -UPDATE or -FRESHEN commands.
Action: None.
460
Severity: Error
Message Text: Temporary file too small when compressing file compression abandoned
Explanation:. This message is output when a temporary file used for
compressing a file is too small to contain the compressed file
Action: Rerun the compression, using larger values for the
-CACHEMEMORY or -TEMP commands to allow sufficient space for the
compressed file.'
501
Severity: Information
Message Text: View files heading
Explanation: This message is output by the -VIEW or -VIEWBRIEF
commands as a heading before the main file display.
Action: None.
502
Severity: Information
Message Text: View files heading
Explanation: This message is output by the -VIEW or -VIEWBRIEF
commands as a heading before the main file display.
Action: None.
503
Severity: Information
Message Text: View files files entry
Explanation: This message is output by the -VIEW or -VIEWBRIEF
commands to display details of an individual file stored in the ZIP archive.
See -VIEW command for more information.
Action: None.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
353
504
Severity: Information
Message Text: Comment: comment
Explanation: This message is output if the -VIEWCOMMENT command
has been specified. It contains the file comment associated with the
current file being displayed.
Action: None.
505
Severity: Information
Message Text: View files total heading
Explanation: This message is output by the -VIEW or -VIEWBRIEF
commands as a heading before the total information about the files
selected from the ZIP archive are output.
Action: None.
506
Severity: Information
Message Text: View files totals
Explanation: This message is output by the -VIEW or -VIEWBRIEF
commands at the end of displaying all files to display totals for the
compressed and uncompressed file sizes, together with the overall
compression percentage, for the files selected for display.
Action: None.
507
Severity: Information
Message Text: Filename: name
Explanation: This message is output by the -VIEWDETAIL command to
give the full filename of the current file being displayed.
Action: None.
508
Severity: Information
Message Text: File type: type
Explanation: This message is output by the -VIEWDETAIL command. It
is a judgement made by PKZIP during compression based on the
contents of the file unless the –TEXT or –BINARY commands were
specified during compression. It can be either "Text" or "Binary". In
addition, the string "Encrypted" will be output if this file is held in an
encrypted format, and the string "ZDW" will be output if the file has a
ZDW format.
Action: None.
354
PKZIP for MVS: User Reference
T4ASI025-00-00
509
Severity: Information
Message Text: Date and Time: timestamp
Explanation: This message is output by the -VIEWDETAIL command. It
contains the date and time of the file as it would appear on a directory
listing in the original system.
Action: None.
510
Severity: Information
Message Text: Compression Method: method
Explanation: This message is output by the -VIEWDETAIL command. It
shows the compression routine that has been used to store this file in the
ZIP archive.
Action: None.
511
Severity: Information
Message Text: Compressed Size: size
Explanation: This message is output by the -VIEWDETAIL command. It
shows the current (compressed) size of the file.
Action: None.
512
Severity: Information
Message Text: Uncompressed Size: size
Explanation: This message is output by the -VIEWDETAIL command. It
shows the original (non-compressed) size of the file.
Action: None.
513
Severity: Information
Message Text: 32 bit CRC value : value
Explanation: This message is output by the -VIEWDETAIL command. It
shows the value of the file as calculated by the CRC-32 routines.
Action: None.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
355
514
Severity: Information
Message Text: Created by: version under system
Explanation: This message is output by the -VIEWDETAIL command. It
shows the version of PKZIP that was used to create the compressed file,
and the operating system that was in use when the file was created.
Action: None.
515
Severity: Information
Message Text: Needed to extract: version
Explanation: This message is output by the -VIEWDETAIL command. It
shows the minimum version of PKUNZIP that is required to extract the
file.
Action: None.
516
Severity: Information
Message Text: Comment: comment
Explanation: This message is output by the -VIEWDETAIL command. It
shows the file comment associated with the file, if there is one.
Action: None.
517
Severity: Warning
Message Text: No files selected for viewing.
Explanation: This message is output when a -VIEW command has been
input, but no files have been selected by the filename commands that
have been input.
Action: Correct the filename specifications to ensure that details of the
required files have been input.
518
Severity: Warning
Message Text: Unknown file attribute: attribute
Explanation: This message is output when a -VIEWDETAIL command
has been requested and an attribute found in the ZIP archive is not
recognised. If the ZIP archive was created on a different platform, then
the unrecognised attribute is probably specific to that platform.
Action: Contact support for more information.
356
PKZIP for MVS: User Reference
T4ASI025-00-00
519
Severity: Information
Message Text: message text
Explanation: This message is output when a -VIEWDETAIL command
has been requested. It is used to format the output to make it more
readable.
Action: No action required.
520
Severity: Information
Message Text: File attributes
Explanation: This message is output when a -VIEWDETAIL command
has been requested. It is used to format the output to make it more
readable.
Action: No action required.
521
Severity: Information
Message Text: GZIP archive created by: version under system
Explanation: This message is output by the -VIEWDETAIL command. It
shows the version of PKZIP that was used to create the compressed file,
and the operating system that was in use when the file was created.
Action: None.
599
Severity: Warning
Message Text: Attribute mismatch for file file - command: command,
attribute: attribute.
Explanation: File file is being decompressed. The command command
has been specified, but the attributes for the file indicate that when
compressed it had a different setting.
Action: Ensure that the specified file has been correctly compressed and
that it is valid to specify the indicated command.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
357
600
Severity: Warning
Message Text: ZDW command used for archive file file, which was not
compressed using ZDW.
Explanation: File file is being decompressed
The specified file has been compressed without the ZDW option
specified, but is being extracted with that option specified. Results are
unpredictable because it is unclear if the input file matches the internal
ZDW file format.
Action: Ensure that the specified file has been correctly compressed and
that it is valid to specify ZDW for the file.
601
Severity: Warning
Message Text: PKUNZIP version version needed to extract file name
Explanation: version is the version of PKUNZIP required.
name is the ZIP name of the file to be extracted.
The specified file has been compressed with a method which is not
included in this version of PKZIP. A version of PKZIP of at least the
specified level is required to decompress the file. Note that this message
may also be output if the ZIP archive has been incorrectly transferred
onto MVS, since the ZIP archive directory may then be corrupt.
Action: Contact your supplier for details of a version of PKUNZIP which
will extract the specified file.
602
Severity: Warning
Message Text: Unknown compression method for file name
Explanation: name is the ZIP name of the file specified.
The specified file has been compressed with a method which is not
recognised by this version of PKUNZIP. This may indicate that the file
has been compressed with a very old version of PKZIP, or that the
specified file's details have become corrupt in the ZIP archive.
Action: Ensure that the specified file has been correctly compressed with
a current version of PKZIP.
358
PKZIP for MVS: User Reference
T4ASI025-00-00
603
Severity: Warning
Message Text: Expanding not supported in this version (file name).
Explanation: name is the ZIP name of the specified file.
The specified file has been compressed using the Expand method of
compression. This method is no longer used in the current family of
PKZIP products, and is not supported in this version of PKZIP for MVS.
Action: Ensure that the specified file has been correctly compressed with
a current version of PKZIP.
604
Severity: Information
Message Text: Skipping encrypted file name
Explanation: name is the ZIP name of the specified file.
The specified file was encrypted when it was compressed. However, no
-PASSWORD command has been input, so the specified file cannot be
decrypted. PKUNZIP will ignore this file.
Action: If the specified file is required, the correct password must be
input to PKUNZIP.
605
Severity: Error
Message Text: Inconsistent local header for file name
Explanation: name is the ZIP name of the specified file.
The details of the file kept together with the compressed file itself do not
match with those kept in the main directory for the ZIP archive.
PKUNZIP will stop processing the file.
Action: Ensure that an uncorrupted copy of the ZIP archive is obtained.
607
Severity: Error
Message Text: File name fails CRC check.
Explanation: The specified file has been extracted from the ZIP archive,
but the contents do not match the stored CRC for the file. The file
contents are likely to be corrupt. This is also possible, on occasions, if an
incorrect password has been given.
Action: Obtain an uncorrupted copy of the ZIP archive.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
359
608
Severity: Information
Message Text: File name tested ok.
Explanation: name is the ZIP name of the specified file.
The -TEST command has been specified, and the selected file has been
tested without errors.
Action: None.
609
Severity: Information
Message Text: ZIP file zipfilename method to MVS file MVSdatasetname
Explanation: zipfilename is the ZIP name of the specified file.
method is the method used for decompression.
MVSdatasetname is the MVS dataset name for the extracted file.
The selected file has been extracted correctly from the ZIP archive and
written to the specified MVS dataset. The compression method given has
been used to extract the file.
Action: None
610
Severity: Error
Message Text: No files selected for extraction
Explanation: The file selection has been processed, but no matching
files can be found within the ZIP archive.
Action: Select files which exist within the ZIP archive and rerun the
program.
611
Severity: Error
Message Text: Incorrect password given for file name
Explanation: name is the ZIP name of the specified file.
The selected file has been encrypted in the ZIP archive, and a password
has been input. However, the password is not the one which was used to
encrypt the file.
PKUNZIP will skip the specified file, and will not extract it.
Action: Correct the password if the specified file is to be extracted.
360
PKZIP for MVS: User Reference
T4ASI025-00-00
612
Severity: Information
Message Text: Compressed Size: nnn, Decompressed Size: mmm.
Explanation: The GZIP processing has completed - the figures supplied
indicate how many bytes of compressed and uncompressed data was
processing. Note that these figures do not include any overhead such as
headers.
Action: None.
613
Severity: Error
Message Text: Decompressed size does not match value from archive:
mmm.
Explanation: The decompression has been completed. The previous
message (612) has output the bytes written. This figure differs from the
value (mmm) in the file.
Action: Check that the archive is valid – attempt to recreate it if
appropriate. Check that the output dataset is as expected.
614
Severity: Warning
Message Text: Non null/blank data starting with XXx found after file in
archive.
Explanation: The decompression has been completed, but following
bytes in the archive are not null or blank, indicating additional data that
has not been processed.
Action: Check that the archive is valid – attempt to recreate it if
appropriate. Check that the output dataset is as expected.
615
Severity: Error
Message Text: Selection has resulted in multiple files to compress to
GZIP archive - this is not supported.
Explanation: The file selections entered have resulted in ZIP processing
selecting more than 1 file to add to the GZIP archive, but only one is
supported.
Action: Change the selection so that only 1 file will be selected for one
GZIP archive. Rerun the processing.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
361
616
Severity: Error
Message Text: GZIP/METHOD(STORE) combination not supported.
Explanation: The commands entered have indicated that file(s) should
be STOREd in a GZIP archive, which the GZIP format does not support.
Action: Change the commands to use a ZIP archive or a different
compression method.
710
Severity: Error
Message Text: Invalid shrunk file found.
Explanation: The current file has been compressed using the Shrink
compression method. However, the file contents of the file have been
found to be invalid for this method.
Action: Obtain an uncorrupted copy of the ZIP archive.
720
Severity: Error
Message Text: Invalid IPP table found in file.
Explanation: The current file has been compressed with the Deflate
compression method. However, PKUNZIP has encountered an invalid
compression table in the file.
Action: Obtain an uncorrupted copy of the ZIP archive.
721
Severity: Error
Message Text: Invalid IPP table found in file.
Explanation: The current file has been compressed with the Deflate
compression method. However, PKUNZIP has encountered an invalid
compression table in the file.
Action: Obtain an uncorrupted copy of the ZIP archive.
722
Severity: Error
Message Text: Invalid block type found in file.
Explanation: The current file has been compressed with the Deflate
compression method. However, PKUNZIP has encountered an invalid
block type in the file.
Action: Obtain an uncorrupted copy of the ZIP archive.
362
PKZIP for MVS: User Reference
T4ASI025-00-00
730
Severity: Error
Message Text: File has bad table.
Explanation: The current file has been compressed with the Implode
compression method. However, PKUNZIP has encountered an invalid
compression table in the file.
Action: Obtain an uncorrupted copy of the ZIP archive.
731
Severity: Error
Message Text: File has bad table.
Explanation: The current file has been compressed with the Implode
compression method. However, PKUNZIP has encountered an invalid
compression table in the file.
Action: Obtain an uncorrupted copy of the ZIP archive.
796
Severity: Warning
Message Text: Record(s) in file have been truncated.
Explanation: The record length of the output file is shorter than the
length of one or more records in the archive. The records that exceeded
the output record length have been truncated.
Action: Ensure that the record length of the output file is the desired
length. Note that this length could be specified in a variety of places
including the file itself (if it already existed) and the OUTLRL command.
799
Severity: Error
Message Text: Invalid ZDW detected: ZDW, file processing terminated.
Explanation: This message indicates that the ZDW value extracted from
the file is not valid on this system - it is not possible to create a record
with this length. Note that the ZDW value is displayed in hexadecimal.
Action: Either the ZDW value found is not valid on this system or the
ZDW operand has been specified incorrectly. Re-run the command
without specifying the ZDW operand. If this is not successful then the file
cannot be decompressed on this operating system.
865
Severity: Information
Message Text: Processing file: file name.
Explanation: PKZIP/PKUNZIP has begun processing the file indicated.
Action: No action required.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
363
871
Severity: Error
Message Text: Unable to allocate temporary dataset to DD name
ddname, DYNALLOC error code code
Explanation: ddname is the DD name being used. code is the
DYNALLOC error code that was returned.
This message is output by PKZIP when it is unable to allocate a
temporary dataset before a file has been compressed.
The return code is that generated by the DYNALLOC macro.
Action: Ensure that there is sufficient space on the volume containing
the ZIP archive, or specified by the -ARCHVOL or -ARCHUNIT
commands. Examine the return code to determine, and correct, the exact
problem.
It may be found that temporary ZIP datasets, with a final dataset
component name of ZIPnnnnn, have been created and have not been
deleted.
872
Severity: Error
Message Text: Unable to allocate IDCAMS dataset to DD name
ddname, DYNALLOC error code code
Explanation: ddname is the DD name being used. code is the
DYNALLOC error code that was returned.
This message is output by PKZIP when it is unable to allocate a
temporary dataset when trying to rename the final ZIP archive to its
correct name.
The return code is that generated by the DYNALLOC macro.
Action: Ensure that there is sufficient space on the volume containing
the ZIP archive, or specified by the -ARCHVOL or -ARCHUNIT
commands. Examine the return code to determine, and correct, the exact
problem.
It may be found that temporary ZIP datasets, with a final dataset
component name of ZIPnnnnn, have been created and have not been
deleted.
873
Severity: Error
Message Text: Error processing macro. Code: code, Process: process.
Explanation: The information returned from the macro macro was not as
expected for processing by PKZIP. The data returned is output as code,
process is an indication of the processing that attempted to use the
information from the macro.
Action: This is an internal processing problem with PKZIP. Contact your
supplier, retaining all the output from the failing PKZIP processing.
364
PKZIP for MVS: User Reference
T4ASI025-00-00
876
Severity: Error
Message Text: Unable to deallocate and delete ZIP dataset from DD
name ddname, DYNALLOC error code code
Explanation: ddname is the DD name being used. code is the
DYNALLOC error code that was returned.
This message is output by PKZIP when it is attempting to deallocate or
delete a temporary ZIP dataset or the original ZIP archive.
The return code is that generated by the DYNALLOC macro.
Action: Ensure that the ZIP archive is specified correctly by
the-ARCHIVE command, and that the -ARCHVOL or -ARCHUNIT
commands, if present, are correct. Examine the return code to
determine, and correct, the exact problem.
It may be found that temporary ZIP datasets, with a final dataset
component name of ZIPnnnnn, have been created and have not been
deleted. The new ZIP archive may also have a temporary file name, with
the original ZIP archive having been deleted.
877
Severity: Error
Message Text: Error writing to RNOUTPUT temporary dataset for
rename function.
Explanation: This message is output by PKZIP when it is attempting to
rename a temporary ZIP dataset to the original ZIP archive name.
However, it is unable to write to a temporary dataset containing the
commands.
Action: Ensure that the ZIP archive is specified correctly by the
-ARCHIVE command, and that the -ARCHVOL or -ARCHUNIT
commands, if present, are correct. Examine the return code to
determine, and correct, the exact problem.
It may be found that temporary ZIP datasets, with a final dataset
component name of ZIPnnnnn, have been created and have not been
deleted. The new ZIP archive may also have a temporary file name, with
the original ZIP archive having been deleted.
878
Severity: Error
Message Text: IDCAMS error whilst renaming ZIP dataset from temp
name to dataset name. Return code code
T4ASI025-00-00
PKZIP and PKUNZIP Messages
365
Explanation: temp name is the temporary dataset name which is
currently being used. dataset name is the dataset name to which it was
being renamed.
code is the returned code from the IDCAMS program.
This message is output by PKZIP when it is attempting to rename a
temporary ZIP dataset to the original ZIP archive name. IDCAMS has
returned the specified error code instead of renaming the file.
Action: Ensure that the ZIP archive is specified correctly by the
-ARCHIVE command, and that the -ARCHVOL or -ARCHUNIT
commands, if present, are correct. Examine the return code to
determine, and correct, the exact problem.
It may be found that temporary ZIP datasets, with a final dataset
component name of ZIPnnnnn, have been created and have not been
deleted. The new ZIP archive may also have a temporary file name, with
the original ZIP archive having been deleted.
879
Severity: Error
Message Text: Unable to allocate ZIP archive archive, DYNALLOC error
code dyncode, info code infocode
Explanation: archive is the dataset name which was being allocated.
dyncode is the DYNALLOC error code returned.
infocode is the DYNALLOC information code returned. This message is
output by PKZIP when it is unable to allocate the original ZIP archive
before a file has been compressed.
The return code is that generated by the DYNALLOC macro.
Action: Ensure that the -ARCHIVE command specifies a correctly
formatted ZIP archive. Examine the return code to determine, and
correct, the exact problem.
880
Severity: Error
Message Text: Unable to open ZIP archive archive, open return code
code
Explanation: archive is the name of the dataset name being opened.
code is the return code from the OPEN macro.
This message is output by PKZIP when it is unable to open the original
ZIP archive before a file has been compressed.
The return code is that generated by the OPEN macro.
Action: Ensure that the -ARCHIVE command specifies a correctly
formatted ZIP archive. Examine the return code to determine, and
correct, the exact problem.
366
PKZIP for MVS: User Reference
T4ASI025-00-00
881
Severity: Error
Message Text: ZIP archive archive is of an unsupported type
Explanation: archive is the name of the dataset name which is being
examined.
This message is output by PKZIP when it has allocated the original ZIP
archive, but has found that it is of a record type that is not supported by
PKZIP.
Action: Ensure that the -ARCHIVE command specifies a correctly
formatted ZIP archive of a supported record type.
882
Severity: Error
Message Text: Unable to close dataset name, close return code code
Explanation: dataset name is the dataset name of the file being closed.
code is the return code from the CLOSE macro.
This message is output by PKZIP when it is unable to close a temporary
or final ZIP archive file.
The return code is that generated by the CLOSE macro.
Action: Ensure that the -ARCHIVE command specifies a correctly
formatted ZIP archive. Examine the return code to determine, and
correct, the exact problem.
It may be found that temporary ZIP datasets, with a final dataset
component name of ZIPnnnnn, have been created and have not been
deleted. The new ZIP archive may also have a temporary file name, with
the original ZIP archive having been deleted.
883
Severity: Error
Message Text: Error reading dataset. Unable to find block with offset
offset, length length
Explanation: dataset is the dataset name of the file being read.
offset is the offset within the file which is being read.
length is the length of data being read from the file.
This message is output by PKZIP when it is unable to find the specified
block within a ZIP archive or a temporary file.
Action: Ensure that the -ARCHIVE command specifies a correctly
formatted ZIP archive. This error may indicate that the ZIP archive has
become corrupted.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
367
889
Severity: Error
Message Text: Error inserting cache entry: response code
Explanation: code is response code returned by the cache manager
when inserting data into the cache.
Action: Ensure that there is sufficient memory for the cache manager, by
increasing the -CACHEMEMORY command. This error may also be
output as a result of an underlying file problem, which will invoke other
error messages.
890
Severity: Error
Message Text: Error retrieving cache entry for offset offset: response
code
Explanation: code is response code returned by the cache manager
when retrieving data from the cache. Offset is the offset within the logical
file that is being read.
Action: Ensure that there is sufficient memory for the cache manager, by
increasing the -CACHEMEMORY command. This error may also be
output as a result of an underlying file problem, which will invoke other
error messages.
891
Severity: Error
Message Text: Unable to open ZIP archive - too few resources allocated
Explanation: PKZIP has attempted to open the old ZIP archive, but has
been unable to read all of the archive into temporary storage. The file
handler does not support positioning for an archive on this storage
medium, so data with in the archive cannot be accessed.
Action: Ensure that there are sufficient temporary archive resources
allocated to hold all of this ZIP archive, or move it to a medium which is
supported by a file handler which supports positioning on a file.
892
Severity: Warning
Message Text: ZIP archive opened using direct file processing, may be
slow
Explanation: PKZIP has attempted to open the old ZIP archive, but has
been unable to read all of the archive into temporary storage. However,
the file handler can find data on the ZIP archive only using a slow
positioning method, so processing the data may be slow.
Action: Ensure that there are sufficient temporary archive resources
allocated to hold all of this ZIP archive, or move it to a medium which is
supported by a file handler which supports positioning on a file.
368
PKZIP for MVS: User Reference
T4ASI025-00-00
893
Severity: Error
Message Text: ZIP archive cannot read using this file handler
Explanation: PKZIP has attempted to read part of a ZIP archive, but has
found that it cannot position correctly. This is probably a problem within
the file handler.
Action: Contact support for a corrected file handler. As a temporary
solution, copy the archive to a dataset of a type that is supported.
894
Severity: Warning
Message Text: ZIP archive cannot be renamed to its final name
(finalname), it has been named newname. File handler does not support
renaming
Explanation: PKZIP has attempted to rename the ZIP archive to its final
required name, but this is not supported by the file handler.
Action: Consider allocating the ZIP archive to a medium which has a file
handler which supports renaming. Otherwise, delete the old ZIP archive
and rename the new ZIP archive by hand.
895
Severity: Error
Message Text: Unable to select ZIP archive name for creation
Explanation: PKZIP has attempted to select the ZIP archive to create,
but it cannot be selected.
Action: Check that all parameters for creating a ZIP archive have been
correctly specified.
901
Severity: Error
Message Text: Unable to allocate file name, DYNALLOC error code
code
Explanation: name is the name of the dataset being allocated.
code is the error code returned from DYNALLOC.
PKUNZIP has been attempting to allocate the specified external dataset
or member. However, an error has occurred, and the DYNALLOC macro
has returned the specified hexadecimal error code.
Action: Ensure that the specified dataset exists, and that there is
sufficient space for all the data to be output, if it is being opened for
output.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
369
902
Severity: Error
Message Text: Unable to deallocate file name, DYNALLOC error code
code
Explanation: name is the name of the dataset being deallocated.
code is the error code returned from DYNALLOC.
PKUNZIP has been attempting to deallocate the specified external
dataset or member. However, an error has occurred, and the
DYNALLOC macro has returned the specified hexadecimal error code.
Action: Ensure that the specified dataset exists, and that there is
sufficient space for all the data to be output, if it is being opened for
output.
903
Severity: Error
Message Text: Error deleting file name
Explanation: name is the name of the dataset being deleted.
PKUNZIP was attempting to delete the specified dataset or member
when an error occurred. The problem is described in more detail by the
IDCAMS messages which follow this message.
Action: Refer to the IDCAMS messages for more information.
904
Severity: Error
Message Text: No DCB attributes for file name
Explanation: name is the name of the dataset being opened.
PKZIP was attempting to open the specified dataset for input but the
required DCB attributes were not available to the program.
Action: If using the -INDD or -ARCHINDD commands then try specifying
the DCB information on the DD statement.
905
Severity: Error
Message Text: Close error, option=option, r15=value, file=name
Explanation: value is the value of register 15 on return from the CLOSE
macro.
name is the name of the dataset being closed.
PKZIP was attempting to close the dataset when the specified error
occurred.
Action: Look the error code up in the appropriate IBM manual.
370
PKZIP for MVS: User Reference
T4ASI025-00-00
906
Severity: Error
Message Text: Cache manager error, r15=value, file=name
Explanation: value is the value of register 15 on return from the cache
manager.
name is the name of the dataset being processed.
Action: Contact your supplier for more information.
907
Severity: Error
Message Text: No cache available, file=name
Explanation: name is the name of the dataset being processed.
Action: Contact your supplier for more information.
908
Severity: Error
Message Text: Stow failed, r15=xvalue15, r0=xvalue0,
member=member, file=name
Explanation: value15 is the value of register 15 on return from the
STOW macro.
value0 is the value of register 0 on return from the STOW macro.
member is the name of the member being STOWed.
PKZIP was attempting to STOW the dataset when the specified error
occurred.
Action: Look the error code up in the appropriate IBM manual.
909
Severity: Error
Message Text: Internal processing error occurred at location
Explanation: location is a location in the PKZIP code.
PKZIP encountered an unexpected situation which prevented processing
from continuing.
Action: Contact your supplier for more information.
910
Severity: Error
Message Text: Point failed, r15=xvalue, file=file
Explanation: value is the value of register 15 on return from the POINT
macro.
file is the name of the dataset being processed.
PKZIP was attempting a POINT on the dataset when the specified error
occurred.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
371
Action: Look the error code up in the appropriate IBM manual.
911
Severity: Error
Message Text: T4IDCAMS error, r15=xvalue, file=file
Explanation: value is the value of register 15 on return from T4IDCAMS.
file is the name of the dataset being processed.
PKZIP was attempting to use IDCAMS when the specified error occurred.
Action: Contact your supplier for more information.
912
Severity: Error
Message Text: T4IDCDEL error, r15=xvalue, file=file
Explanation: value is the value of register 15 on return from T4IDCDEL.
file is the name of the dataset being processed.
PKZIP was attempting to use IDCAMS when the specified error occurred.
Action: Contact your supplier for more information.
913
Severity: Error
Message Text: GENCB error, r15=xvalue, file=file
Explanation: value is the value of register 15 on return from the GENCB
macro.
file is the name of the dataset being processed.
PKZIP was attempting to use the GENCB macro when the specified error
occurred.
Action: Contact your supplier for more information.
914
Severity: Error
Message Text: SHOWCB error, r15=xvalue, file=file
Explanation: value is the value of register 15 on return from the
SHOWCB macro.
file is the name of the dataset being processed.
PKZIP was attempting to use the SHOWCB macro when the specified
error occurred.
Action: Contact your supplier for more information.
915
Severity: Error
Message Text: OPEN error, file=file
372
PKZIP for MVS: User Reference
T4ASI025-00-00
Explanation: file is the name of the dataset being opened.
PKZIP was attempting to open the file when the specified error occurred.
Action: Contact your supplier for more information.
916
Severity: Error
Message Text: MODCB error, r15=xvalue, file=file
Explanation: value is the value of register 15 on return from the MODCB
macro.
file is the name of the dataset being processed.
PKZIP was attempting to use the MODCB macro when the specified
error occurred.
Action: Contact your supplier for more information.
917
Severity: Error
Message Text: Open error, r15=xvalue, file=file
Explanation: value is the value of register 15 on return from the OPEN
macro.
file is the name of the dataset being processed.
PKZIP was attempting to open the dataset when the specified error
occurred.
Action: Look the error code up in the appropriate IBM manual.
918
Severity: Error
Message Text: Zero length INDD name
Explanation: No DDNAME was specified in the -INDD command
Action: Specify a DDNAME in the -INDD command.
919
Severity: Error
Message Text: INDD not licensed for this file type
Explanation: You are not licensed to process the type of dataset
referenced by the -INDD command.
Action: Correct the -INDD command or contact your supplier for more
information.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
373
920
Severity: Error
Message Text: Write error, code=xerrcode, r15=xvalue, file=file
Explanation: errcode is the error code returned from the PUT macro.
value is the value of register 15 on return from the PUT macro.
file is the name of the dataset being processed.
PKUNZIP was attempting to write a record to the specified VSAM
dataset. However, an error has occurred and the PUT macro has
returned the specified hexadecimal error code.
Action: Look the error code up in the appropriate IBM manual. VSAM
Macro Return and Reason Codes are documented in the Macro
Instructions for Data Sets manual.
921
Severity: Error
Message Text: Open error xerrcode, r15=xvalue, file=file
Explanation: errcode is the error code returned from the OPEN macro.
value is the value of register 15 on return from the OPEN macro.
file is the name of the dataset being processed.
PKUNZIP was attempting to open the specified dataset. However, an
error has occurred, and the OPEN macro may have issued error
messages to the log.
Action: Find the error messages in the log and look the error code up in
the appropriate IBM manual. VSAM Macro Return and Reason Codes
are documented in the Macro Instructions for Data Sets manual.
922
Severity: Warning
Message Text: Ignoring duplicate key=key file=name
Explanation: key is the key being processed (max 37 chrs).
name is the name of the dataset being written.
PKUNZIP was attempting to write to the specified dataset when a
duplicate key was encountered. The record was ignored and processing
continued.
Action: Refer to the -OUTDUPLICATES commands.
374
PKZIP for MVS: User Reference
T4ASI025-00-00
923
Severity: Error
Message Text: Duplicate key found=key, aborting file=name
Explanation: key is the key being processed (max 37 chrs).
name is the name of the dataset being written.
PKUNZIP was attempting to write to the specified dataset when a
duplicate key was encountered. Processing for the dataset was aborted.
Action: Refer to the -OUTDUPLICATES commands.
924
Severity: Error
Message Text: Read error, code=xerrcode, r15=xvalue, file=file
Explanation: errcode is the error code returned from the GET macro.
value is the value of register 15 on return from the GET macro.
file is the name of the dataset being processed.
PKZIP was attempting to read a record from the specified VSAM dataset.
However, an error has occurred and the GET macro has returned the
specified hexadecimal error code.
Action: Look the error code up in the appropriate IBM manual. VSAM
Macro Return and Reason Codes are documented in the Macro
Instructions for Data Sets manual.
925
Severity: Error
Message Text: macro error, r15=xvalue, file=file
Explanation: macro is the macro that returned the error.
value is the value of register 15 on return from the macro.
file is the name of the dataset being processed.
Action: Attempt to determine why the dataset could not be processed.
Check for relevant JES messages in the job output. Correct the problem
and retry.
926
Severity: Error
Message Text: Dynalloc error s99code, info s99info, for DD ddname
Explanation: s99code is the return code returned by dynalloc.
s99info is the reason code returned.
ddname is the DDNAME being allocated.
PKZIP failed to allocate the specified ddname
Action: Attempt to determine why the dataset could not be processed.
Check for relevant JES messages in the job output. Correct the problem
and retry.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
375
927
Severity: Error
Message Text: Deallocate error s99code, info s99info, for DD ddname
Explanation: s99code is the return code returned by dynalloc.
s99info is the reason code returned.
ddname is the DDNAME being allocated.
PKZIP failed to allocate the specified ddname
Action: Attempt to determine why the dataset could not be processed.
Check for relevant JES messages in the job output. Correct the problem
and retry.
928
Severity: Error
Message Text: MAKEPDS not valid when overwriting a VSAM file
Explanation: You specified -MAKEPDS when attempting to overwrite a
VSAM file.
Action: Remove the -MAKEPDS command or unzip the file to a different
name.
929
Severity: Warning
Message Text: Module nodule name may not be executable when
extracted, module attributes: attributes.
Explanation: The selected load module uses attributes, such as
OVERLAY segments, that are not directly supported by PKZIP. The
extracted module may not be useful. The attributes displayed can be
interpreted using PDS2ATR in IHAPDS, alternatively browse the PDS.
Action: Test to make sure the module can be used. If not, preprocess
the member in some way (e.g. using TSO transmit) to allow it to be
compressed.
930
Severity: Warning
Message Text: Unable to extract ZIP file file
Explanation: file is the ZIP file name that PKUNZIP is attempting to
extract.
PKUNZIP has been requested to extract the specified ZIP file. However,
the dataset to which the ZIP file would be extracted already exists, and
would be overwritten if the ZIP file was extracted. PKUNZIP will not
overwrite datasets or members unless the -OVERWRITE command is
specified.
Action: Specify the correct file for extraction from the ZIP archive. Modify
the intended destination for the ZIP file by using the -HLQ command or
-NOHIERARCHY commands. Alternatively specify the -OVERWRITE
command if the dataset is to be overwritten by the extracted file.
376
PKZIP for MVS: User Reference
T4ASI025-00-00
931
Severity: Warning
Message Text: Output dataset=file member=member already exists or
-INSERTMEMBER not specified.
Explanation: file is the ZIP file name that PKUNZIP is attempting to
extract.
PKUNZIP has been requested to extract the specified member. However,
either the member already exists (and would be overwritten) and –
OVERWRITE has not been specified or the member does not exist and INSERTMEMBER has not been specified.
Action: Specify the correct file for extraction from the ZIP archive. Modify
the intended destination for the ZIP file by using the -HLQ command or
-NOHIERARCHY commands and -ZIPCUR commands. Alternatively
specify the -OVERWRITE command if the member should be overwritten
by the extracted file, or -INSERTMEMBER if the member does not exist.'
932
Severity: Warning
Message Text: Archive name <file> has been converted to <MVS
name>, which is not a valid MVS name - file ignored.
Explanation: file is the ZIP file name that PKUNZIP is attempting to
extract.
PKUNZIP has been requested to extract the specified ZIP file. However,
the name of the file did not resolve to a valid MVS dataset name.
Action: Specify the correct file for extraction from the ZIP archive. Modify
the intended destination for the ZIP file by using the -HLQ command.
Ensure that any other name conversion commands (like -PATH) are
specified correctly.
933
Severity: Error
Message Text: Unsupported attribute: attrib value: Xflag for file file
Explanation: The attribute attrib value flag has been found for the file.
file is the file that PKZIP was attempting to process.
PKZIP cannot process this type of file.
Action: Contact your supplier for more information.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
377
934
Severity: Error
Message Text: Output dataset=file already exists.
Explanation: file is the file that PKUNZIP was attempting to process.
PKUNZIP has been requested to extract the specified ZIP file. However,
the dataset to which the ZIP file would be extracted already exists, and
would be overwritten if the ZIP file was extracted. PKUNZIP will not
overwrite datasets or members unless the OVERWRITE command is
specified.
Action: Specify the correct file for extraction from the ZIP archive. Modify
the intended destination for the ZIP file by using the -HLQ command.
935
Severity: Error
Message Text: ARCHINDD and ARCHOUTDD only support sequential
files:filetype:file
Explanation: filetype is the file type that PKZIP was attempting to
process.
file is the file that PKZIP was attempting to process.
PKZIP cannot process this type of file.
Action: Contact your supplier for more information.
936
Severity: Error
Message Text: I/O error READING file:file member:member
Explanation: file is the file that PKZIP was attempting to process.
member is the member name being processed, if any.
PKZIP’s SYNAD routine was driven. PKZIP cannot process this file.
Action: Contact your supplier for more information.
937
Severity: Error
Message Text: DCB abend:code WRITING file:file member:member
Explanation: code is the system completion code encountered.
file is the file that PKZIP was attempting to process.
member is the member name being processed, if any.
PKZIP’s DCB ABEND exit was driven. PKZIP cannot process this file.
Action: Look up the system completion (abend) code and attempt to
determine and correct the problem. Contact support for more information.
378
PKZIP for MVS: User Reference
T4ASI025-00-00
938
Severity: Error
Message Text: More than 16383 files selected - PKZIP limit exceeded.
Explanation: A PKZIP archive cannot contain more than 16383 files.
Your file selection has selected more files than PKZIP can process.
Action: Modify your file selection to select fewer files.
939
Severity: Error
Message Text: No members found for file:file
Explanation: file is the file that PKZIP was attempting to process.
PKZIP was asked to process a PDS but did not find any members in the
PDS. PKZIP cannot process this dataset.
Action: Contact your supplier for more information.
940
Severity: Warning
Message Text: licence licence required to process file file
Explanation: To process the file specified by file, a licence of type
licence is required. No such licence has been found
Action: Purchase a licence of the required type if this file is to be
processed
941
Severity: Error
Message Text: Invalid combination of characteristics for file file
Explanation: .The file identified cannot be defined using the combination
of file attributes that have been defined, defaulted or specified, as the
combination is not supported
Action: Change at least one of the file specifications using the
associated command, so that the combination is valid. The attributes
causing the failure will be output in the following message(s).
942
Severity: Warning
Message Text: Attribute attribute value value
Explanation: This message identifies attributes of files that (in
combination) are not valid. The associated file is identified in a preceding
message. The value has been specified by a command, extracted from
an archive, or defaulted.
Action: Change at least one of the file specifications using the
associated command, so that the combination is valid. Refer to the
associated file documentation for details of valid combinations.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
379
943
Severity: Error
Message Text: Variable
Explanation: This message indicates an error in the processing as
described in the text of the message.
Action: Review the message output and determine the appropriate
corrective action. If this is unclear, refer to your supplier.
944
Severity: Warning
Message Text: Member name extracted from file too long – shortened to
member.
Explanation: The UNZIP processing has converted the file name for use
as an MVS dataset and has detected that the converted member name is
> 8 characters. The member name has been shortened to member.
Action: Check that the chosen name is valid. If not change the
processing commands (such as -CNVEXT or -HLQ) to create a valid
member name.
945
Severity: Error
Message Text: Unable to select file name, function error code code.
Explanation: name is the name of the file being selected.
code is the error code returned from function.
File selection for this file is not possible - the function and code should
indicate why not.
Action: Determine whether or not the indicated file should have been
processed. If so, then investigate the error code, correct as appropriate
and rerun the job.
The only function that uses this message is DYNALLOC, so the code
specified will be an error from Dynamic Allocation.
946
Severity: Error
Message Text: File Selection Process terminated due to error(s)
Explanation: File selection processing has stopped because there have
been selection error(s) and the specification requested stopping on file
selection errors.
Action: Investigate and resolve previously identified errors, and/or check
the specification of -FILESELERR. Once corrected, rerun the step.
380
PKZIP for MVS: User Reference
T4ASI025-00-00
947
Severity: Information
Message Text: Alias Entry: alias, created for member: member.
Explanation: An Alias entry has been created for the indicated member
of the library being extracted.
Action: No action required if Alias entries are expected. If not, use the
-NOALIASMEMBER command to suppress creation of Alias entries.
948
Severity: Error
Message Text: Input file file too big, exceeds 4GB limit.
Explanation: The specified input file is too big to be placed in a ZIP
archive. Processing this file will be terminated.
Action: Determine another method to process the file, for example, by
splitting it into two parts or by using GZIP processing.
949
Severity: Warning
Message Text: Archive file may exceed 4GB limit - compression
terminated.
Explanation: The archive being created may exceed 4GB in size which
is the architectural limit for a ZIP archive. ZIP processing has been
terminated. Archive may be useful.
Action: Determine another method to process the input file(s) for
example, by splitting it (them) into two parts. The archive created may be
useful - use the VIEW command and output from the failing ZIP process
to determine files that have and have not been added correctly.
950
Severity: Error
Message Text: Archive file too big, exceeds 4GB limit.
Explanation: The archive being created/read exceeds 4GB in size,
which is the architectural limit for a ZIP archive.
Action: For PKZIP, determine another method to process the input file(s)
for example, by splitting it (them) into two parts if creating the archive. If
reading the archive, recreate it with less data.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
381
951
Severity: Warning
Message Text: Archive entry archive_entry ignored, reason text
Explanation: The archive being processed contains the file
archive_entry which is not going to be processed as indicated by reason
text.
Action: Review why the entry is not going to be processed and check the
entry using the VIEW command. Correct as appropriate.
952
Severity: Information
Message Text: Statistic: Statistics
Explanation: This message is used in response to the -STATISTICS
command to output statistics at the completion of ZIP processing.
Action: None.
953
Severity: Error
Message Text: Unable to select file name, function error code code, file
is in use.
Explanation: name is the name of the dateset being selected.
code is the error code returned from function.
File selection for this file is not possible - the function and code should
indicate why not, but the processing suspects the file is busy.
Action: Determine whether or not the indicated file should have been
processed. If so, then investigate why it was not accessible. Investigate
changing the FILESELERR options to stop the processing when a busy
file is detected.
954
Severity: Warning
Message Text: Unable to determine member name for file filename, the
character ? has been used.
Explanation: Filename is the name of the dataset being selected. This
dataset is a PDS, but no member name was defined. The member name
? has been used.
Action: This problem is usually a result of coding inappropriate name
conversion parameters, for example HLQ, ZIPCUR and CNVEXT
commands. Check these commands and the output dataset defined in
this message.
382
PKZIP for MVS: User Reference
T4ASI025-00-00
955
Severity: Information
Message Text: Configuration file in use, waiting for access. File:
Filename.
Explanation: This message appears on the Console and the ZIP output.
The indicated file is currently busy. This message is repeated until the file
is released or the wait count is exceeded.
Action: Determine who/what is holding the configuration file and release
it. If necessary, use the CONFIG JCL DD to stop the processing using
the Global Configuration File.
956
Severity: Error
Message Text: Member name Memname selected, but output file
Filename is not a PDS.
Explanation: The ZIP file selected is intended to be output as a member
of a PDS, but the selected output file exists and is not a PDS.
Action: Determine whether the name conversion parameters (such as
ZIPCUR and CNVEXT) are intended to create a member as has
happened. Change these commands to reference an appropriate type of
dataset and re-run.
957
Severity: Error
Message Text: File: file-name does not exist.
Explanation: The file identified (which could be a DD) does not exist or
ZIP processing can not find it.
Action: Determine whether the file exists and how the ZIP processing
could get access to the dataset. Make changes to support this and rerun.
T4ASI025-00-00
PKZIP and PKUNZIP Messages
383
Chapter 27. User Abend Codes
During normal operation PKZIP should not abend. In a few exceptional
circumstances though (e.g. when the system prevents standard functions
from being performed) PKZIP may terminate with a user abend code.
This chapter gives details of the possible user abend codes produced by
PKZIP and PKUNZIP. The user abend codes detailed in this section are
typically accompanied by a WTO message which will appear near to the
top of the JES job log. Most messages are the same in both PKZIP and
PKUNZIP; where there is a difference, this is noted in the explanation for
the message.
WTO Message format
The format of the WTO messages produced by both PKZIP and
PKUNZIP is as follows:
prefix ABEND Unnnn < - Optional Message Text ->
where:
prefix is a prefix indicated from which program the message originated.
The possible values are:
PKZIP applies to both PKZIP and PKUNZIP
ZIP
for the PKZIP program
UNZIP for the PKUNZIP program
nnnn
is the user abend code.
Any additional message text will be described in the following section,
listed against the individual abend code.
JES Message format
The following JES message will normally accompany the WTO message:
IEF450I jobname stepname ABEND=S000 Unnnn Reason=xxxxxxxx
where:
T4ASI025-00-00
jobname
is the job name associated with this invocation of PKZIP.
stepname
PKZIP.
is the step name associated with this invocation of
nnnn
is the user abend code.
User Abend Codes
385
xxxxxxxx
is the reason code associated with this abend (typically
the return code from the failing system function).
Details of WTO messages produced by PKZIP and PKUNZIP
U0004
Message Text: PKZIP ABEND U0004
Explanation: The system was unable to release an area of storage as
requested by PKZIP.
PKZIP will perform no further processing.
Action: Contact your supplier, describing the events leading up to the
error. Provide details of the WTO message and the IEF450I message
which accompanies it. Retain the dump, the original JCL and the ZIP
archive used for possible debugging purposes.
U0008
Message Text: PKZIP ABEND U0008
Explanation: The system was unable to allocate an area of storage
requested by PKZIP.
PKZIP will perform no further processing.
Action: Try re-running the job with a larger region size e.g. in the JCL
specify:
//stepname EXEC PGM=PKZIP,REGION=4M
where: K
M
specifies 1024 byte units
specifies 1024 * 1024 byte units
If increasing the region size does not cure the problem then contact your
supplier, describing the events leading up to the error. Provide details of
the WTO message and the IEF450I message which accompanies it.
Retain the dump, the original JCL and the ZIP archive used for possible
debugging purposes.
U0028
Message Text: PKZIP ABEND U0028
Explanation: A PKZIP or PKUNZIP Subtask has not completed properly.
Previous messages should indicate the problem and the failing Subtask.
Action: Investigate the previous messages and attempt to correct them.
If the problem persists then contact your supplier, describing the events
leading up to the error. Provide details of the WTO message and the
IEF450I message which accompanies it. Retain the dump, the original
JCL and the ZIP archive used for possible debugging purposes.
386
PKZIP for MVS: User Reference
T4ASI025-00-00
Chapter 28. Licensing Messages
This chapter gives details of the standard messages produced by the
Licensing System. All the messages detailed in this section are written to
SYSPRINT by the ZIPPLIC licensing program.
Message format
The format of the messages produced by the Licensing System is as
follows:
T4Xnnns < - Message Text ->
where:
nnn
is the message number.
s
is the severity. The possible values are:
E
W
I
Error
Warning
Information
The messages produced are described in the following section, listed in
order of message number.
Details of messages
If you see a message number that is not included in this document, then
use your normal support procedures to receive an explanation.
001
Severity: Error
Message Text: Invalid input control record
Explanation: License processing has detected an error on the input
statement.
Action: Check that the input statement matches the information supplied
and (in the case of Initialisation, Report or Verification statements)
the format specified in this document. Correct and retry.
T4ASI025-00-00
Licensing Messages
387
002
Severity: Error
Message Text: Product Initialisation not supported
Explanation: An attempt was made to initialise the Product, however the
only way to initialise this product is to obtain control statements from
an authorised Distributor or Targetfour.
Action: Obtain control statements from an authorised Distributor or
Targetfour.
011
Severity: Error
Message Text: Error on SYSIN file.
Explanation: An error occurred while attempting to read control records
from SYSIN. All processing is abandoned and the program
terminates with a condition code 4 and no further processing is
performed.
Action: Check that the SYSIN file has been correctly specified and rerun
the program. If the error continues call for support.
012
Severity: Error
Message Text: Error on SYSPRINT file
Explanation: An error occurred when trying to write output to the
SYSPRINT file.
Action: Correct the problem with SYSPRINT and retry.
013
Severity: Error
Message Text: Error on getmain in update
Explanation: An error occurred while attempting to obtain storage to be
used when the License Database is physically updated. All
processing is abandoned and the program terminates with a
condition code 12.
Action: Ensure that there is enough virtual storage available and rerun
the program. If the error continues call for support.
015
Severity: Error
Message Text: Eof on pds library
Explanation: While processing the library in which ZIPPLIC resides, an
End of File condition was raised. This potentially indicates that the
library is corrupt.
Action: Check that the load library has been correctly specified and rerun
the program. If the error continues call for support.
388
PKZIP for MVS: User Reference
T4ASI025-00-00
016
Severity: Error
Message Text: Synad error on pds library
Explanation: An error has occurred during processing on the load library
on which ZIPPLIC resides. All processing is abandoned and the
program terminates with a condition code 20.
Action: Check that the load library has been correctly specified and rerun
the program. If the error continues call for support.
017
Severity: Error
Message Text: Product already installed on the system
Explanation: The Product being Added or Initialised is already present.
Action: Run a Report to determine the status of the Product on the
system. Obtain corrected control statements in the light of this
information.
025
Severity: Information
Message Text: Product verified successfully'
Explanation: The Product can be successfully used on the indicated
CPU.
Action: None.
026
Severity: Error
Message Text: Product not installed
Explanation: The Product to be verified is not installed.
Action: Ensure that the correct Product identifier has been given on the
Verification statement, correct and retry. Contact support for a
License Update to install the Product.
029
Severity: Error
Message Text: Product has expired
Explanation: Verification has reported that the Product has expired.
Action: Obtain an update to allow the use of the Product.
030
Severity: Information
Message Text: Executing on CPU: %1.
Explanation: This message displays the first processor on the system in
which the License Processing is being performed.
Action: None.
T4ASI025-00-00
Licensing Messages
389
039
Severity: Information
Message Text: Product: %1, %2 successfully
Explanation: The indicated update (%2) for the Product entry %1 has
been made.
Action: None.
040
Severity: Error
Message Text: Unable to determine CPU serial number.
Explanation: License processing has been unable to determine the CPU
ID associated with the currently executing processor. All license
processing will fail.
Action: Retry the process to confirm there was not a temporary problem.
If not, contact support.
041
Severity: Error
Message Text: License Table has already been
initialised.
Explanation: The License Database can only be initialised once.
Action: Contact support for an update to allow the processing required.
052
Severity: Error
Message Text: Todays Date does not match PARM date.
Explanation: The Short Term License utility was invoked on a date that
does not match that supplied on the PARM option.
Action: Verify that the PARM has been input correctly. If so, either rerun on the correct date or obtain a new parameter for sue from your
supplier.
053
Severity: Error
Message Text: Parameter not recognised or not valid.
Explanation: The Short Term License utility was invoked with an invalid
or missing parameter.
Action: Obtain the parameter for use from your supplier. Verify that it
has been input correctly so that the utility may use it.
054
Severity: Error
Message Text: Open failed. LICOUT file error.
Explanation: The Short Term License utility was attempting to write
license output control statements to the LICOUT dataset but this
processing failed.
Action: Verify that the appropriate JCL or control statements have been
used to specify the LICOUT dataset correctly. Re-run the generation.
390
PKZIP for MVS: User Reference
T4ASI025-00-00
055
Severity: Error
Message Text: Open failed. Dataset: %1, Member: %2,
Code: %3.
Explanation: The Update processing attempted to open the indicated
dataset %1, looking for member %2, but received the error %3.
Action: Verify that the member is in the library. Ensure that the STEPLIB
dataset correctly identifies the Targetfour Product library (and ONLY
this library).
056
Severity: Error
Message Text: Too many input statements received.
Explanation: License Update processing can only process a certain
number of statements at once. At present this limit is 60 statements.
Action: Contact support and request that they supply the update as a
number of updates, each with fewer statements.
057
Severity: Error
Message Text: Not authorised to run on this CPU
Explanation: The Product is installed but cannot be executed on the
indicated CPU.
Action: If it is essential to run the Product on that CPU, obtain an update
to authorise this.
058
Severity: Error
Message Text: Dataset: %1 block size less than move
length.
Explanation: The Update processing attempted to update a license
database but the record size of dataset %1 was less than the length
of record to be updated.
Action: Ensure that the product has been installed as documented,
especially noting the block sizes of the target datasets. Contact
support.
059
Severity: Error
Message Text: Error loading License Table.
Explanation: The License Database could not be loaded.
Action: Ensure the procedures defined for updating the License
Database have been followed correctly. Retry. Contact support for
further information.
T4ASI025-00-00
Licensing Messages
391
060
Severity: Error
Message Text: Extension limit reached, extension not
allowed.
Explanation: The extension requested cannot be installed as the limit on
the number of extensions has been reached.
Action: Obtain an update to the license Database to allow further
extensions.
061
Severity: Information
Message Text: License may be extended again.
Explanation: There are only a restricted number of times that a license
may be extended. This message indicates that there is at least one
more time that a license in this database may be extended.
Action: None.
062
Severity: Warning
Message Text: No further extensions are possible.
Explanation: No Product licenses in this License Database may be
extended again.
Action: If you believe that another extension is likely to be requested,
contact support for an update to the table to allow this.
069
Severity: Error
Message Text: Requested Function is not authorised.
Explanation: The function requested by the verify process is not
authorised on the indicated CPU.
Action: If this function is essential, obtain an update to allow it.
071
Severity: Error
Message Text: CPU Entry already exists.
Explanation: Add or initialise processing is attempting to add a CPU ID
that already exists. The update is terminated.
Action: Obtain a corrected update statement.
072
Severity: Error
Message Text: Product Entry already exists.
Explanation: Add or initialise processing is attempting to add a Product
that already exists. The update is terminated.
Action: Obtain a corrected update statement.
392
PKZIP for MVS: User Reference
T4ASI025-00-00
073
Severity: Error
Message Text: CPU Entry does not exist.
Explanation: Delete processing is attempting to remove a CPU ID that
does not exist. The update is terminated.
Action: Obtain a corrected update statement.
074
Severity: Error
Message Text: Product Entry does not exist.
Explanation: Delete processing is attempting to remove a Product that
does not exist. The update is terminated.
Action: Obtain a corrected update statement.
075
Severity: Error
Message Text: Invalid entry found in table - processing
terminated.
Explanation: A corrupted entry has been found in the database.
Updates are not allowed until this entry has been fixed.
Action: Print a report of the License Database. Pass this to support for
an update to correct the corruption.
076
Severity: Error
Message Text: License Table has not been initialised
Explanation: License Table has not been initialised.
Action: Initialise the license as documented in the Installation procedure.
080
Severity: Information
Message Text: *
Explanation: This is a ‘spacer’ line to improve the readability of the
output.
Action: None
081
Severity: Information
Message Text: %1'
Explanation: Information message, as formatted by the License
Process.
Action: None.
082
Severity: Information
Message Text: Version: %1, last updated on: %2, for: %3
Explanation: This message displays information about the License
Database, for the customer %3.
Action: None.
T4ASI025-00-00
Licensing Messages
393
083
Severity: Warning
Message Text: License Table has not been initialised.
Explanation: There are no Product/CPU entries in the License
Database, meaning it cannot be used to license any Product.
Action: Obtain an update to license the Product, or initialise the database
for a Product that is being installed.
084
Severity: Information
Message Text:
Product: %1, License Num: %2.
Explanation: The indicated Product has been found in the License
Database.
Action: None, assuming this Product is expected. If not, contact support
to obtain control statements to delete this entry.
085
Severity: Information
Message Text:
Start: %1, End: %2, Users: %3.
Explanation: This message gives the start and end dates for which the
preceding Product may be validly run.
Action: None, assuming that these dates are as expected.
086
Severity: Warning
Message Text:
No CPU entries to report.
Explanation: The preceding Product is not licensed for any CPUs.
Action: Verify that this is a valid state. If not contact support for an
update to license the CPUs on which you expect to run the Product.
087
Severity: Information
Message Text:
Licensed for: %1, %2.
Explanation: This message lists CPU entries that the preceding Product
is licensed for.
Action: None.
088
Severity: Information
Message Text:
Functions: %1%2.
Explanation: This message lists the functions as 32 characters each of
which are Y (Yes) or N (No). For each of the Y functions, the
following messages will display their associated function.
Action: None.
089
Severity: Information
Message Text:
- %1.
Explanation: Information only, this message is used as part of the
reporting process.
Action: None.
394
PKZIP for MVS: User Reference
T4ASI025-00-00
090
Severity: Information
Message Text:
CPU Table
Explanation: Information only, this message is used as part of the
reporting process.
Action: None.
091
Severity: Information
Message Text:
CPU Number: nn, CPU Id: xxxxxxxxxxxx.
Explanation: Information only, this message is used as part of the
reporting process. The CPU number will typically be a number from 0
to 15. The Id. will be ‘Not Defined’ if there is no CPU defined,
otherwise it will be the serial number of the processor.
Action: None.
098
Severity: Information
Message Text: Customer entry: %1, %2 successfully.
Explanation: The indicated update (%2) for the Customer Name entry
(%1) has been made.
Action: None.
099
Severity: Information
Message Text: CPU ID: %1, %2 successfully.
Explanation: The indicated update (%2) for the CPU entry %1 has been
made.
Action: None.
100
Severity: Information
Message Text: Processing Input: %1
Explanation: The control displayed in the message has been read in and
will be processed.
Action: None.
101
Severity: Information
Message Text: License Process: %1, starting.
Explanation: The Targetfour Licensing Processing is starting.
Action: None
102
Severity: Information
Message Text: License Process: %1, ending.
Explanation: The Targetfour Licensing Processing is terminating.
Action: None
T4ASI025-00-00
Licensing Messages
395
103
Severity: Error
Message Text: Error detected in License Table
Explanation: At least one of the entries in the License database has not
been validated correctly. This entry (these entries) will not be used
for Product validation.
Action: Print a report of the license database using the standard
Reporting facilities. Provide your support organisation with this report
and request an update for the failing entry(ies) to correct the
corruption.
104
Severity: Error
Message Text: Validation error with preceding entry
Explanation: When extracting information from the Licensing database,
a corrupt entry was detected. The preceding line(s) will indicate that
entry (which will be a Product, CPU or Customer name entry).
Information for that entry is ignored for Product validation.
Action: Provide the output to your support organisation and request an
update to the failing entry to correct the corruption.
105
Severity: Error
Message Text: Insufficient space in table - Update
aborted.
Explanation: The License Database is full and must be enlarged or
Products deleted to make space for the latest additions.
Action: Run a report to determine the status of the system. Obtain
corrected control statements in the light of this information, which will
delete redundant entries. If necessary, obtain a larger License
Database from your Supplier.
106
Severity: Information
Message Text: Update Completed.
Explanation: The updates to the license database have been completed
correctly.
Action: None.
107
Severity: Information
Message Text: Update Skipped - no changes made.
Explanation: Either no updates were supplied or these updates did not
change the information in the license database.
Action: Confirm that this is a valid situation.
396
PKZIP for MVS: User Reference
T4ASI025-00-00
123
Severity: Error
Message Text: Update error: %1, Operation: %2.
Explanation: While performing the operation %2 on the license
database, the update processing received error %1.
Action: Contact support for an explanation and corrective action.
T4ASI025-00-00
Licensing Messages
397
Part 7. Appendices
T4ASI025-00-00
399
Appendix A. Installation Guide
This section provides detailed guidance on how to install PKZIP on your
site.
PKZIP for MVS will run on any IBM or compatible host machine which is
running under an MVS (OS/390) operating system. It runs as a batch job
executed from JCL or in foreground from the ISPF panel interface.
There are five steps in the installation of the product:
1.
Prerequisites. Ensure that the intended host system is suitable
for the operation of PKZIP for MVS.
2.
MVS Installation. Create the required partitioned datasets and
load the PKZIP for MVS datasets from the installation medium.
PKZIP for MVS may be supplied on Magnetic Cartridge, or via
PC file. This Appendix describes the installation from a Magnetic
Cartridge, the Readme instructions supplied with the PC file
describes additional information applicable to installations from
that media.
3.
Licensing. License the product on a trial basis for 30 days.
4.
Apply Maintenance: Obtain and review any patches/fixes
available for the product. Apply all available patches unless
specifically instructed otherwise.
5.
Installation Verification Procedure. Confirm that PKZIP was
installed correctly by running a compression, view and
decompression.
6.
Further Tailoring. Tailor the product to match the requirements of
your installation
PKZIP for MVS is a licensed product. The installation procedure above
will provide a 30 day license to allow the product to be evaluated. During
the evaluation period, you must obtain licensing details for PKZIP from
your supplier if you wish to continue to run the product. Full details about
the licensing of the product are described in Appendix B. Licensing
Guide.
Prerequisites
Before installing PKZIP for MVS you should ensure that the intended host
system is capable of running PKZIP 2.5 for MVS. To invoke PKZIP and
PKUNZIP via the ISPF panel interface, a user must have the
recommended TSO size of 4Mb or above.
T4ASI025-00-00
Installation Guide
401
Suitable Host Systems
Prerequisites for PKZIP for MVS are an MVS/ESA, OS/390 operating
system or higher. The appropriate level of JES (JES2 or JES3) is also
required.
Notes for existing users of PKZIP Version 2.1 for MVS
The installation procedure has changed for PKZIP 2.5 for MVS, your
existing JCL used for installing PKZIP 2.1 for MVS is not valid. Please
use the new JCL provided.
The main changes are:

Selection of translation table at installation time

No 24 bit version of the product (explained below).
Users of PKZIP 2.1 for MVS were provided with two versions of PKZIP
for installation. One version was designed to run in 31 bit addressing
mode (AMODE), the other in 24 bit addressing mode. Installations
running DFP were required to run the 24 bit version because some I/O
calls to DFP cannot support 31 bit addressing or the use of storage
above the 16Mb line.
Only one version of PKZIP 2.5 for MVS is provided. It runs in AMODE 31
using storage above the 16Mb line wherever possible. When an I/O call
is made it switches temporarily to AMODE 24 and uses only data below
the 16Mb line.
MVS Installation
This section describes the first stages in the installation of PKZIP for
MVS. The stages are:
1. Understand what libraries are supplied and what datasets will be
created.
2. Decide which translation table you require.
3. Load the PKZIP for MVS datasets from the installation media.
PKZIP for MVS Supplied Libraries
The following libraries are supplied with PKZIP for MVS.
PKZIP for MVS Supplied Libraries
402
Medium DSN
Description
Suggested DSN
ZIP.Vnn.SOURCE
Source Files
PKZIP.Vnnx.SOURCE
ZIP.Vnn.LOADLIB
Load Libraries
PKZIP.Vnnx.LOADLIB
ZIP.Vnn.CNTL
Sample JCL
PKZIP.Vnnx.CNTL
PKZIP for MVS: User Reference
T4ASI025-00-00
PKZIP for MVS Supplied Libraries
Medium DSN
Description
Suggested DSN
ZIP.Vnn.CLIST
CLIST files
PKZIP.Vnnx.CLIST
ZIP.Vnn.MSGS
Message files
PKZIP.Vnnx.MSGS
ZIP.Vnn.PANELS
ISPF panels
PKZIP.Vnnx.PANELS
Where:
nn
is the version number of the product. (e.g. 22 for version 2
release 2).
x
is the maintenance level of the product. (e.g. 0 for maintenance
level 0).
Partitioned Datasets for PKZIP for MVS
Various partitioned datasets are required to contain the PKZIP for MVS
programs, etc. The space requirement for these libraries is described in
the tables below. The datasets are created automatically by the
IEBCOPY restore JCL provided later in this section. The datasets can be
created manually if required using the given space and DCB information
but you will need to change the restore JCL accordingly.
PKZIP for MVS Library Allocations for a 9345 Deviceii
ii
T4ASI025-00-00
Library Name:
CNTL
SOURCE
LOADLIB
DSORG:
PO
PO
PO
RECFM:
FB
FB
U
LRECL:
80
80
BLKSIZE:
6160
6160
23200
Space Units
TRK
TRK
TRK
Primary Quantity
2
1
35
Secondary Quantity
1
1
5
Directory Blocks:
5
5
10
These figures are based upon 46456 bytes/track, 15 tracks/cylinder.
Installation Guide
403
PKZIP for MVS Library Allocations for a 9345 Device (continued)
404
Library Name:
CLIST
MSGS
PANELS
DSORG:
PO
PO
PO
RECFM:
FB
FB
FB
LRECL:
80
80
80
BLKSIZE:
6160
6160
6160
Space Units
TRK
TRK
TRK
Primary Quantity
10
1
5
Secondary Quantity
1
1
1
Directory Blocks:
5
1
6
PKZIP for MVS: User Reference
T4ASI025-00-00
Contents of the PKZIP for MVS Libraries
The following tables list the members of each library supplied.
Contents of ZIP.Vnn.CNTL
Member Name:
Contents
ASMTRAN
Example JCL for the assembly of a different translation
table at your installation.
EVAL
JCL to license PKZIP for Evaluation
README
Special or late breaking instructions related to the
installation and/or product.
REPORT
JCL to verify licensing details for PKZIP
RUNCPUID
Example JCL showing how the ZIPCPUID program
may be run.
RUNPLIC
Example JCL showing how the ZIPPLIC licensing
program may be run – ZIPPLIC is used to update
license details.
RUNSTL
Example JCL showing how the ZIPPSTL program may
be run – ZIPPSTL is used to create short-term license
cards.
UNZIP
Part of the installation verification procedure,
demonstrates how to decompress data from a ZIP
archive.
VIEW
Part of the installation verification procedure,
demonstrates how to view the contents of a ZIP
archive.
ZIP
Part of the installation verification procedure,
demonstrates how to compress data into a ZIP archive.
ZIPPATCH
Sample JCL to create a patch report.
Contents of ZIP.Vnn.SOURCE
T4ASI025-00-00
Member Name:
Contents
LATIN1
Translation table source, specifically for GZIP.
UKASCII
U.K. version of the translation table source.
UKASCIIE
U.K. version of the translation table source, with euro
support.
USASCII
U.S. version of the translation table source.
USASCIIE
U.S. version of the translation table source, with euro
support.
Installation Guide
405
Contents of ZIP.Vnn.LOADLIB
406
Member Name
Contents
ASCII
User selected translation table
LATIN1
User selected translation table
PKUNZIP
Executable decompress module
PKZIP
Executable compress module
UKASCII
U.K. version of the translation table
UKASCIIE
U.K. version of the translation table, euro support
USASCII
U.S. version of the translation table
USASCIIE
U.S. version of the translation table, euro support
ZFHRBP00
Read file handler module
ZFHRBS00
Read file handler module
ZFHRGEN
Component part of read file handlers
ZFHRVS00
Read file handler module
ZFHWBP00
Write file handler module
ZFHWBS00
Write file handler module
ZFHWGEN
Component part of write file handlers
ZFHWVS00
Write file handler module
ZFSGEN
Component part of file selectors
ZFSUDF00
Default UNZIP file selector
ZFSUDF02
Component part of UNZIP file selector
ZFSZDF00
Default ZIP file selector
ZFSZDF02
Component part of ZIP file selector
ZIPCPUID
Executable module used to list the CPUids online.
ZIPCTASK
Component part of PKZIP/PKUNZIP
ZIPDTASK
Component part of PKZIP/PKUNZIP
ZIPDTSKG
Component part of PKZIP/PKUNZIP
ZIPMS
Loadable module containing the PKZIP Messages
ZIPMTASK
Component part of PKZIP/PKUNZIP
ZIPPATCH
Used to report on patches that have been applied
ZIPPAUTH
Component part of licensing system
ZIPPLIC
Executable licensing system module
ZIPPSTL
Executable licensing system module
ZIPPTASK
Component part of PKZIP/PKUNZIP
ZIPTTASK
Component part of PKZIP/PKUNZIP
PKZIP for MVS: User Reference
T4ASI025-00-00
Contents of ZIP.Vnn.LOADLIB
Member Name
Contents
ZIPZTASK
Component part of PKZIP/PKUNZIP
ZIPZTSKG
Component part of PKZIP/PKUNZIP
Contents of ZIP.Vnn.CLIST
Member Name:
Contents
PKALLOC
Component part of the ISPF panel interface
PKBEGIN
Sample CLIST to dynamically add PKZIP for MVS
ISPF libraries.
PKCLEAN
Used to tidy up files after a system failure
PKCOMP
Component part of the ISPF panel interface
PKCONFIG
Component part of the ISPF panel interface
PKCONFR
Component part of the ISPF panel interface
PKCONFW
Component part of the ISPF panel interface
PKDECOMP
Component part of the ISPF panel interface
PKDELETE
Component part of the ISPF panel interface
PKLICNSE
Component part of the ISPF panel interface
PKOUTPUT
Component part of the ISPF panel interface
PKSTART
Used to start the ISPF panel interface
PKVIEW
Component part of the ISPF panel interface
PKVWARCH
Component part of the ISPF panel interface
PKXTRFLE
Component part of the ISPF panel interface
Contents of ZIP.Vnn.MSGS
T4ASI025-00-00
Member Name:
Contents
PKM00
Message file for the ISPF panels
PKM01
Message file for the ISPF panels
Installation Guide
407
Contents of ZIP.Vnn.PANELS
Member Name:
Contents
PKZIPHGS
Help panel
PKZIPHTC
Help panel
PKZIPH00
Help panel
PKZIPH01
Help panel
PKZIPH02
Help panel
PKZIPH03
Help panel
PKZIPH04
Help panel
PKZIPH05
Help panel
PKZIPH06
Help panel
PKZIPH07
Help panel
PKZIPH10
Help panel
PKZIPH11
Help panel
PKZIPH21
Help panel
PKZIPH61
Help panel
PKZIPH71
Help panel
PKZIPIX1
Help index panel
PKZIP00
Main processing panel
PKZIP01
Main processing panel
PKZIP02
Main processing panel
PKZIP03
Main processing panel
PKZIP03Z
Main processing panel
PKZIP04
Main processing panel
PKZIP05
Main processing panel
PKZIP06
Main processing panel
PKZIP07
Main processing panel
PKZIP10
Main processing panel
PKZIP11
Main processing panel
Choosing the correct translation table
PKZIP may perform EBCDIC to ASCII or ASCII to EBCDIC translations
on the data contained within files selected for compression or
decompression. These translations are controlled by a translation table.
PKZIP for MVS is shipped with multiple translation tables. The two most
frequently used tables are:
408
PKZIP for MVS: User Reference
T4ASI025-00-00
USASCII
For users in America
UKASCII
For UK users and the rest of the world.
A description of these tables and the other tables supplied with PKZIP for
MVS, is included in Chapter 16. Translation and Translation Tables.
Please make a note of the translation table you require, you will be asked
to specify it when you unload the product from the cartridge. The
installation process unloads all available tables to your load library and
then copies your chosen table to the default name ‘ASCII’. When run,
PKZIP looks for the default translation table called ‘ASCII’.
If the translation tables above do not meet your requirements then you
can create your own table by following the instructions described in
Chapter 16. Translation and Translation Tables. Alternatively contact
your supplier, as they may be able to assist you in creating a translation
table that meets your requirements.
Loading the PKZIP for MVS Datasets from Cartridge
The PKZIP for MVS cartridge supplied has a unique Volume Serial
number. The cartridge contains 6 partitioned datasets that have been
copied onto the cartridge using IEBCOPY.
You will be notified of the Volume Serial number on delivery.
To restore the partitioned datasets from cartridge execute IEBCOPY from
a batch job. The JCL example below creates the required datasets and
unloads the supplied libraries into them.
Note:

Existing PKZIP Version 2.0 and 2.1 for MVS users should note that
the JCL used to install the 2.0 and 2.1 versions of the product is no
longer valid.
JCL for loading PKZIP for MVS
//<job card>
//RESTORE EXEC PGM=IEBCOPY
//SYSPRINT DD SYSOUT=*
//SYSUT3
DD UNIT=SYSDA,SPACE=(1700,(400,400))
//SYSUT4
DD UNIT=SYSDA,SPACE=(1700,(400,400))
//*
//* INPUT DATA SETS DEFINED
//*
//INCNTL
DD DSN=ZIP.Vnn.CNTL,
//
DISP=OLD,
//
VOL=(,RETAIN,SER=vvvvvv),UNIT=CART,
//
LABEL=(1,SL)
//INSRCE
DD DSN=ZIP.Vnn.SOURCE,
//
DISP=OLD,
T4ASI025-00-00
Installation Guide
409
//
VOL=(,RETAIN,SER=vvvvvv),UNIT=CART,
//
LABEL=(2,SL)
//INLOAD
DD DSN=ZIP.Vnn.LOADLIB,
//
DISP=OLD,
//
VOL=(,RETAIN,SER=vvvvvv),UNIT=CART,
//
LABEL=(3,SL)
//INCLIST DD DSN=ZIP.Vnn.CLIST,
//
DISP=OLD,
//
VOL=(,RETAIN,SER=vvvvvv),UNIT=CART,
//
LABEL=(4,SL)
//INMSGS
DD DSN=ZIP.Vnn.MSGS,
//
DISP=OLD,
//
VOL=(,RETAIN,SER=vvvvvv),UNIT=CART,
//
LABEL=(5,SL)
//INPANELS DD DSN=ZIP.Vnn.PANELS,
//
DISP=OLD,
//
VOL=SER=vvvvvv,UNIT=CART,
//
LABEL=(6,SL)
//*
//* OUTPUT DATA SETS DEFINED
//*
//OTCNTL
DD DSN=<PKZIP JCL library>,
//
DISP=(,CATLG,DELETE),
//
VOL=SER=xxxxxx,UNIT=<unit>,
//
SPACE=(TRK,(2,1,5),RLSE),
//
BLKSIZE=6160,LRECL=80,RECFM=FB,DSORG=PO
//OTSRCE
DD DSN=<PKZIP source library>,
//
DISP=(,CATLG,DELETE),
//
VOL=SER=xxxxxx,UNIT=<unit>,
//
SPACE=(TRK,(1,1,5),RLSE),
//
BLKSIZE=6160,LRECL=80,RECFM=FB,DSORG=PO
//OTLOAD
DD DSN=<PKZIP load library>,
//
DISP=(,CATLG,DELETE),
//
VOL=SER=xxxxxx,UNIT=<unit>,
//
SPACE=(TRK,(35,5,10),RLSE),
//
BLKSIZE=23200,RECFM=U,DSORG=PO
//OTCLIST DD DSN=<PKZIP CLIST library>,
//
DISP=(,CATLG,DELETE),
//
VOL=SER=xxxxxx,UNIT=<unit>,
//
SPACE=(TRK,(10,1,5),RLSE),
//
BLKSIZE=6160,LRECL=80,RECFM=FB,DSORG=PO
//OTMSGS
DD DSN=<PKZIP message library>,
//
DISP=(,CATLG,DELETE),
//
VOL=SER=xxxxxx,UNIT=<unit>,
//
SPACE=(TRK,(1,1,1),RLSE),
//
BLKSIZE=6160,LRECL=80,RECFM=FB,DSORG=PO
//OTPANELS DD DSN=<PKZIP panels library>,
//
DISP=(,CATLG,DELETE),
//
VOL=SER=xxxxxx,UNIT=<unit>,
//
SPACE=(TRK,(5,1,6),RLSE),
//
BLKSIZE=6160,LRECL=80,RECFM=FB,DSORG=PO
//*
//* IEBCOPY INPUT CONTROL CARDS
//*
//SYSIN
DD *
COPY INDD=INCNTL,OUTDD=OTCNTL
COPY INDD=INSRCE,OUTDD=OTSRCE
COPY INDD=INLOAD,OUTDD=OTLOAD
COPY INDD=INLOAD,OUTDD=OTLOAD
SELECT MEMBER=((tablename,ASCII))
COPY INDD=INCLIST,OUTDD=OTCLIST
COPY INDD=INMSGS,OUTDD=OTMSGS
COPY INDD=INPANELS,OUTDD=OTPANELS
/*
//
410
PKZIP for MVS: User Reference
T4ASI025-00-00
Example IEBCOPY Restore JCL for PKZIP for MVS
Note that in the above JCL, there are two COPY statements for INLOAD.
The first statement copies the entire contents of the PKZIP load library to
your disk. The second statement selects your chosen Translation Table
and makes a copy of it under the default name of ASCII (see Choosing
the correct translation table earlier in the chapter for more details).
The following should be replaced according to any release notes or
information accompanying the installation media and your installation
standards:
<job card>
should be replaced with the job details
required for running this job, in
accordance with your installation
standards.
nn
is the version number of the product.
(e.g. 25 for Version 2 release 5).
xxxxxx
is the name of the disk on which the ZIP
libraries are to be placed.
vvvvvv
is the volume label of the distribution
cartridge (e.g. ZIP25x).
<PKZIP JCL library>
should be replaced with
PKZIP.Vnnx.CNTL
(nnx is the version and maintenance level
e.g. 25x). Alternatively, specify a suitable
dataset name and prefix which matches
your installation standards.
<PKZIP source library>
should be replaced with
PKZIP.Vnnx.SOURCE
(nnx is the version and maintenance level e.g.
25x). Alternatively, specify a suitable dataset
name and prefix which matches your
installation standards.
<PKZIP load library>
should be replaced with
PKZIP.Vnnx.LOADLIB
(nnx is the version and maintenance level
e.g. 25x). Alternatively, specify a suitable
dataset name and prefix which matches
your installation standards.
<PKZIP CLIST library>
should be replaced with
PKZIP.Vnnx.CLIST
(nnx is the version and maintenance level
e.g. 25x). Alternatively, specify a suitable
dataset name and prefix which matches
your installation standards.
T4ASI025-00-00
Installation Guide
411
<PKZIP message library>
should be replaced with
PKZIP.Vnnx.MSGS
(nnx is the version and maintenance level
e.g. 25x). Alternatively, specify a suitable
dataset name and prefix which matches
your installation standards.
<PKZIP panels library>
should be replaced with
PKZIP.Vnnx.PANELS
(nnx is the version and maintenance level
e.g. 25x). Alternatively, specify a suitable
dataset name and prefix which matches
your installation standards.
<unit>
should be replaced with the name or
generic type of the unit on which the ZIP
libraries are to be placed.
tablename
should be replaced with the name of the
translation table you require e.g.
USASCII
Review the Readme in the CNTL Library
This file may contain additional information related to the installation
and/or product.
Licensing
As supplied, PKZIP for MVS is not licensed. An unlicensed copy of
PKZIP is not capable of compressing, decompressing files or viewing ZIP
archives.
The following instructions describe how to license PKZIP for MVS for
use. New users, or users migrating from previous levels of PKZIP before
PKZIP 2.5 for MVS should license the product for an evaluation period,
using the instructions given in Licensing PKZIP for evaluation. Current
PKZIP 2.5 for MVS users migrating to this release should follow the steps
described in Migrating Existing PKZIP 2.5 for MVS License
arrangements.
Licensing PKZIP for evaluation
PKZIP for MVS is supplied with a licensing utility which will fully license
the product on a trial basis for 30 days. During this period, you must
obtain licensing details for PKZIP from your supplier, if you wish to
continue to run the product.
This example demonstrates how PKZIP can be licensed for evaluation
purposes.
1.
412
Edit the "EVAL" member of the CNTL library according to the
notes below. This step initialises PKZIP for evaluation purposes.
PKZIP for MVS: User Reference
T4ASI025-00-00
//EVAL
EXEC PGM=ZIPPLIC,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSIN
DD *
P I PKZMVS25
C I
Z
/*
PKZIP.V25x.LOADLIB
If you chose a different name for the
PKZIP for MVS LOAD library then you
should correct the STEPLIB DD
statement. Update access to the PDS
load library is required to run this job.
Also, do not use LNKLST to find
ZIPPLIC, the STEPLIB must be
specified.
SYSIN
Note that these commands begin in
Column 11.
2.
Submit the JCL and check the results, it should give a return
code 00.
3.
Edit the "REPORT" member of the CNTL library according to the
notes below. This JCL reports on the state of the PKZIP
licensing.
//T4ZIP
EXEC PGM=ZIPPLIC,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSIN
DD *
R
/*
PKZIP.V25x.LOADLIB
4.
T4ASI025-00-00
If you chose a different name for the
PKZIP for MVS LOAD library then you
should correct the STEPLIB DD
statement.
Submit the JCL and check the results, it should give a return
code 00 and output similar to the following:
Installation Guide
413
T4X101I
T4X030I
T4X080I
T4X100I
T4X080I
T4X081I
T4X081I
T4X080I
T4X082I
T4X080I
T4X084I
T4X085I
T4X088I
T4X089I
T4X089I
T4X089I
T4X089I
T4X089I
T4X089I
T4X089I
T4X089I
T4X089I
T4X087I
T4X080I
T4X090I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X080I
T4X081I
T4X080I
T4X102I
License Process: T4XPLIC MVS
4.0
level x, starting.
Executing on CPU: 120F0573xxxx.
*
Processing Card:
R
*
Report on contents of License Table
=====================================
*
Version: 0100, last updated on: 19xx0515, for: Evaluation User
*
Product: PKZMVS25, License Num: EVALUATION
.
Start: 19xx0515, End: 19xx0614, Users: 32767.
Functions: YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY.
- PKZIP Compression.
- PKUNZIP Decompression.
- PKZIP PDS file handler.
- PKZIP Sequential File Handler.
- PKZIP HyperZIP.
- PKZIP VSAM File Handler.
- PKZIP Magnetic Tape/cartridge File Handler.
- PKZIP ISPF Panel Interface.
- PKZIP GigaZip.
Licensed for: 12**0573xxxx, Matched.
*
CPU Table.
CPU Number: 00, CPU Id: 120F0573xxxx.
CPU Number: 01, CPU Id: Not Defined .
CPU Number: 02, CPU Id: Not Defined .
CPU Number: 03, CPU Id: Not Defined .
CPU Number: 04, CPU Id: Not Defined .
CPU Number: 05, CPU Id: Not Defined .
CPU Number: 06, CPU Id: Not Defined .
CPU Number: 07, CPU Id: Not Defined .
CPU Number: 08, CPU Id: Not Defined .
CPU Number: 09, CPU Id: Not Defined .
CPU Number: 10, CPU Id: Not Defined .
CPU Number: 11, CPU Id: Not Defined .
CPU Number: 12, CPU Id: Not Defined .
CPU Number: 13, CPU Id: Not Defined .
CPU Number: 14, CPU Id: Not Defined .
CPU Number: 15, CPU Id: Not Defined .
*
Finished reporting of License Table
*
License Process: T4XPLIC MVS
4.0
level x, ending.
Note:

Throughout the evaluation period PKZIP will output a minimum return
code of 04 for all jobs, this is because of the warning message
ZIP023W which reminds the user that the license period will soon
expire. It is therefore important that you check all messages output
by PKZIP to ensure that no other warnings have been overlooked.
Migrating Existing PKZIP 2.5 for MVS License arrangements
There are two methods available to replicate the licensing applicable to
the existing PKZIP 2.5 for MVS, in the newly installed release:
1. Copy the existing licensing details from PKZIP 2.5 for MVS. Details
of the existing license arrangements are maintained in the LOADLIB
member ZIPPAUTH. Copying the existing details involves copying
this member from the old to the new 2.5 library.
414
PKZIP for MVS: User Reference
T4ASI025-00-00
2. Re-apply all the update control statements that have been used to
license the product (including the initial evaluation control
statements).
Option 1 is the recommended option because it will reduce the effort
required and will guarantee that the licensing arrangements are identical.
Apply Maintenance
Fixes can be issued to correct problems found with a specific level of the
PKZIP software. Once verified, the fix is included in the Patch Notes
Document for that level of software. In most cases the problem is then
fixed permanently in the next maintenance release of the product.
When you install your copy of PKZIP, you should also obtain and review
the latest version of the Patch Notes Document, available from your
supplier, the ASi web site, the Targetfour web site, or the Targetfour Help
Desk (contact information can be found on the inside front cover). Apply
all fixes before attempting to use the product.
To list the patches that have been applied, run the ZIPPATCH utility.
For further information see Patch Notes in Chapter 25. What To Do If
You Have a Problem on page 308.
Installation Verification Procedure
This section describes a Confidence Test that will confirm whether the
PKZIP for MVS product has been installed correctly. The stages are:
1.
Compress the Source library that was downloaded off the tape.
2.
View the contents of the archive just created.
3.
Unzip the Source library to a new dataset.
The JCL for the test can be found in the CNTL library downloaded during
installation. If you have any problems with the confidence test then you
should first double check that you have made no typing errors and that
any modified parts of the JCL have been replaced correctly according to
your installation standards.
The test is designed to be straightforward and should only fail in the
unlikely event that there is an incompatibility between PKZIP for MVS and
your system. If problems do occur then please contact your supplier for
assistance.
T4ASI025-00-00
Installation Guide
415
Test 1: Compress a dataset
This test demonstrates how PKZIP can be used to compress the
contents of a partitioned dataset (PDS).
1.
Edit the "ZIP" member of the CNTL library according to the notes
below.
//STPZIP
EXEC PGM=PKZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(PKZIP.CONFID.TEST.ZIP)
-ARCHUNIT(SYSDA)
PKZIP.V25x.SOURCE(*)
/*
PKZIP.V25x.LOADLIB
if you chose a different name for the
PKZIP for MVS LOAD library then you
should correct the STEPLIB DD
statement.
PKZIP.CONFID.TEST.ZIP
this is the name of the ZIP archive that
will be created. If your system will not
allow you to create datasets with the
high level qualifier "PKZIP" then you
should choose a different name.
SYSDA
this is the esoteric device name for the
group of volumes which will be used to
select the volume on which the ZIP
archive will be created. Change this to a
name that is available on your system. If
you are running DFSMS and normally
use SMS classes to allocate datasets
then you should replace the -ARCHUNIT
command with the
-ARCHxCLASS(TSTCLASS) command,
where x identifies the type of class and
TSTCLASS is the name of a valid class.
PKZIP.V25x.SOURCE
if you chose a different name for the
PKZIP for MVS SOURCE library then
you should correct this statement. The
"(*)" tells PKZIP to compress all the
members in the PDS.
2.
416
Submit the JCL and check the results, it should give a return
code 04. All jobs run during the evaluation period will give a
minimum return code of 04, this is because a warning message
is issued to inform the user that the license is due to expire soon.
The job should give output similar to following:
PKZIP for MVS: User Reference
T4ASI025-00-00
ZIP023W
ZIP101I
ZIP010I
ZIP010I
ZIP010I
ZIP010I
ZIP453I
ZIP453I
ZIP453I
ZIP453I
ZIP453I
ZIP102I
PKZIP licence will expire in 29 days.
PKZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
-ARCHIVE(PKZIP.CONFID.TEST.ZIP)
–ARCHUNIT(SYSDA)
PKZIP.V25x.SOURCE(*)
Compressed file PKZIP.V25x.SOURCE(LATIN1) as PKZIP/V25x/SOURCE/LATIN1 (Deflated 80%)
Compressed file PKZIP.V25x.SOURCE(UKASCII) as PKZIP/V25x/SOURCE/UKASCII (Deflated 85%)
Compressed file PKZIP.V25x.SOURCE(UKASCIIE) as PKZIP/V25x/SOURCE/UKASCIIE (Deflated 85%)
Compressed file PKZIP.V25x.SOURCE(USASCII) as PKZIP/V25x/SOURCE/USASCII (Deflated 86%)
Compressed file PKZIP.V25x.SOURCE(USASCIIE) as PKZIP/V25x/SOURCE/USASCIIE (Deflated 85%)
PKZIP MVS
2.5
level x ending.
3.
Verify that a new dataset called "PKZIP.CONFID.TEST.ZIP" has
been created. This is the ZIP archive, it contains the compressed
data.
Test 2: View a ZIP archive
This test demonstrates how PKZIP can be used to view the contents of a
ZIP archive.
1.
Edit the "VIEW" member of the CNTL library according to the
notes below.
//STPZIP
EXEC PGM=PKZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(PKZIP.CONFID.TEST.ZIP)
-VIEW
/*
PKZIP.V25x.LOADLIB
if you chose a different name for the
PKZIP for MVS LOAD library then you
should correct the STEPLIB DD
statement.
PKZIP.CONFID.TEST.ZIP
this is the name of the ZIP archive that
was created in the previous test. If you
chose a different name then you should
change it here also.
2.
T4ASI025-00-00
Submit the JCL and check the results, it should give a return
code 04. All jobs run during the evaluation period will give a
minimum return code of 04, this is because a warning message
is issued to inform the user that the license is due to expire soon.
The job should give output similar to the following:
Installation Guide
417
ZIP023W
ZIP101I
ZIP010I
ZIP010I
ZIP010I
ZIP501I
ZIP502I
ZIP503I
ZIP503I
ZIP503I
ZIP503I
ZIP503I
ZIP505I
ZIP506I
ZIP102I
PKZIP licence will expire in 29 days.
PKZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
-ARCHIVE(PKZIP.CONFID.TEST.ZIP)
-VIEW
Length Method
Size Ratio
Date
Time CRC-32
Name
---------- ------- ---------- ----- ---------- ----- ----------5003 DeflatN
1024 80% 04-28-19xx 12:47 C916C794
PKZIP/V25x/SOURCE/LATIN1
13367 DeflatN
2018 85% 04-28-19xx 12:47 A0535110
PKZIP/V25x/SOURCE/UKASCII
13859 DeflatN
2178 84% 04-28-19xx 12:47 22A8575C
PKZIP/V25x/SOURCE/UKASCIIE
13367 DeflatN
2001 85% 04-28-19xx 12:47 5C244B68
PKZIP/V25x/SOURCE/USASCII
13859 DeflatN
2165 84% 04-28-19xx 12:47 496D5306
PKZIP/V25x/SOURCE/USASCIIE
------------------- ----59455
9386 83%
PKZIP MVS
2.5
level x ending.
3.
This job displays the names of the compressed files contained in
the ZIP archive. For more information about the files compressed
try repeating this job, replacing the -VIEW command with the
-VIEWDETAIL command. The -VIEWDETAIL command will give
details of the file attributes stored for each dataset or member.
Test 3: Decompress a dataset
This test demonstrates how PKZIP can be used to decompress the
contents of a ZIP archive.
1.
Edit the "UNZIP" member of the CNTL library according to the
notes below.
//STPUNZIP EXEC PGM=PKUNZIP,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSIN
DD *
-ECHO
-ARCHIVE(PKZIP.CONFID.TEST.ZIP)
-HLQ(PKZIP,PKZIP.NEW)
-OUTUNIT(SYSDA)
/*
418
PKZIP.V25x.LOADLIB
if you chose a different name for the
PKZIP for MVS LOAD library then you
should correct the STEPLIB DD
statement.
PKZIP.CONFID.TEST.ZIP
this is the name of the ZIP archive that
was created in the previous test. If you
chose a different name then you should
change it here also.
PKZIP for MVS: User Reference
T4ASI025-00-00
PKZIP/PKZIP.NEW
the -HLQ command is used to rename
files when extracting them from the ZIP
archive. In this case all files starting with
the characters "PKZIP" will be extracted
with the high level qualifier
"PKZIP.NEW". If you chose a different
name for your SOURCE library then you
should modify the command
accordingly. If you remove the -HLQ
command then PKZIP will attempt to
extract the files with their original names,
this will fail as the datasets already exist,
however, you can force the files to be
overwritten by using the -OVERWRITE
command.
SYSDA
this is the esoteric device name for the
group of volumes that will be used to
select the volume on which the file will
be created. Change this to a name that
is available on your system. If you are
running DFSMS and normally use SMS
classes to allocate datasets then you
should replace the -OUTUNIT command
with the -OUTxCLASS(TSTCLASS)
command, where x identifies the type of
class and TSTCLASS is the name of a
valid class.
2.
UNZIP023W
UNZIP101I
UNZIP010I
UNZIP010I
UNZIP010I
UNZIP010I
UNZIP609I
UNZIP609I
UNZIP609I
UNZIP609I
UNZIP609I
UNZIP102I
Submit the JCL and check the results, it should give a return
code 04. All jobs run during the evaluation period will give a
minimum return code of 04, this is because a warning message
is issued to inform the user that the license is due to expire soon.
The job should give output similar to the following:
PKUNZIP licence will expire in 29 days.
PKUNZIP MVS
2.5
level x patch nn starting: ccyy/mm/dd hh:mm:ss
-ECHO
-ARCHIVE(PKZIP.CONFID.TEST.ZIP)
-HLQ(PKZIP,PKZIP.NEW)
–OUTUNIT(SYSDA)
ZIP file PKZIP/V25x/SOURCE/LATIN1 inflated to MVS file PKZIP.NEW.V25x.SOURCE(LATIN1)
ZIP file PKZIP/V25x/SOURCE/UKASCII inflated to MVS file PKZIP.NEW.V25x.SOURCE(UKASCII)
ZIP file PKZIP/V25x/SOURCE/UKASCIIE inflated to MVS file PKZIP.NEW.V25x.SOURCE(UKASCIIE)
ZIP file PKZIP/V25x/SOURCE/USASCII inflated to MVS file PKZIP.NEW.V25x.SOURCE(USASCII)
ZIP file PKZIP/V25x/SOURCE/USASCIIE inflated to MVS file PKZIP.NEW.V25x.SOURCE(USASCIIE)
PKUNZIP MVS
2.5
level x ending.
T4ASI025-00-00
3.
Confirm that a new PDS called "PKZIP.NEW.V25x.SOURCE"
has been created. Verify visually or using a file comparison utility
that the members in the old and new datasets are identical. The
information required to create the dataset was taken from the file
attributes stored for each file in the ZIP archive.
4.
The Installation Verification Procedure is now complete. The
datasets "PKZIP.NEW.V25x.SOURCE" and
"PKZIP.CONFID.TEST.ZIP" can now be deleted if required.
Installation Guide
419
Further Tailoring
Once you are confident the PKZIP for MVS is working correctly in your
installation, you may consider further tailoring to ensure that PKZIP can
be used as effectively as possible. Areas that you might consider
include:

Configuration File: see Configuration File in Chapter 14. Command
Input.

Making the product available to all users via the Link List or other
shared library area. Note that the licensing update procedures
require that the PKZIP library be accessed via the STEPLIB of the
updating job.
ISPF Integration
To use the ISPF Interface of PKZIP for MVS, two additional steps are
required:
1. The PKSTART CLIST must be updated to reflect the PKZIP for MVS
load library.
2. Users must be given access to the PKZIP ISPF libraries and
commands.
These two steps are described in this section.
Further documentation for the ISPF interface is included in Chapter 17.
Using the ISPF Panel Interface on page 123.
Update PKSTART CLIST
The PKSTART CLIST specifies the Load library that is used by the ISPF
interface. This must be updated to indicate the dataset in which the Load
Library has been placed, otherwise the ISPF interface will not work
correctly.
To update the CLIST, edit the PKSTART member. Near the beginning,
you find lines similar to the following:
/* Set PKZIP for MVS 2.5/x Load library */
/* The following line is set at installation time to
specify
the library used by PKZIP processing */
PKLOADLB = "PKZIP.V25.LOADLIB"
The load library name must be updated to indicate the library actually
containing PKZIP for MVS. For example, if the product had been
installed in the dataset SYS3.ZIP.V25.LOADLIB, then the updated line
would look like the following:
PKLOADLB = "SYS3.ZIP.V25.LOADLIB"
420
PKZIP for MVS: User Reference
T4ASI025-00-00
Access to ISPF Libraries
In addition, users require access to the associated ISPF libraries (CLIST,
PANEL and MSG libraries) and must be able to use the PKSTART CLIST
to start the interface and the PKCLEAN CLIST to ‘clean-up’ after a
problem.
There are a variety of ways that this can be achieved. This section
describes two approaches:
1. Fixed addition of the ISPF Interface libraries to the users’ ISPF logon
procedure, with the user invoking the CLISTs using TSO commands
2. Creation of a CLIST that dynamically adds the PKZIP for MVS
libraries to the appropriate concatenation, with the user invoking this
processing via a menu.
For ease of use and maintenance, the second approach, where the
appropriate commands could be integrated into an ISPF panel and the
PKZIP for MVS libraries are added dynamically, is recommended.
Static Addition of the ISPF libraries
Before a user can access the ISPF panel interface, the following changes
must have been made:

The CLIST library should be added to the SYSPROC concatenation.

The Panel library should be added to the ISPPLIB concatenation.

The message library should be added to the ISPMLIB concatenation.
Once this is done, the user may invoke the ISPF interface as
documented in Chapter 17. Using the ISPF Panel Interface.
Dynamic Addition of the ISPF libraries
This approach uses the ISPF LIBDEF and TSO/E ALTLIB services to
dynamically add the ISPF Interface libraries.
The sample CLIST PKBEGIN demonstrates how this can be achieved.
This needs to be altered to match the installation standards and placed in
an accessible library. The invocation of this altered CLIST can be added
to the appropriate ISPF menu.
Getting Started
Once you have successfully installed and tested PKZIP for MVS please
refer to Chapter 3. Getting Started on page 27 for discussion and
examples of the product’s use.
In addition you should also understand how PKZIP is licensed as
discussed in Appendix B. Licensing Guide.
T4ASI025-00-00
Installation Guide
421
Appendix B. Licensing Guide
PKZIP for MVS is a licensed program, and has a licensing utility supplied
as part of its normal processing. The licensing utility is inconspicuous,
and is only noticeable if the license conditions supplied are incorrect for
the environment in which PKZIP is running. The Licence Authentication
System is common to several products supplied by Targetfour Ltd.
Note:

For the licensing processing to work correctly the PKZIP library must
be accessed via the JCL STEPLIB DD card, as is shown in the
examples in this Appendix.
Licenses
The following options can be licensed in PKZIP for MVS:

PKZIP Compression

PKZIP Decompression

PKZIP Sequential File Handler

PKZIP PDS File Handler

PKZIP VSAM File Handler

PKZIP Magnetic Tape/Cartridge File Handler

PKZIP ISPF Panel Interface

PKZIP HyperZIP

PKZIP GigaZIP.
The effect of each license is explained below.
PKZIP Compression
Permits the compression of data into a ZIP archive. A file handler license
is required to read the data and write out the ZIP archive.
PKZIP Decompression
Permits the decompression of data from a ZIP archive. A file handler
license is required to read the ZIP archive and write out the data to the
MVS datasets.
T4ASI025-00-00
Licensing Guide 423
PKZIP Sequential File Handler
Allows PKZIP to read and write sequential datasets. When combined with
the PKZIP Compression and Decompression licenses, it allows
sequential datasets to be compressed and decompressed. It also allows
ZIP archives in the form of sequential datasets to be created and
processed.
PKZIP PDS File Handler
Allows PKZIP to read and write members or partitioned datasets. When
combined with the PKZIP Compression and Decompression licenses, it
allows PDS members to be compressed and decompressed. It also
allows ZIP archives in the form of PDS members to be created and
processed.
PKZIP VSAM File Handler
Allows PKZIP to read and write VSAM datasets. When combined with the
PKZIP Compression and Decompression licenses. It allows VSAM
datasets to be compressed and decompressed. It also allows ZIP
archives in the form of VSAM datasets to be created and processed.
PKZIP Magnetic Tape/Cartridge File Handler
Allows PKZIP to read and write data on Magnetic Tape or Cartridge.
When combined with the PKZIP Compression and Decompression
licenses, it allows Tape based datasets to be compressed and
decompressed. It also allows ZIP archives in the form of Tape based
datasets to be created and processed.
PKZIP ISPF Panel Interface
Allows PKZIP to be called from the ISPF panel interface. The functions
available from the panels will depend on the licenses above.
PKZIP HyperZIP
Tells PKZIP to use new, faster methods of processing temporary files
and ZIP archives to reduce the elapsed time for the compression and
decompression of data. It permits the use of various performance
enhancing options (e.g. the -CACHEMEMORY command and the
-TASKS command) to make the best use of available machine resources
to speed up the compression and decompression processes. Further
information may be found in Chapter 13. Performance.
PKZIP GigaZip
This license option provides support for GZIP format files. GZIP format
archives are recommended when files to be compressed are currently, or
may in the future grow to be, bigger than 2 Gigabytes. Further
information may be found in Part 5. GZIP (GNU zip) Processing.
424
PKZIP for MVS: User Reference
T4ASI025-00-00
Evaluation Period
As supplied, PKZIP for MVS is not licensed. An unlicensed copy of
PKZIP is not capable of compressing or decompressing files although
existing ZIP archives may be viewed.
However, PKZIP for MVS is supplied with a licensing utility, which will fully
license the product on a trial basis for 30 days. During this period, you
must obtain licensing details for PKZIP from your supplier, if you wish to
continue to run the product.
Instructions on licensing the product for evaluation are described in the
Licensing section of Appendix A. Installation Guide.
Note:

Throughout the evaluation period PKZIP will output a minimum return
code of 04 for all jobs, this is because of the warning message
ZIP023W which reminds the user that the license period will soon
expire. It is therefore important that you check all messages output
by PKZIP to ensure that no other warnings have been overlooked.
CPU ID
PKZIP licensing is based on your CPU type and CPU identity so your
supplier will ask you for these details. If you do not have this information,
it can be obtained by running the licensing report as documented in
Reporting current Licenses later in this chapter (this is the recommended
method) or using the ZIPCPUID program that is supplied with PKZIP for
MVS.
The example JCL below demonstrates how to determine your CPU
identity using the ZIPCPUID program.
1.
Edit the "RUNCPUID" member of the CNTL library according to
the notes below.
//STPCPUID EXEC PGM=ZIPCPUID,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*
PKZIP.V25x.LOADLIB
2.
if you chose a different name for the
PKZIP for MVS LOAD library then you
should correct the STEPLIB DD
statement.
Submit the job and check the results, it should give a return code
00.
The output from this program should be sent with your license report to
your supplier, who will arrange for you to receive the licensing details for
your installation.
T4ASI025-00-00
Licensing Guide 425
Effects of PKZIP Licensing
When correctly licensed, PKZIP will run normally and licensing will not be
noticed. Should PKZIP find that it is running outside the terms of its
licence, such as when the licence expires then commands that do not
involve creating or updating files such as VIEW and TEST will work
normally, but no actual data can be compressed or extracted. Suitable
error messages will be output as necessary and are documented in
Chapter 26. PKZIP and PKUNZIP Messages.
When PKZIP detects that its licence is close to expiry (approximately 4
weeks), it will output warning messages (associated with a return code
04), but will otherwise continue to execute normally. During this period,
contact your normal supplier for new licensing details. When the licensing
details have been input the warning messages will no longer be output.
Reporting current Licenses
The example below demonstrates how to display you current licensing
details.
1.
Edit the "REPORT" member of the CNTL library according to the
notes below. This job reports on the state of the PKZIP licensing.
//REPORT
EXEC PGM=ZIPPLIC,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*,BLKSIZE=132
//SYSUDUMP DD SYSOUT=*
//SYSIN
DD *
*---+----1----+ (comment card)
R
/*
PKZIP.V25x.LOADLIB
If you chose a different name for the
PKZIP for MVS LOAD library then you
should correct the STEPLIB DD
statement.
Note
The ‘R’ (Report) character is in column
11, as is shown by the ‘comment’ card
that precedes it. The licensing process
treats cards with a ‘*’ (asterisk) in
column 1 as comments.
2.
426
Submit the job and check the results, it should give a return code
00 and output similar to the following:
PKZIP for MVS: User Reference
T4ASI025-00-00
T4X101I
T4X030I
T4X080I
T4X100I
T4X080I
T4X081I
T4X081I
T4X080I
T4X082I
T4X080I
T4X084I
T4X085I
T4X088I
T4X089I
T4X089I
T4X089I
T4X089I
T4X089I
T4X089I
T4X089I
T4X089I
T4X089I
T4X087I
T4X080I
T4X090I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X091I
T4X080I
T4X081I
T4X080I
T4X102I
License Process: T4XPLIC MVS
4.0
level x, starting.
Executing on CPU: 120F0573xxxx.
*
Processing Card:
R
*
Report on contents of License Table
=====================================
*
Version: 0100, last updated on: 19xx0515, for: Evaluation User
*
Product: PKZMVS25, License Num: EVALUATION
.
Start: 19xx0515, End: 19xx0614, Users: 32767.
Functions: YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY.
- PKZIP Compression.
- PKUNZIP Decompression.
- PKZIP PDS file handler.
- PKZIP Sequential File Handler.
- PKZIP HyperZIP.
- PKZIP VSAM File Handler.
- PKZIP Magnetic Tape/cartridge File Handler.
- PKZIP ISPF Panel Interface.
- PKZIP GigaZip.
Licensed for: 12**0573xxxx, Matched.
*
CPU Table.
CPU Number: 00, CPU Id: 120F0573xxxx.
CPU Number: 01, CPU Id: Not Defined .
CPU Number: 02, CPU Id: Not Defined .
CPU Number: 03, CPU Id: Not Defined .
CPU Number: 04, CPU Id: Not Defined .
CPU Number: 05, CPU Id: Not Defined .
CPU Number: 06, CPU Id: Not Defined .
CPU Number: 07, CPU Id: Not Defined .
CPU Number: 08, CPU Id: Not Defined .
CPU Number: 09, CPU Id: Not Defined .
CPU Number: 10, CPU Id: Not Defined .
CPU Number: 11, CPU Id: Not Defined .
CPU Number: 12, CPU Id: Not Defined .
CPU Number: 13, CPU Id: Not Defined .
CPU Number: 14, CPU Id: Not Defined .
CPU Number: 15, CPU Id: Not Defined .
*
Finished reporting of License Table
*
License Process: T4XPLIC MVS
4.0
level x, ending.
The functions for which you are licensed are listed in the T4X089I
messages.
Updating current Licenses
From time to time, for example when a product is to be licensed or the
existing license expires, it becomes necessary to update the license
database. In these circumstances, update control statements will be
supplied. The procedure to apply the statements is as follows:
1.
Edit the "UPDATE" member of the CNTL library according to the
notes below. This JCL reports on the state of the PKZIP
licensing.
//REPORT
EXEC PGM=ZIPPLIC,REGION=2M
//STEPLIB DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
//SYSPRINT DD SYSOUT=*,BLKSIZE=132
//SYSUDUMP DD SYSOUT=*
//SYSIN
DD *
<control statements>
/*
T4ASI025-00-00
Licensing Guide 427
PKZIP.V25x.LOADLIB
If you chose a different name for the
PKZIP for MVS LOAD library then you
should correct the STEPLIB DD
statement.
<control statements>
Should be replaced with the control
statements provided by your supplier.
The position of the characters in the
statements is significant and to work
correctly they must exactly match the
position in the supplied documentation.
Note that control statements typically
start in column 2, leaving one blank
position at the start of the statement. An
‘*’ (asterisk) in column 1 is used to
indicate a comment.
2.
Submit the job and check the results, it should give a return code
00.
Note:

The update statements and output should be filed for future
reference. If necessary (for example, if the table becomes
corrupted), the Licensing table can be rebuilt by reusing the update
statements.

Only one update should be applied at a time.
Short Term Licenses
It may be necessary to obtain a license for a new processor for which the
processor identifier is not known in advance. This can happen in a
variety of circumstances, including disaster recovery. The short-term
license utility may be used in conjunction with an authorisation code
obtained via your supplier to perform this processing.
This utility is used in the following way:
428

An Authorisation Code is obtained from the supplier. This code will
be associated with a particular date. It is possible to obtain multiple
Authorisation Codes if the installation date for the processor is
uncertain.

The short-term license utility (ZIPPSTL) is executed on the
associated date (local time), passing the Authorisation Code as a
parameter. This processing will produce update cards that will
license the product on the executing processor for a short period.

These output control statements will be used as input to the normal
license processing and will create a short-term license for the
processor.
PKZIP for MVS: User Reference
T4ASI025-00-00

If there are multiple processors being changed, all of which share the
same license table, the preceding two steps should be repeated for
each processor. Note that the license update should be performed
before re-running the short-term license utility on a different
processor.
As soon as is convenient, a full license should be obtained for the new
processor(s). At the same time, the SHORT-TERM license should be
removed. It is only possible to have one SHORT-TERM license – even if
this has expired an attempt to use this process to add another SHORTTERM license will not work correctly.
Typical JCL used to run the Short Term License Utility is as follows (see
also the RUNSTL member of the CNTL library that contains similar JCL).
//SHORTTRM
//
//* Where:
//*
//*
//STEPLIB
//SYSPRINT
//LICOUT
//SYSUDUMP
EXEC PGM=ZIPPSTL,REGION=2M,
PARM='ddddddddxxxxxxxx,ccccc...'
dddddddd is the date on which the utility must be run
xxxxxxxx is a verification code
cccccccc is an identification character string.
DD DISP=SHR,DSN=PKZIP.V25x.LOADLIB
DD SYSOUT=*
DD SYSOUT=*
DD SYSOUT=*
Typical output (sent to SYSPRINT) from the Short Term License Utility is
as follows.
T4X101I
T4X030I
T4X080I
T4X102I
License Process: T4XPSTL MVS
4.0
Executing on CPU: 120F0573xxxx.
*
License Process: T4XPSTL MVS
4.0
level x, starting.
level x, ending.
Typical license cards (sent to LICOUT, to be used as input to ZIPPLIC),
created by the Short Term License Utility are as follows.
*---+----1----+----2----+----3----+----4----+----5----+-* Update for Short Term License.
62D65044 P A PKZMVS25 SHORT-TERM
xxxx0331 xxxx04…
D7301C9F C A 12**0573nnnn
1FFFB8A7 Z
R
T4ASI025-00-00
Licensing Guide 429
Appendix C. Change Summaries
The following lists describe the evolution of the PKZIP for MVS product
line. It describes the changes made for the released versions of PKZIP
for MVS from 2.1/0 upwards:
PKZIP 2.1 Level 0 for MVS (October 1994)
T4ASI025-00-00
Change
Description
210-001
File selection mechanism with support for wildcards
210-002
Compression and extraction of multiple sequential files and
PDS members
210-003
Support for stored pathnames and dataset name hierarchies
210-004
Stripping and padding of characters on the end of records
210-005
Zip archives as PDS members
210-006
Commands to control the allocation of Zip archives and
temporary datasets used by PKZIP
210-007
Addition of -HLQ and -OVERWRITE commands
Change Summaries
431
PKZIP 2.1 Level 1 for MVS (November 1994)
432
Change
Description
211-001
ZIP to recognise ‘@’ as first character of dataset or member
name
211-002
-PCP command for PKZIP
PKZIP for MVS: User Reference
T4ASI025-00-00
PKZIP 2.1 Level 2 for MVS (February 1995)
T4ASI025-00-00
Change
Description
212-001
Fix 0C4-11 in PKUNZIP when using file selection *.*
212-002
Put “bit 31/24” in starting message for PKZIP and PKUNZIP
212-003
Using -ZIPCUR against a zipfile = path/filename causes 0C410 in PKUNZIP
212-004
Using -ZIPCUR and -MAKEPDS causes 0C1-1 in PKUNZIP
(and other associated 0C1-1’s)
212-005
Provide -OUTDIRBLKS default when unzipping to
a PDS (B14 abend and associated problems)
212-006
Using -OUTSPACE(BLK) causes 0C4-11 in PKUNZIP
212-007
Bring manual up to level 2
212-008
Put zipping GDGs section into manual
212-009
Put zipping Tapes section into manual
212-010
Update PKZIP section on use of -ZDW in manual
212-011
Re-work existing examples in the manual, ensure they are
straightforward and not misleading. Provide a brief
explanation with each example.
212-012
Updates to manual. Updated text of message 120. Reviewed
restrictions section. Reviewed indexing. Updated covers,
spines, cartridge labels.
212-013
Spurious 0C4’s and 0C1’s fixed by preventing Trace macros
from calling LMEMCPY with zero length.
212-014
Directories with aliases or long directory entries causes 0C11 abend in PKZIP
212-015
0C1-1 IN PKZIP and PKUNZIP when region size exhausted
(now outputs message and user abend).
212-016
Rebuilt and tested with T4XFLIC 2.1/4
Change Summaries
433
PKZIP 2.1 Level 4 for MVS (August 1995)
434
Change
Description
214-001
-ECHO command required to print SYSIN to SYSPRINT
214-002
Transferring zip archives as RECFM=U with Pelican, TCP/IP,
FTAM etc...
214-003
Replace use of RNINPUT/RNOUTPUT with standard
IDCAMS API
214-004
ZDW fix
214-005
Improved handling of abend. Zip hangs when abend in
subtask. If possible, RC should be non-zero when abends
(esp. SB37)
214-006
PKZIP & PKUNZIP loop when processing *NIX zip archives
214-007
Run PKZIP and PKUNZIP from LNKLST
214-008
Problems updating files after license has expired
214-009
Handle non-catalogued datasets and temporary datasets via
ZIPCUR DD
214-010
-NOCRLF command does not work in PKUNZIP
214-011
-FRESHEN command does not work in PKZIP
214-012
CRC check fix
214-013
ZIP871E returns RC=0
214-014
ZIP/UNZIP022E & 021E return RC=0
214-015
Incomplete view
214-016
Improvements to sorting by size and percent in -VIEW
214-017
Reduce number of retries from 999 to 3 when failing to get
disk space for zip archive
214-018
Put a freepool after close of dcb in file selectors
214-019
Put a dealloc step after inquires in file selectors
214-020
Within file selectors ensure that all storage allocated per file
and all main control blocks are freed up before returning to
zip
214-021
More efficient processing of file selector internal test runs
214-022
Error reading dataset during update of certain type of zip
PKZIP for MVS: User Reference
T4ASI025-00-00
PKZIP 2.1 Level 7 for MVS (November 1995)
T4ASI025-00-00
Change
Description
217-001
Implement new return code strategy (this change was
actually implemented in 2.1/6 for VSE)
217-002
Allow use of previous return code strategy using
-OLDRETURNCODE (this change was actually implemented
in 2.1/6 for VSE)
217-003
Link non-reentrant modules as REUS
217-004
Cannot write Sysprint to a dataset
217-005
Increase max values for -OUTPRIMARY and
-OUTSECONDARY to x’FFFFFF’
217-006
Provide -HLQ(**/<newname>) option to replace oldname
blind
217-007
Allow for zero length oldname and newname in -HLQ
command
217-008
Provide USASCII translation table
217-009
Modify 901E message to give reason code
217-010
Allocate real temporary files with no name to ensure that no
duplicates are created
217-011
Provide -NOSYSIN command to help when calling PKZIP
from another program
217-012
Need more references to the examples in the manual
217-013
Document calling PKZIP from another program
Change Summaries
435
PKZIP 2.2 Level 1 for MVS (October 1997)
436
Change
Description
221-001
Year 2000 compliant
221-002
Compression and decompression of VSAM files
221-003
Compression and decompression of Magnetic Tapes or
Cartridges
221-004
Storage and restoration of file attributes
221-005
Compression and decompression of Load Libraries
221-006
Compression and decompression of GDGs
221-007
Zip archives as VSAM files
221-008
Zip archives as sequential files on Magnetic Tape or
Cartridge
221-009
Selection and specification of files via DD statement
221-010
New licensing code to support product packaging
221-011
ISPF panel interface
PKZIP for MVS: User Reference
T4ASI025-00-00
PKZIP 2.2 Level 1b for MVS (July 1998)
Change
Description
221B-001
Patches 1-40 for PKZIP 2.2/1, are included. The patch notes
associated with these patches should be reviewed.
Patch 31 introduced the PADVSAM and NOPADVSAM
commands.
221B-002
Redundant and duplicated options and commands have
been removed. For compatibility reasons, support for many
of these commands is still included in the product but this
support may be withdrawn in future releases and patches to
this level. It is recommended that users migrating to this
level review the following and remove any uses of the
commands listed. Where the command has been removed
because it is duplicated, the retained command is listed in
brackets following the removed command. These include:
 OLDRETURNCODE (for both PKZIP and PKUNZIP).
 PKZIP archive commands: ARCHATTEMPTS,
ARCHAUTH, ARCHCODE, ARCHDATAATT,
ARCHDATAAUTH, ARCHDATABUFSP (use
ARCHBUFSPACE), ARCHDATACODE,
ARCHDATAERAS (use ARCHERASE),
ARCHDATAFREECA (use ARCHFREECA),
ARCHDATAFREECI (use ARCHFREECI),
ARCHDATANERAS (use ARCHNOERASE),
ARCHDATANSPND (use ARCHNOSPANNED),
ARCHDATARCVY, ARCHDATARECSZ (use
ARCHRECORDSIZE), ARCHDATASPEED,
ARCHDATASPND (use ARCHSPANNED),
ARCHRECOVERY, ARCHSPEED.
 PKUNZIP cluster commands: OUTATTEMPTS,
OUTAUTH, OUTCODE, OUTKEYRANGES.
 PKUNZIP Data component commands: OUTDATAATT,
OUTDATAAUTH, OUTDATABUFSP (use
OUTBUFSPACE), OUTDATACODE, OUTDATAERAS
(use OUTERASE), OUTDATAFREECA (use
OUTFREECA), OUTDATAFREECI (use OUTFREECI),
OUTDATAKRNG, OUTDATANERAS (use
OUTNOERASE), OUTDATANSPND (use
OUTNOSPANNED), OUTDATARCVY (use
OUTRECOVERY), OUTDATARECSZ (use
OUTRECORDSIZE), OUTDATASPEED (use
OUTSPEED), OUTDATASPND (use OUTSPANNED).
T4ASI025-00-00
Change Summaries
437
 PKUNZIP Index component commands: OUTINDXATT,
OUTINDXAUTH, OUTINDXCODE, OUTINDXIMBD (use
OUTIMBED), OUTINDXNIMBD (use OUTNOIMBED),
OUTINDXNREPL (use OUTNOREPLICATE),
OUTINDXREPL (use OUTREPLICATE).
221B-003
438
Editorial Changes and improvements to the manual.
PKZIP for MVS: User Reference
T4ASI025-00-00
PKZIP 2.2 Level 1c for MVS (July 1999)
Change
Description
221C-001
Patches 41-65 for PKZIP 2.2/1, are included. The patch
notes associated with these patches should be reviewed.
Note Patch 64 which documents support for the euro.
221C-002
A redundant command have been removed. For
compatibility reasons, support for this command is still
included in the product but this support may be withdrawn in
future releases and patches to this level. It is recommended
that users migrating to this level review the following and
remove any uses of the command listed.
 TEMPMCLASS (for both PKZIP and PKUNZIP).
221C-003
T4ASI025-00-00
Editorial Changes and improvements to the manual.
Change Summaries
439
Appendix D. Characteristics of Data Compression
In general, data compression works by eliminating redundancy within a
data stream, and expressing the information content in the data stream in
a more concise, succinct form.
There are two basic forms of data compression: lossy and lossless.
Lossy compression algorithms give up bit-for-bit accuracy for higher
compression ratios. Lossy compression is often used to compress video
images and sound recordings, where the loss of small amounts of data
does not affect the overall quality of the output. A Lossless data
compression algorithm ensures that no information is lost in the
compression/decompression process; the decompressed version is
identical to the original. PKZIP uses a lossless compression algorithm.
Naturally, lossy compression would be completely unacceptable to a data
compression program, as losing even a bit could completely alter the
meaning of the data.
The following sections discuss some of the compression algorithms
available and go on to explain how the compression within PKZIP Version
2 works.
Random data
Data that is purely random or mostly random (such as already
compressed or encrypted data) cannot experience any significant
compression, regardless of the compression method used.
Best compression
Small data streams, such as a single line of text or a single record in a
database, usually contain only a minimal amount of redundancy, and
hence, can only experience a minimal amount of compression. Slightly
larger data streams such as several records in a database or a
paragraph or page of text contain considerably more redundancy, and
can be compressed much more effectively. For example, the character
sequence 'data' appears four times within this paragraph, and many more
times on this page of text. However, it does not appear more than once
on any particular line in this paragraph.
Intuitively then, one would expect to get much better compression by
attempting to compress this entire page of text, rather than trying to
compress each line as a separate entity, and this is in fact the case.
T4ASI025-00-00
Characteristics of Data Compression
441
Run-length encoding
Run-length encoding (RLE) is one of the simplest and most popular
forms of lossless data compression. It works best with files than contain
many consecutive occurrences of the same byte pattern, such as print
files.
Here is a simple example illustrating how RLE works. Imagine that the file
you want to compress contains the following 32 bytes of information:
F4
6E
12
F1
6E
99
12
F1
6E
4F
12
F1
6E
F0
03
F1
6E
F0
F1
F1
6E
F0
F1
F1
6E
F0
F1
F1
6E
65
F1
13
If you examine the data closely, you will notice that it contains several
'runs' of bytes. If you listed the file's contents in such a way that 'runs'
were listed on the same line, the file would look like this:
F4
6E
99
4F
F0
65
12
03
F1
13
6E
6E
6E
F0
F0
F0
12
12
F1
F1
F1
6E
6E
6E
6E
F1
F1
F1
F1
F1
F1
F1
Now imagine what would happen if you replaced each line in this listing
with two bytes: one identifying the number of bytes in the run, and
another identifying the value of the bytes in the run. Written this way, the
file would look like:
01
08
01
01
04
01
03
01
11
01
F4
6E
99
4F
F0
65
12
03
F1
13
With this simple form of encoding, we have compressed 32 bytes of data
into 20 bytes. Knowing the compression algorithm, an equally simple
program could take the 20 encoded bytes and reproduce the original file
by reversing the encoding process. RLE has been incorporated into
several file transfer protocols because long runs of identical characters
are common and both the encoding and decoding require little
processing overhead. The greater the number and length of repeating
runs that a file contains, the higher the compression ratio that RLE can
achieve.
442
PKZIP for MVS: User Reference
T4ASI025-00-00
RLE should be treated with caution, if a file has no repeating bytes, RLE
compression would actually double the size of the file. More efficient
types of RLE exist, for example types that don't expand every non
repeating byte into two bytes. What is good for one file might not be ideal
for another. That is why a more efficient compression algorithm/program
must analyze a file before compressing it and must choose the
compression method best suited to the file.
Lempel-Ziv-Welch compression algorithm
One compression algorithm that analyses a files contents, and therefore
produces higher compression ratios is the famous Lempel-Ziv-Welch
(LZW) algorithm. LZW works by building a dictionary of phrases (groups
of one or more bytes) from the file. When a new phrase is found, the
compression mechanism checks to see if that phrase is already in the
dictionary. If not, the phrase is added to the dictionary and a token that
identifies the phrase's position in the dictionary is output. If the phrase
was already in the dictionary, then the compression mechanism simply
outputs the token for the existing phrase.
Whereas RLE is ideal for data with repeating single bytes, LZW works
better with data containing repeating groups of bytes. Natural languages,
such as English, use many repeating character patterns, therefore LZW
is usually an excellent choice for compressing text files.
The length (in bits) of each output token affects the efficiency of the LZW
compression algorithm. The token size in turn determines the maximum
size of the phrase dictionary. Tokens are normally from 9 to 15 bits in
length. Larger tokens work better for large files, but smaller tokens
frequently produce higher compression ratios in small files. Because the
final token size is a function of the original file size, LZW normally works
equally well with small files as it does with large files.
Probabilistic compression methods
Probabilistic compression works on the principle that it is possible to
compress a file by using varying numbers of bits to represent different
characters (or character patterns). Frequently occurring characters are
assigned the fewest number of bits, and characters that appear
infrequently are assigned the greatest number of bits.
For example, suppose the letter A appears 2,000 times in this document,
but the letter Q only appears 40 times. Stored as 8-bit EBCDIC or ASCII
text, the letters A and Q would occupy 2,040 bytes. Assume that the letter
A could be represented in 4 bits, while the letter Q must be represented
with 12. Now A and Q would account for only 1,060 bytes - 1,000 bytes
for the letter A (2,000 characters at 4 bits per character) and 60 bytes for
the letter Q (40 characters at 1½ bytes per character).
T4ASI025-00-00
Characteristics of Data Compression
443
This is obviously a more efficient way to store the data, and would result
in compression ratios in the region of 50%. This is a simplified example
of how probabilistic compression works, and it does not take account of
the fact that a probability table must be attached to the compressed data,
partially offsetting any gains achieved.
In PKZIP Version 1.0 this mechanism was enhanced by assigning
variable-length bit patterns, not to single characters, but to pairs of
characters. Also, to reduce the size of the probability table and memory
usage under MS-DOS, PKZIP Version 1.0 limited the table to 32 patterns
beginning with a specific character. That worked very well for text files,
because while there will be many occurrences of the characters TH, it is
unlikely that there will be many XY combinations.
The maximum size of the PKZIP Version 1.0 probability table is around
8k. This is calculated by multiplying the number of characters that can be
represented by a byte, 256, by the number of combinations supported for
each starting character, 32. This comes to exactly 8k but a number of
extra bytes need to be added for header and control fields. In practice,
the probability table will be much smaller - especially if the original file is
not large.
The PKZIP compression algorithms
PKZIP Version 2 uses two separate compression algorithms in a process
known as deflation. The first process compresses the data using a form
of Lempel-Ziv (LZ) compression called sliding dictionary. Sliding
dictionary LZ is a derivative of LZW, it works by writing tokens that
identify where repeating phrases have previously occurred in the file.
Instead of checking the entire file for matching phrases, it uses only a
part of the file. The term sliding dictionary is used because the algorithm
uses fixed-size blocks whose addresses are repeatedly incremented as
the file is read.
PKZIP uses a 32K block size, which provides a sensible balance
between compression ratio and compression speed. As the block size is
increased, the length of time required to check for repeating patterns
increases. This is an excellent form of data compression which performs
well on files that contain repeating character sequences.
The most significant difference between a textbook implementation of LZ
compression and the mechanism that PKZIP uses is that when the
dictionary becomes full, PKZIP only partially clears it of phrases. Many
programs that implement LZ and LZW compression clear the dictionary
completely and start the construction of phrases from scratch.
After being compressed using the sliding dictionary method, the data is
then compressed again using a technique known as Shannon-Fano
trees. The Shannon-Fano algorithm is a form of probabilistic
compression known as minimum redundancy coding that represents
common characters with fewer bits than less frequently occurring
characters. The term tree comes from the method usually used to
implement Shannon-Fano compression, which involves counting the
occurrences of each character and constructing a binary tree where
characters represent leaves.
444
PKZIP for MVS: User Reference
T4ASI025-00-00
To determine the numeric code for a given character, the algorithm starts
at the top of the tree and follows the branches until it finds the specified
character. Each branch represents one bit of information. Frequently
used characters are located closer to the top of the tree, meaning that
they require fewer bits to represent.
The GZIP compression algorithm - Deflate
Like PKZIP Version 2, GZIP compression uses two separate
compression steps. The first process compresses the data using a form
of Lempel-Ziv (LZ) compression called sliding dictionary using the
process described below. The ‘alphabet’ so created is then compressed
using Huffman encoding.
Finding Duplicated Strings in GZIP
The following, which describes how the Deflate algorithm finds repeated
strings, has been extracted from RFC 1951. The PKZIP algorithm uses a
different and patented approach to finding duplicated strings. In addition,
as described earlier, its dictionary management can also provide the
PKZIP algorithm with performance advantages.
The compressor uses a chained hash table to find duplicated strings,
using a hash function that operates on 3-byte sequences. At any given
point during compression, let XYZ be the next 3 input bytes to be
examined (not necessarily all different, of course). First, the compressor
examines the hash chain for XYZ. If the chain is empty, the compressor
simply writes out X as a literal byte and advances one byte in the input. If
the hash chain is not empty, indicating that the sequence XYZ (or, if we
are unlucky, some other 3 bytes with the same hash function value) has
occurred recently, the compressor compares all strings on the XYZ hash
chain with the actual input data sequence starting at the current point,
and selects the longest match.
The compressor searches the hash chains starting with the most recent
strings, to favor small distances and thus take advantage of the Huffman
encoding. The hash chains are singly linked. There are no deletions from
the hash chains; the algorithm simply discards matches that are too old.
To avoid a worst-case situation, very long hash chains are arbitrarily
truncated at a certain length, determined by a run-time parameter.
T4ASI025-00-00
Characteristics of Data Compression
445
Part 8. Glossary and Index
T4ASI025-00-00
447
Glossary
T4ASI025-00-00
ASCII
The ASCII (American Standard Code for Information
Interchange) character set is the standard character set
used on MS-DOS and UNIX systems. It is also used as
the normal character set within text files compressed in
a ZIP archive. Note that only the first 128 characters in
the ASCII character set are standard on all systems, the
others may be different for a given language set. If this
is so for your system, it may be necessary to create a
different translation table (See Translation table entry
later in this glossary) to create standard translation
between ASCII and other character sets.
CRC
A CRC is a Cyclic Redundancy Check, which is used to
check that the contents of a ZIP archive are correct.
When PKZIP (on any platform) compresses a file, it will
calculate a value, based on the contents, using a
standard algorithm. This value, which is 32 bits long, is
the CRC which is stored with that compressed file.
When PKUNZIP extracts the file, it will recalculate the
CRC, based on the extracted contents, and compares
this against the original, stored CRC. If there is any
difference, PKUNZIP will recognise that the data has
been modified or corrupted, and will report this.
Current dataset
The current dataset is a PDS dataset which PKZIP uses
to obtain members for compression into a ZIP archive or
to which PKUNZIP writes decompressed files from a ZIP
archive as members.
DYNALLOC
This is the shortened term and the name for the IBM
macro used to perform dynamic allocation. Dynamic
Allocation allows a program such as PKZIP for MVS to
access a dataset without first coding JCL statements.
EBCDIC
The EBCDIC (Extended Binary Characters for Data
Interchange) character set is the standard character set
used on MVS systems. When PKZIP compresses a text
file, it will translate data from the MVS EBCDIC
characters to the ASCII characters used within the ZIP
archive, using the translation table supplied (See
Translation table entry later in this glossary).
ENQ
The macro used in MVS to restrict access to Serially
Reusable resources, so that only the appropriate
number of users with the mode of access gain access to
the resource at one time.
GZIP
Utility and specification used to provide file compression.
This is documented extensively on the World Wide Web
– see especially w3.gzip.org.
Glossary
449
450
IDCAMS
This is the general name given to the IBM Access
Method Services processing that is used to define and
manage VSAM datasets.
New ZIP archive
A new ZIP archive is the ZIP archive created by PKZIP
when either an old ZIP archive is updated, or when files
are compressed and no ZIP archive currently exists.
Old ZIP archive
An old ZIP archive is an existing ZIP archive which is
opened by PKZIP or PKUNZIP to be updated or for its
contents to be extracted.
PDS
A PDS is a partitioned dataset which is used to hold
members, which can be viewed as a separate, but
normally related, set of files. PKZIP will compress data
from each member, and will treat a compressed
member as a file within a ZIP archive. PKUNZIP will
extract data from a file within a ZIP archive and will write
this data to a member within a specified PDS.
RFC – Request for
Comment
This term is typically used for specifications and
standards used by the Internet. When a new
specification is made available, it is normally provided in
the form of an RFC, so that other users can comment on
it. Over a period of time, such RFC’s become the
‘standard’. The GZIP specifications provide an example
of this process.
SEQ - Sequential
A sequential dataset holds a single file of related
records.
SVC99
Another name for DYNALLOC – see DYNALLOC for
more information.
VSAM
(Virtual Sequential Access Method). This terms
generics identifies a certain type of datasets and the
processing associated with them.
Translation table
A translation table is used by PKZIP and PKUNZIP for
translating characters in compressed text files between
the ASCII character sets used within a ZIP archive and
the EBCDIC character set used on MVS systems.
ZDW
A ZDW is a ZIP descriptor word, and is used within
certain compressed files in a ZIP archive to specify the
record lengths for each record within the file. Where a
binary file does not have a set of ZDWs, it cannot be
extracted except at the maximum record length of the
PDS into which it is being written.
ZIP Archive
A ZIP archive is used to refer to a single dataset that
contains a number of files compressed into a much
smaller space.
PKZIP for MVS: User Reference
T4ASI025-00-00
Index
| - continuation character ......................... 102
| continuation ............................................ 102
+ - continuation character ........................ 102
+ continuation .......................................... 102
16Mb line ................................................... 93
Abend codes ............................................ 385
Addressing Mode ..................................... 402
ALTLIB ..................................................... 421
Amode ..................................................... 402
API
Invoking PKZIP from another program
............................................................ 105
-ARCHINDD
decompressing from Tape archives ..... 76
viewing Tape archives .......................... 75
Archive
type of data unit (Data Component) ... 219
type of data unit (VSAM)..................... 212
Archive File Size ........................................ 49
Archives
Extracting from Tape archives .............. 76
Updating Tape archives ........................ 77
Viewing Tape archives ......................... 75
-ARCHOUTDD
Tapes.................................................... 74
ASCII.................................. 46, 111, 112, 113
ASMTRAN ............................................... 115
Assembler
Calling PKZIP/PKUNZIP ..................... 107
Attributes .................................................... 85
Binary format files ............................ 173, 231
Configuration File ..................................... 100
Calling PKZIP from another program ...... 105
Central Directory ........................................ 48
Character format
ASCII .................................................... 46
EBCDIC ................................................ 46
translation table .................................... 46
COBOL
Calling PKZIP/PKUNZIP ..................... 109
code page ................................................ 116
Code pages ............................................. 118
code point ................................................ 116
Commands
<dataset name>.......................... 159, 228
-ADD ................................................... 161
-ALIASMEMBER......................... 162, 230
-ARCHBLKSIZ .................................... 162
-ARCHBUFSPACE ............................. 207
-ARCHCATALOG ............................... 207
-ARCHCISZ ........................................ 207
T4ASI025-00-00
-ARCHDATACISZ.............................. 215
-ARCHDATAEEXT ............................ 215
-ARCHDATAFILE .............................. 216
-ARCHDATANAME ........................... 216
-ARCHDATANORD ........................... 216
-ARCHDATANRUS............................ 217
-ARCHDATANWCK........................... 217
-ARCHDATAORD .............................. 217
-ARCHDATAOWNER ........................ 218
-ARCHDATAPRI ................................ 218
-ARCHDATARUS .............................. 218
-ARCHDATASEC .............................. 219
-ARCHDATASHR .............................. 219
-ARCHDATASPACE .................. 213, 219
-ARCHDATAVOL............................... 220
-ARCHDATAWCK ............................. 221
-ARCHDCLASS ................................. 162
-ARCHDIRBLKS ................................ 163
-ARCHDSORG .................................. 164
-ARCHEEXT ...................................... 208
-ARCHERASE ................................... 208
-ARCHFILE ........................................ 208
-ARCHFOR ........................................ 209
-ARCHFREECA ................................. 209
-ARCHFREECI .................................. 209
-ARCHINDD ....................................... 164
-ARCHIVE .................................. 165, 230
-ARCHLRL ......................................... 166
-ARCHMCLASS ................................. 166
-ARCHNOERASE .............................. 210
-ARCHNONSPANNED ...................... 210
-ARCHNOREUSE .............................. 210
-ARCHNORLSE ................................. 167
-ARCHNOWRITECHK....................... 210
-ARCHOUTDD................................... 167
-ARCHOWNER ................................. 211
-ARCHPRIMARY ............................... 168
-ARCHRECORDSIZE ........................ 211
-ARCHREUSE ................................... 212
-ARCHRLSE ...................................... 169
-ARCHSCLASS ................................. 169
-ARCHSECONDARY ......................... 169
-ARCHSHR ........................................ 212
-ARCHSPACE ........................... 170, 220
-ARCHSPACE, VSAM ....................... 212
-ARCHSPANNED .............................. 213
-ARCHTO .......................................... 213
-ARCHTYPE ...................................... 170
-ARCHUNIT ....................................... 171
-ARCHVOL ........................................ 171
-ARCHWRITECHK ............................ 214
Index
451
-ATTRIB...................................... 172, 231
-ATTRIB* ............................................ 140
-ATTRIBCENTRAL ............................. 172
-ATTRIBLOCAL .................................. 172
-BINARY ..................................... 173, 231
-CACHEMEMORY ...... 140, 142, 173, 231
-CNVEXT ............................................ 232
-DELETE .................................... 140, 174
-DELIM ....................................... 174, 233
-ECHO ........................................ 175, 234
-EXTRACT.......................................... 235
-FILEPROCERR ......... 140, 142, 176, 235
-FILESELERR ............ 141, 142, 176, 236
-FRESHEN ................................. 141, 177
-FTRAN .............. 112, 115, 141, 178, 237
-GZIP .......................................... 141, 178
-HIERARCHY ..................................... 237
-HLQ ................................................... 238
-INDD .................................................. 178
-INSERTMEMBER ............................. 241
introduction ......................................... 151
-KEEPINORDER ................................ 179
-MAKEPDS ......................................... 241
-MAKESEQ ......................................... 242
-MAKEVSAM ...................................... 242
-METHOD ................................... 141, 180
-NIA ............................................ 141, 181
-NIASEP ..................................... 141, 185
-NOALIASMEMBER ................... 186, 243
-NOATTRIB ................................ 186, 243
-NOCRLF............................................ 243
-NOECHO ................................... 187, 244
-NOHIERARCHY ................................ 244
-NOKEEPINORDER ........................... 187
-NOPADVSAM ................................... 276
-NOPATH ........................................... 187
-NORECURSE ................................... 188
-NOSYSIN .................................. 188, 244
-NOVSAM ........................................... 188
-OUTATTR ......................................... 277
-OUTBLKSIZ ...................................... 245
-OUTBUFSPACE ............................... 277
-OUTCATALOG ................................. 278
-OUTCISZ........................................... 278
-OUTDATACISZ ................................. 290
-OUTDATAEEXT ................................ 290
-OUTDATAFILE.................................. 291
-OUTDATANORD .............................. 291
-OUTDATANRUS ............................... 291
-OUTDATANWCK .............................. 292
-OUTDATAORD ................................. 292
-OUTDATAOWNER ........................... 293
-OUTDATAPRI ................................... 293
-OUTDATARUS.................................. 294
-OUTDATASEC .................................. 294
-OUTDATASHR.................................. 295
452
-OUTDATASPACE .................... 288, 295
-OUTDATAVOL ................................. 296
-OUTDATAWCK ................................ 296
-OUTDCLASS.................................... 245
-OUTDD ............................................. 246
-OUTDIRBLKS................................... 248
-OUTDUPLICATES ........................... 278
-OUTEEXT......................................... 279
-OUTERASE ...................................... 279
-OUTFILE .......................................... 279
-OUTFOR .......................................... 280
-OUTFREECA ................................... 280
-OUTFREECI ..................................... 281
-OUTIMBED....................................... 281
-OUTINDXCISZ ................................. 297
-OUTINDXEEXT ................................ 297
-OUTINDXFILE .................................. 298
-OUTINDXNORD ............................... 298
-OUTINDXNRUS ............................... 298
-OUTINDXNWCK .............................. 299
-OUTINDXORD ................................. 299
-OUTINDXOWNER ........................... 300
-OUTINDXPRI ................................... 300
-OUTINDXRUS .................................. 301
-OUTINDXSEC .................................. 301
-OUTINDXSHR .................................. 302
-OUTINDXSPACE ..................... 288, 302
-OUTINDXVOL .................................. 303
-OUTINDXWCK ................................. 303
-OUTKEYS ........................................ 282
-OUTLRL ........................................... 249
-OUTMCLASS ................................... 249
-OUTNOERASE ................................ 282
-OUTNOIMBED ................................. 283
-OUTNONSPANNED......................... 283
-OUTNOREPLICATE......................... 283
-OUTNOREUSE ................................ 284
-OUTNORLSE ................................... 250
-OUTNOWRITECHK ......................... 284
-OUTOWNER .................................... 284
-OUTPRIMARY.................................. 250
-OUTPRIMARY (VSAM) .................... 285
-OUTRECORDSIZE .......................... 285
-OUTRECOVERY .............................. 285
-OUTREPLICATE .............................. 286
-OUTREUSE...................................... 286
-OUTRLSE......................................... 251
-OUTSCLASS .................................... 251
-OUTSECONDARY ........................... 251
-OUTSECONDARY (VSAM) .............. 286
-OUTSHR .......................................... 287
-OUTSPACE ...................... 252, 296, 303
-OUTSPACE, (VSAM) ....................... 287
-OUTSPANNED................................. 288
-OUTSPEED ...................................... 288
-OUTTO ............................................. 289
PKZIP for MVS: User Reference
T4ASI025-00-00
-OUTTYPE ......................................... 253
-OUTUNIT .......................................... 254
-OUTVOL............................................ 254
-OUTWRITECHK ............................... 289
-OVERWRITE .................................... 255
-PAD ................................................... 255
-PADVSAM ......................................... 276
-PASSWORD ............................. 189, 256
-PATH ................................................. 189
-PCP ................................................... 190
-RECURSE ......................................... 191
-STRIP ................................................ 192
-TAPETODISK............ 141, 142, 192, 256
-TASKS ............................... 141, 142, 193
-TEMP* ....................................... 141, 142
-TEMPBLKSIZ ............................ 194, 257
-TEMPDCLASS .......................... 194, 257
-TEMPPRIMARY ........................ 194, 258
-TEMPSCLASS .......................... 195, 258
-TEMPSECONDARY.................. 195, 258
-TEMPSPACE ............................ 195, 259
-TEMPTYPE ............................... 196, 259
-TEMPUNIT ................................ 196, 260
-TEMPVOL ................................. 196, 260
-TERM ........................................ 197, 260
-TEST ................................................. 262
-TEXT ......................................... 198, 262
-TIMESTAMP ..................................... 198
-TRAN................................. 115, 199, 263
-UPDATE .................................... 141, 200
-VIEW ................. 141, 142, 200, 263, 264
COMMENT option ......................... 266
DETAIL option ............................... 266
options ........................................... 267
order options .................................. 265
-ZDW .......................................... 200, 267
-ZIPCUR ..................................... 201, 268
Commands summary
PKZIP ................................................. 154
comment .................................................. 103
Comment cards ....................................... 103
COMPAT option ....................................... 177
Compatibility .............................................. 85
PKZIP for MVS, 2.5 and 2.1 ................. 86
PKZIP for MVS, 2.5 and 2.2 ................. 86
PKZIP for VM ........................................ 92
WinZip Version 5 .................................. 92
Compression
Tapes.................................................... 70
Confidence Test....................................... 415
Configuration File ....................................... 99
continuation.............................................. 102
Continuation Characters .......................... 102
continuation examples ............................. 102
conventions used in manual ....................... iv
T4ASI025-00-00
CRC ............................................................ 4
Creation Date .......................................... 198
CRLF delimiter ................................ 175, 234
currency symbol ...................................... 117
Cyclic Redundancy Check ............. See CRC
Data compression
algorithms .................................. 442, 443
best compression............................... 441
characteristics .................................... 441
Deflate algorithm ................................ 445
introduction ............................................ 3
LZW algorithm ................................... 443
PKZIP algorithms ............................... 444
probabilistic compression .................. 443
random data....................................... 441
run-length encoding (RLE) ................. 442
Shannon-Fano trees .......................... 444
sliding dictionary ................................ 444
Alias .......................................................... 23
Dataset Aliases ......................................... 23
DD
Specifying Files using .......................... 52
Decompressing
sequential datasets .............................. 34
Decompression
Tapes ................................................... 72
DG Command ......................................... 312
-DG Command ........................................ 312
DG Example Output ................................ 312
Double Byte Character Set ..................... 111
DYNALLOC .................................................. v
Dynamic Allocation....................................... v
EBCDIC..................................... 46, 111, 112
ENQ ........................................ 166, 231, 449
euro ......................................................... 117
Example
GZIP - extracting data........................ 146
GZIP -VIEWDETAIL .......................... 146
Using -ARCHINDD .............................. 53
Using -ARCHOUTDD .......................... 53
Using GDGs ......................................... 55
Using -INDD ......................................... 52
Using -OUTDD..................................... 54
-VIEWDETAIL ...................................... 33
viewing GZIP archive contents .......... 145
Examples
extracting data ..................................... 34
GZIP .................................................. 144
-HLQ .................................................. 239
-INDD ................................................. 179
-NIA ............................................ 182, 184
viewing archive contents ...................... 32
extended storage ...................................... 93
Extracted dataset
type of data unit (Data Component) ... 295
Index
453
type of data unit (Index Component) .. 302
Extracted dataset
allocation unit name ............................ 254
allocation volume name ...................... 254
block size ............................................ 245
data units .................... 250, 251, 285, 286
DFSMS data class .............................. 245
DFSMS management class ................ 249
DFSMS storage class ......................... 251
Directory blocks .................................. 248
overwriting .......................................... 255
record format ...................................... 253
record length ....................................... 249
type of data unit .......................... 252, 287
FAST method........................................... 180
Features ....................................................... 7
MVS Specific .......................................... 8
File Allocations ......................................... 106
File Attributes ............. 8, 47, 81, 85, 172, 186
GZIP ................................................... 140
Tapes.................................................... 71
File formats ........................................ 45, 137
File Names
GZIP ........................................... 140, 142
File selection
PKUNZIP ............................................ 228
PKZIP ................................................. 159
Filename
wildcards ..................................... 161, 229
Fixes ................................................ 308, 415
GDGs
Generation Data Groups ...................... 54
Getting ....................................................... 27
GigaZip .................................................... 424
Global Configuration File ........................... 99
GMT Time ................................................ 199
GNU zip ................................................... 449
GUN zip ......................................... See GZIP
GZIP ........................................................ 449
changed commands, PKUNZIP ......... 142
changed commands, PKZIP ............... 140
introduction ......................................... 135
GZIP archive ............................................ 136
viewing contents ................................. 145
GZIP Processing...................................... 139
GZIP Restrictions ..................................... 142
HyperZIP .................................................. 424
IBM Publications .......................................... v
IDCAMS ................................................... 450
IEBCOPY ................................................. 409
IEF450I JES message ............................. 385
-INDD
compressing Tapes .............................. 70
Installation
verifying .............................................. 415
Installation cartridge ................................. 409
454
Installation Verification Procedure .......... 415
ISPF ........................................................ 123
ISPMLIB .................................................. 421
ISPPLIB................................................... 421
JCL
assembling translation table .............. 115
example IEBCOPY restore ................ 409
JCL to run PKZIP ...................................... 28
JOBLIB DD ............................................... 28
Large Files ................................................ 48
LF delimiter ..................................... 175, 234
LIBDEF.................................................... 421
Libraries .................................................. 402
Licence Authentication System ............... 423
Licensing
Reporting ........................................... 426
Short Term ......................................... 428
Updating............................................. 427
LICOUT ................................................... 428
Local Directory .......................................... 48
Local Time .............................................. 198
Magnetic Tapes
using .................................................... 69
Maintenance.................................... 308, 415
MAXIMUM method.................................. 180
Messages ........................................ 315, 387
Licensing ............................................ 387
Patch Printing..................................... 310
MVS attributes........................................... 81
MVS datasets
creation .............................................. 403
loading from cartridge ........................ 409
MVS installation ...................................... 402
introduction ........................................ 401
library contents................................... 405
partitioned dataset creation ............... 403
MVS library contents ............................... 405
MVS licensing ................................. 423, 426
New ZIP archive ........................................ 83
NORMAL method.................................... 180
-OUTDD
decompressing to Tape ....................... 72
PARM ...................................................... 100
PARM Output .......................................... 100
Patch Notes ............................................ 308
Patch Printing .......................................... 308
Patch Process ......................................... 308
Patches ................................................... 415
PDS files
Supported Files .................................... 57
using .................................................... 57
Alias .......................................................... 23
Creation Date .......................................... 199
PDS members
using .................................................... 57
Performance
PKZIP for MVS: User Reference
T4ASI025-00-00
-CACHEMEMORY command ............. 231
Caching .............................................. 173
Multitasking ......................................... 193
PKBEGIN ................................................. 421
PKCLEAN ........................................ 131, 421
PKLOADLB .............................................. 420
PKSTART ........................ 123, 131, 420, 421
PKUNZIP
commands summary .......................... 224
VSAM commands summary ............... 271
PKZIP
commands summary .......................... 154
introduction ............................................. 3
VSAM commands summary ............... 204
Message format ....................................... 315
PKZIP methods .......................................... 94
PKZIP Temporary Datasets ....................... 83
Program Abends ...................................... 306
PRTFILEx DD .......................................... 312
REGION
JCL parameter ...................................... 93
Restrictions ................................................ 21
RFC
1951 .................................................... 135
Sequential files
Supported Formats ............................... 51
using ..................................................... 51
Single Byte Character Set........................ 111
Speed/compression combinations .......... See
PKZIP methods
STEPLIB DD .............................................. 28
Storage Leaks .......................................... 106
STORE method ....................................... 181
Suitable host systems .............................. 402
SUPERFAST method .............................. 180
Supplied libraries ..................................... 402
SYSABEND DD ....................................... 307
SYSIN ...................................................... 101
SYSIN DD .................................................. 28
SYSMDUMP DD ...................................... 307
SYSPRINT DD ........................................... 28
SYSPROC ............................................... 421
System Abends ........................................ 306
SYSUDUMP DD ................................ 28, 307
T4Xnnns .................................................. 387
Tape files
Supported Tape Files ........................... 69
Tape Mounts .............................................. 73
Tapes
copying to disk ...................................... 70
using ..................................................... 69
Temporary datasets ........................... 82, 165
Temporary File Size ................................... 49
TERMINATE option ................. 176, 177, 236
timestamp ................................................ 198
T4ASI025-00-00
TOLERATE option .................. 176, 177, 236
Trace ....................................................... 311
TRACE Command .................................. 311
-TRACE Command ................................. 311
TRACE Example Output ......................... 311
Translation table ....................... 46, 111, 199
default ................................................ 111
format................................................. 112
modifying.................................... 113, 114
specification ............................... 178, 237
Translation Tables
installation .......................................... 408
UNZIPnnns ............................................. 315
User abend codes ................................... 385
User Abend codes .................................. 306
UTC Time................................................ 199
VSAM
Data Name......................................... 183
Index Name ....................................... 183
VSAM Commands summary
PKUNZIP ........................................... 271
VSAM files
Supported Types.................................. 63
using .................................................... 63
WARNONBUSY option ........................... 177
ZDW
binary files ............................................ 47
PKUNZIP command .......................... 267
PKZIP command................................ 200
ZIP archive
file update .......................................... 200
ZIP archive ............................................ 3, 81
allocation unit name ........................... 171
allocation volume name(s) ................. 171
block size ........................................... 162
compression method ......................... 181
creating new......................................... 82
data units ................................... 168, 169
dataset name ............................. 165, 230
dataset specification .................. 159, 228
decryption .......................................... 256
delimiter characters ................... 174, 233
description ........................................... 81
DFSMS data class ............................. 162
DFSMS management class ............... 166
DFSMS storage class ........................ 169
Directory blocks ................................. 163
encryption .......................................... 189
extension conversion ......................... 232
extracting files .................................... 235
file deletion ......................................... 174
file extraction method......................... 262
file integrity ......................................... 262
file terminators ................................... 243
lrecl .................................................... 166
Index
455
on MVS ................................................. 81
password .................................... 189, 256
record delimiters ................................. 243
record format ...................................... 170
record formats ...................................... 81
terminator characters ................. 197, 261
text file compression ........................... 198
transfer to/from other platforms ............ 89
translation table specification .... 178, 199,
263
type of data unit .................................. 170
update existing files ............................ 177
updating old .......................................... 82
viewing contents ................................... 32
ZIP archives
Tapes.................................................... 74
Zip Descriptor Word ....................... See ZDW
ZIP temporary dataset
allocation format ......................... 196, 259
456
allocation unit name ................... 196, 260
allocation volume name ..................... 260
allocation volume name(s) ................. 196
block size ................................... 194, 257
data units ........................... 194, 195, 258
DFSMS data class ..................... 194, 257
DFSMS storage class ................ 195, 258
type of data unit ......................... 195, 259
ZIPCPUID ............................................... 425
ZIPnnns ................................................... 315
Message format ...................................... 310
ZIPPATCH ...................................... 308, 415
ZIPPATCH Messages ............................. 310
Message format ...................................... 387
ZIPPLIC........................................... 426, 427
ZIPPLIC Messages ................................. 387
ZIPPnnns ................................................ 310
ZIPPSTL ................................................. 428
PKZIP for MVS: User Reference
T4ASI025-00-00