System/38 Environment Programming
System/38 Environment Programming
System/38 Environment
Programming
Version 3
IBM Application System/400 SC41-3735-00
System/38 Environment
Programming
Version 3
Take Note!
Before using this information and the product it supports, be sure to read the general information under “Notices” on page v.
| This edition applies to the licensed program IBM Operating System/400, (Program 5763-SS1), Version 3 Release 1 Modification 0,
and to all subsequent releases and modifications until otherwise indicated in new editions. Make sure you are using the proper
edition for the level of the product.
| Order publications through your IBM representative or the IBM branch serving your locality. If you live in the United States, Puerto
| Rico, or Guam, you can order publications through the IBM Software Manufacturing Company at 800+879-2755. Publications are not
stocked at the address given below.
A form for readers' comments is provided at the back of this publication. If the form has been removed, you may address your
comments to:
| If you have access to Internet, you can sent your comments electronically to [email protected]; IBMMAIL, to
| ibmmail(usib56rz).
When you send information to IBM, you grant IBM a non-exclusive right to use or distribute the information in any way it believes
appropriate without incurring any obligation to you or restricting your use of it.
IBM may have patents or pending patent applications covering subject matter in this document. The fur-
nishing of this document does not give you any license to these patents. You can send license inquiries,
| in writing, to the IBM Director of Commercial Relations, IBM Corporation, 208 Harbor Drive, Stamford, CT
| 06904, U.S.A.
| This publication may refer to products that are announced but not currently available in your country. This
| publication may also refer to products that have not been announced in your country. IBM makes no
| commitment to make available any unannounced products referred to herein. The final decision to
| announce any product is based on IBM's business and technical judgment.
| Changes or additions to the text are indicated by a vertical line (|) to the left of the change or addition.
This publication contains examples of data and reports used in daily business operations. To illustrate
them as completely as possible, the examples include the names of individuals, companies, brands, and
products. All of these names are fictitious and any similarity to the names and addresses used by an
actual business enterprise is entirely coincidental.
This publication contains small programs that are furnished by IBM as simple examples to provide an
illustration. These examples have not been thoroughly tested under all conditions. IBM, therefore, cannot
guarantee or imply reliability, serviceability, or function of these programs. All programs contained herein
are provided to you "AS IS". THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE EXPRESSLY DISCLAIMED.
Programming Interface
The System/38 Environment Programming book discusses migration from the System/38 to the OS/400
System/38 environment, conversion to the OS/400 program, and coexistence with the AS/400 system.
This book contains no programming interfaces for customers.
Program objects can be restored only if they Hardware differences: See the System/38
include the program template. See “Save and Migration Planning book for a list of the supported
Restore” on page 2-35 for a complete discussion devices. Some of the major devices and differ-
of the program template. ences are also discussed in this section. The fol-
lowing hardware differences must also be
Tape media written from a SAVSYS operation on considered:
System/38 can be used to restore user profiles,
but authorities (see “Security” on page 2-36) are The 62PC internal drive and the 3370 external
not converted. The device configuration and drives are not supported. The 9332 and 9335
authorities information can be migrated only using Disk Units are supported.
the Migration Aid functions on both System/38 and The 3410 and 3411 tape devices that attach
the AS/400 system. to System/38 are not supported.
You must be careful in restoring the library QGPL The System/38 console device does not exist.
saved from System/38 because you will overlay A work station device (it need not be dedi-
the shipped AS/400 defaults. Instead, you should cated) must be used as the console.
restore only selected objects with the RSTOBJ The hardware control panel differs signif-
command or restore your System/38 QGPL library icantly.
into another library on the AS/400 system. You
should not restore the library QUSRSYS. See the The diskette magazine device is not sup-
recommendations in Chapter 7. ported. A single-slot diskette device is
optionally available.
System-attached printers are not supported.
Restoring the System/38 Objects Only work station printers are supported.
on the AS/400 System The 5251 Model 1 and Model 2 (12-by-80
display stations) are not supported.
When System/38 objects are restored on the
AS/400 system, some changes occur. (See The 5252 (dual display station) is not sup-
Chapter 2 for details.) ported.
The double-byte character set (DBCS)
Programs must include the program template and Printers 5224 Model 12 and 5225 Models 11
are converted to a new internal format (see “Save and 12 are not supported.
and Restore” on page 2-35).
Basic uninterruptible power supply (UPS) is
Database access paths that were saved from supported but not as defined in the System/38
System/38 are restored (not rebuilt), assuming the Uninterruptible Power Supply Planning Guide.
requirements for restoring access paths are met. The full UPS is still supported, but the
approach has been changed.
When System/38 objects are restored on the When you operate from a command entry display
AS/400 system, some are marked as a System/38 or the Programmer Menu on System/38, you are
environment object. You can enter the System/38 entering data to a program. In most cases, this
syntax using the source entry utility (SEU). You data is in the form of a command. The same is
can create the System/38 environment objects on true when you submit a batch job. The command
the AS/400 system. becomes input data to a routing step program.
You can run both the System/38 environment and You cannot pass data in the form of a command
OS/400 programs in any combination. to an application program unless it has been spe-
cifically written to process commands. If you write
a program to process commands, the program
must be specifically written to adhere to the syntax
rules required (for example, required keywords, or
how qualified names are specified). System/38
environment and OS/400 command-processing
programs operate with a similar approach. You
must ensure that you are entering the data in the
DLTPGM DLTPGM
Program
DLTPGM Command
Command
TRMSBS
ENDSBS
Program
ENDSBS
RV2W303-0
The command definition statements appear the If you run a program with the System/38 environ-
same for a qualified name (for example, the QUAL ment attribute (or operate from a System/38
statements occur in the same order). For more command entry function), the system attempts to
information on command definition statements, find the command definition first in the QUSER38
see “Command Definition” on page 2-2. library. If it does not exist, it checks the QSYS38
library. If the command cannot be found in either
The command help function presents the qualified the QUSER38 or QSYS38 libraries, the library list
names in the sequence of the command definition (including QSYS) is used.
QUAL specifications. Consequently, the qualified
name is shown on the prompter as: On System/38, if you wanted to replace the IBM
Program to be deleted . . __________ version of the DLTPGM command, you placed the
command in a specific library and changed the
Library name . . . . . \LIBL __________ system library list so your version would be found.
Neither the QUSER38 nor QSYS38 library should
If you are typing information into the SEU, the be in the job’s library list. Only QSYS38 is
type of source you are entering (System/38 or shipped by the system. You must create
OS/400 program) determines the form in which QUSER38 if you require it. On the AS/400
the data is passed back to SEU from the system, you place the commands you need in the
prompter. There are different source types for the QUSER38 library and do not change the library
OS/400 program (for example, source type CLP) list. If the command cannot be found in either of
these libraries, the library list (including QSYS) is
used.
DLTPGM...
Library
Search
System/38 Order USERCMDS Library User Version
Command Search for DLTPGM
Processing Command
Routine
DLTPGM
DLTPGM...
Library
Search System/38
System/38 Order QUSER38 Library User Version
DLTPGM
OS/400
USERCMDS Library User Version
DLTPGM
OS/400
QSYS Library IBM Version
DLTPGM
RV2W304-0
QSYS38/CRTCLPGM PGM(LIBY/PGMX)...
Command Command
Processing
Routine CRTCLPGM MBR1
PGMX
PGMY
LIBY Library
Program
PGMX
Type=CLP38
RV2W305-0
Figure 1-2. Creating a System/38 Program from the OS/400 Command Entry Display
The QSYS38 and QUSER38 libraries should not For example, assume you are operating on the
be in the library list. They are implicitly searched OS/400 Command Entry display and want to
first by use of the System/38 environment when create a System/38 environment CL program.
searching for the command. Using the CRTCLPGM command in QSYS38
causes the program to be marked as a System/38
Thus, it is possible within a System/38 environ- environment program.
ment program to use a mixture of:
If you are operating in the OS/400 program or
User versions of the System/38 environment
writing an OS/400 program, most IBM commands
commands
perform an identical function and, therefore, you
System/38 environment commands
do not need to qualify them with a specific library.
User versions of OS/400 commands
Some functions (for example, System/38 Query
OS/400 commands
and DFU) exist only in the System/38 environ-
User commands
ment. Commands for these functions must be
Note: Even if the command is only an OS/400 library qualified if they are used in an OS/400 CL
command and never existed on System/38, you program such as:
must still enter it in System/38 syntax (OBJ.LIB) if QSYS38/CHGDTA ...
it is used in a System/38 environment program.
If you want to interactively enter commands using
You can also enter a System/38 command into an the System/38 syntax, you need to call the QCL
OS/400 program using the library qualifier. You program.
must enter the command using OS/400 syntax. CALL QCL
Attempting to operate solely as you did on When restoring an object to the AS/400 system
System/38 is feasible only to a degree. If you that was saved from System/38, the object attri-
attempt to switch back and forth between the bute for files (created from source) and programs
System/38 environment command entry and the is changed to reflect System/38. When you create
OS/400 environment command entry, you can an object on the AS/400 system, you designate by
become confused. Because the syntax, some of the command specified whether you are creating
the command names, and some of the function an OS/400 program or a System/38 program.
keys differ, it is not desirable to switch frequently.
Note: Neither a System/38 nor an OS/400 object
This book assumes that you are operating the can be saved on the AS/400 system and restored
system using OS/400 support. You will probably on System/38. Only data interchange is sup-
have to run and maintain programs and files that ported from the AS/400 system to the System/38.
were written for System/38. You will want to
convert, over time, your System/38 environment The attribute of the object you create is dependent
objects to the OS/400 program. The more objects on the create command used and not the environ-
you convert to the OS/400 program, the less you ment where the create command was run. The
will have to be concerned with different processes following shows two OS/400 programs being
QSYS Library
CRTCLPGM
Command
LIBY Library
Program
PGMX
Object Program
Attribute=CLP
PGMZ
Object
Attribute=CLP RV2W306-0
Because the System/38 environment command is occur, an OS/400 object can be created. The
qualified to library QSYS, an OS/400 object attri- inverse is also true, in that a System/38 object
bute is assigned. attribute can be created using OS/400 source.
If no source is used, the resulting object
The DSPOBJD and DSPLIB commands show the
always appears with an OS/400 object attri-
object attribute so that you can easily determine
bute, regardless of which command was used
the command used to create the object. In most
for the create.
cases the object attribute reflects the source type
used. The exceptions are:
The source file member also contains an indi-
It is possible to create an OS/400 object attri- cation of the source type. The source types are
bute even though the source is System/38 converted when restored from System/38.
using the create command in QSYS (as DSPFD TYPE(*MBRLIST) shows you the source
shown in the previous illustration). If no errors member type.
System/38 Object
Attribute=
CLP
Member 1
Type=CLP
Restore
Source File
Member 1
Type=CLP38
Member 2
Type=RPG38
RV2W307-0
á ñ
Note: The Programmer Menu is described in this
SEU Display SEU Display
book as it should be familiar to most of the
System/38 users. However, you should also con-
sider the new programming development manager
PGM PGM
(PDM), which is part of the AS/400 Application
DLTPGM DLTPGM
Development Tools.
Definition: Checksums are not migrated. You Program name ............. __________
must define them on the OS/400 program using Library name .......... \LIBL __________
the new DST function (see “Service” on
If you use the prompter for this parameter in the
page 2-45). The Backup and Recovery –
System/38 environment, it appears the same as
Advanced book contains more information.
on System/38.
Load/Source device: The Load/Source device
On the OS/400 program, you would code the
(the device that contains the licensed internal
command definition statements in exactly the
code) cannot be in a checksum set. The
same order and the command prompt would
Load/Source device is designated prior to
appear the same. However, when the parameter
restoring the system. The Load/Source device is
is entered in string form, it must be coded as
used for unprotected storage in the same manner
either:
as the first 62PC on System/38. Either a 9332 or
9335 Disk Unit can be the Load/Source device. OS/4ðð or PGM(PGMX)
PGM(LIBY/PGMX)
A Load/Source device is defined to be an actuator
or unit. Thus half of a 9335 or half of a 9332 Assume you are using SEU and have specified
(Model 400) can be designated as the source type CLP. When you use the prompter
Load/Source device. with a specific command name, a qualified name
appears as shown previously. When the
There is new support on the AS/400 system for a Syntax: No syntax differences exist between
product library associated with the command. System/38 CL and the System/38 environment (a
This allows the command user to have only the valid comment on System/38 and the specification
library containing the command on his library list of a qualified name are the same on System/38 as
(the library containing the command processing they are in the System/38 environment).
program is not needed). See the product library However, syntax differences exist between how
discussion in “Library” on page 2-16. commands and comments are written in the
System/38 environment versus on the OS/400
It is possible to take advantage of the product program. The command changes were high-
library (PRDLIB) support in command definition lighted in Chapter 1 and the details of both
and have it used in the System/38 environment. changes are discussed in Chapter 4.
For example, the System/38 environment com-
mands for languages and utilities support this so RTVCLSRC: The RTVCLSRC command
that the individual product libraries do not have to retrieves the source in the syntax that was used to
be on the library list. create the program. For example, if the program
is a CLP38 program, you receive the System/38
It is also possible to take advantage of the layered syntax regardless of which environment is used to
prompt support and use it in the System/38 envi- run the RTVCLSRC command.
ronment.
Naming: See “Naming” on page 2-22 to under-
Number of parameters: Some IBM command- stand changes in how a name must be specified.
processing programs have changed in the number
of parameters they receive. If you use your own ALWRTVSRC parameter: CL programs can be
version of an IBM command-processing program, successfully migrated even if ALWRTVSRC(*NO)
you need to reevaluate the parameter list passed was specified on the CRTCLPGM command.
from the command.
Printed output: The name of the printed output
Validity checking: A validity checking program produced by the CRTCLPGM command has
can also be specified for an IBM command. If you changed from QSYSPRT to the name of the
have specified a validity-checking program for an source member used to create the command.
References: See also the sections on: Console: The AS/400 system does not have a
unique device for a console. The first device
“Alerts” on page 5-5
assigned (Bus 0, first work station controller, Port
“APPC” on page 2-2
0, and Address 0) is considered the console
“Data Description Specifications (DDS)” on
device. During IPL, the device description
page 2-6
QCONSOLE that is attached to controller
“Emulation (3270)” on page 2-11
description QCTL is used for the console. After
“Exchange ID” on page 2-12
IPL, the name of the console device description
“LU-1” on page 2-18 LU-1
can be determined from a system value
“Object Distribution” on page 2-25
(QCONSOLE). QCONSOLE will reflect the name
“Pass-Through” on page 2-26
of the console device currently varied on. This
“RA/DHCF” on page 2-28
system value cannot be changed.
“Remote Location Name (RMTLOCNAME)” on
page 2-29 The console device must be:
“Return Codes” on page 2-35
“SNADS” on page 2-48 A 5250 device (for example, 5251 or 3180)
“X.25” on page 2-62 A personal computer that uses an emulation
adapter
An ASCII 315x/316x
Communications File: See “Data
Description Specifications (DDS)” on page 2-6. Note: After IPL, the system-created QCONSOLE
device description and its related work station
Copy File (CPYF) message queue still exist. If you have application
programs that send messages to the QCONSOLE
Data interchange: When copying for data inter- device, they should be changed. If no change is
change, you must be aware of the diskette and made, the message will be sent to the system-
tape differences. See “Diskette” on page 2-10 created work station message queue named
and “Tape” on page 2-59. QCONSOLE.
OPNQRYF: See “Overrides” on page 2-25 for a Access path keyword: The ACCPTH keyword
change with OPNQRYF processing and the for logical files has changed. See “Database” on
restriction with OPNQRYF using Distributed Data page 2-5.
Management (DDM) in “Utilities and Other
FORMAT keyword: It is no longer valid to
Licensed Programs” on page 2-62.
specify a logical file on the FORMAT keyword in
See also “Data Description Specifications (DDS).” the DDS for a physical file. Only a format from
another physical file can be shared. When
DBCS fields: The OS/400 database support has migration occurs, any sharing is implicitly handled
been enhanced to allow two additional data types so no change is required. However, if the same
for DBCS fields. They are J for DBCS–only and E DDS that existed on System/38 is used to re-
for DBCS–either. These are in addition to the create the file, an error occurs.
data type of O for DBCS–open that is supported
on the System/38. Files migrated from System/38 Display files: Display files using only the
or created in the System/38 environment do not DSPSIZ keyword value of *DS1 (16-by-64
need to make any changes. The database console) or *DS2 (12-by-80 5250 Model 1) cannot
The CRTCUD command has been split into indi- The Migration Aid is the only way you can auto-
vidual commands and each CRT command has a mate the migration of your existing device config-
corresponding CHG command. Some of the com- uration. If you have device configuration
mands and parameters support functions that are commands in CL job streams or CL programs, the
not on System/38. The commands should be data might be of value in determining what to
read as “Create Controller Description xxxx” where enter, but the commands cannot be used on the
xxxx is the type. The following is a list of some of OS/400 program. CVTCLSRC does not convert
the new commands: these commands.
Command Device
Automatic configuration: A new system value
CRTCTLAPPC APPC
(QAUTOCFG) controls the use of automatic con-
CRTCTLASC Asynchronous
figuration for local devices and controllers. The
CRTCTLBSC Bisynchronous
default value is 1, or on, specifying that automatic
CRTCTLFNC Finance
configuration should be in effect.
CRTCTLHOST SNA Host
CRTCTLLWS Local Work Station If automatic configuration is requested, the system
CRTCTLRWS Remote Work Station automatically creates a device description for any
CRTCTLVWS Virtual Work Station local device (display station, tape unit, printer, and
diskette unit) as soon as the device is turned on.
The CRTLIND command has been split into indi-
Local controller descriptions are automatically
vidual commands and each CRT command has a
created. A system defined name is associated
corresponding CHG command. Some of the com-
with each object created. Default attributes are
mands and parameters support functions that are
assigned. The attributes that can be changed by
not on System/38. The commands should be
the CHG commands can be used to change the
read as “Create Line Description xxxx” where xxxx
attributes regardless of how the object was
is the type. The following is a list of some of the
created (not all create parameters exist on the
new commands.
CHG commands).
Command Device
Note: You cannot change the name of a device
CRTLINASC Asynchronous
configuration object (to change the name you
CRTLINBSC Bisynchronous
must delete the object and then re-create it). See
CRTLINSDLC SDLC
the Local Device Configuration book for specific
CRTLINTDLC Twinaxial Data Link
information.
Control
CRTLINTRN IBM Token-Ring Network If you do not want to automatically configure the
CRTLINX25 X.25 local devices and controllers, you must change the
QAUTOCFG system value to 0, or off. To create
The device mode function has changed. Device
a device or controller you would issue a CRTxxxx
modes are now specified as a separate new
command or use an IBM-supplied menu.
object type and the device description contains an
entry that points to the new object. The Although local devices can be automatically con-
System/38 commands ADDDEVMODE, figured, you must manually configure your remote
CHGDEVMODE, and RMVDEVMODE are no devices, controllers, and lines. Automatic config-
longer supported. See the online help information uration requires that you use the system-supplied
for the CRTMODD and CHGMODD OS/400 com- naming conventions for your devices.
mands.
The naming convention for automatically config-
Migration Aid: The Migration Aid performs an ured local work stations is dependent on the
important function relative to device configuration. QDEVNAMING system value. If QDEVNAMING is
The configuration is saved from System/38 and *NORMAL, then the work stations are named
the Migration Aid must be used to restore the con- DSPnn, where nn is a consecutive number. If
The VRY commands operate differently on the The diskette LOC parameter is replaced as the
AS/400 system. They send a request to a default in the System/38 environment to the
standard internal routine to perform the vary. single-slot diskette. For many applications, this
Because the system does not wait for low-level causes no change. However, differences may
machine processing, you see a faster return occur. For example, if you have a program that
response from an individual command. However, deals with the magazine and keeps clearing and
actual completion can no longer be assumed on saving to successive diskettes, the net result is
receipt of the completion message. The same that only the last save would appear on the single
escape messages exist. diskette. You need to rework this application.
Another example is where you have a program
Display configuration: The DSPDEVCFG that initializes diskettes in a magazine.
command is not supported. This displayed or
printed some, but not all, of the device configura- Default device name: The default diskette-
tion attributes. You can achieve similar results device name created by the system is DKT01. If
from the WRK commands and request a display of you use the diskette with the System/38 environ-
each description. You can also program for the ment commands, they assume the name QDKT.
same function using the DSPOBJD outfile support You need to do one of the following:
and the DSPxxxD commands. See the sample Operate only with OS/400 commands.
program in Appendix D or the PRTDEVCFG tool
in the QUSRTOOL library. Create a diskette device description name
QDKT and delete the system-created DKT01
*PU2 controller: For the *PU2 controller type on object.
System/38, the CTLADR parameter must begin
with a 00 address. On the OS/400 program, the Repair utility: The Diskette Repair Utility is not
parameter is now named STNADR and the value supported.
Unsupported programs: The following pro- Unattended IPL is the default. This means that
grams are not supported (a not found message is once you turn on the system, an operator is no
sent if you call these programs): longer needed. The controlling subsystem is auto-
matically started and an automatic-start job can
System Operator menu QOPRMENU
bring up the system and perform any unique
User menu QCALLMENU
requirements. See “Subsystem Description” on
The new system menus may be used to replace page 2-53 for the new support that assists in cre-
these functions. If you have made significant use ating an automatic start job.
of either program, consider developing your own
You can override the unattended default using the
version.
Manual keylock position on the operator control
panel. This allows you to leave the default as
unattended and still have an attended IPL for spe-
cific requirements.
Job streams: No changes. The shipped subsys- If the current library value contains a library name,
tems provide a routing entry that is used by the the library search list is changed and the DSPLIBL
JOB command to cause the system to check for display shows the current library name. Because
System/38 environment syntax. many user CL statements specify an unqualified
object name, the library list is used to find objects.
Journal: No changes. See “Job Accounting” Specifying a current library can cause a change in
on page 2-15. the library in which an object is found.
System/38 Approach
CRTRPGPGM . . .
Library
List
Search
System/38 Order Libraries
Command Search for QSYS
Processing Command
Routine QGPL
... Command
QRPG CRTRPGPGM
...
QRPG needed
on library list
to syntax check
command.
RV2W309-0
OS/400 Approach
CRTRPGPGM . . .
Library
List
Search
OS/400 Approach Order Libraries Command
Command Search for QSYS CRTRPGPGM
Processing Command
Routine Product Library
QGPL PRDLIB=QRPG
PGM=QRPGxx
QTEMP
...
RV2W310-0
The QRPG library does not have to be on the LU-1: The logical unit-1 (LU-1) support is less
library list for the SEU syntax check function or restrictive with request unit lengths. Device con-
when the command runs. figuration changes are required. See the new
commands described in “Device Configuration” on
The PRDLIB value is shown on the DSPLIBL page 2-7. “Data Description Specifications
display only if the command being used has speci- (DDS)” on page 2-6 describes the CMNF file.
fied a product library.
Menu
Changing profiles and commands: Both the
current library and product library support allow Commands: The DSPMNU command is not sup-
you to name libraries that may already be on your ported. It is replaced with the GO command,
library list. Therefore, you may begin to change which has a similar function, but only identifies the
user profiles and commands for this new support OS/400 commands. No support displays the
without making changes to existing job System/38 environment commands in a manner
descriptions. similar to the DSPMNU command. However, the
commands WRKCMD (work with command) and
DSPOBJD outfile: The DSPOBJD outfile format SLTCMD (select command) can be used to select
has added additional fields on the end of the System/38 commands.
record. This should not cause changes to existing
programs. The ODOBAT field, which defines the The GO command displays:
attribute of the object, contains the new values for
System/38 attributes (for example, RPG38). See Any of the new IBM menus (for example, the
“Object Attributes and Source Types” on System Main Menu) designed to assist in
page 2-23. The ODOBTP field has a change for operating the system. A list is displayed if a
one value. See “Cross-Reference” on page 2-5 generic name is entered.
for more information about this field. The new command-grouping menus, which
replace the functions performed by DSPMNU
Delete options: DSPOBJD and DSPLIB in the on System/38.
OS/400 program does not support option 9 User menus, which are defined as *MENU
(Delete) to delete objects. The new OS/400 object types. This is a new function and is
command WRKOBJ allows the delete option. described in “Menu” on page 4-10.
Renaming: A library cannot be renamed The GO command allows you to display imme-
(RNMOBJ) if it contains a journal, journal receiver, diately a menu that is a menu object. For
or the new IDDU dictionary object. example, the System menu QSYS/MAIN is the
default assigned as the initial menu for any
created profiles. To immediately access this
menu, you would specify:
GO MAIN
or GO MENU(MAIN)
To work with the new CMDxxx menu objects, the See“System Request” on page 2-56 for a dis-
command grouping menus have been changed as cussion of the changes to the System Request
follows: menu.
F16 to run a command without prompts is not The Configuration Menu at the OS/400 IPL
supported from the menu. Options display has been renamed and enhanced.
Help information is available for the com- See “Initial Program Load (IPL)” on page 2-13.
mands.
A command line (entry of a full command) Message Handling
exists on all command menus. No special
input fields are given for a command name or Migration: The Migration Aid or save and restore
menu name. function migrates message queue object
Certain functions are AS/400 system only. descriptions, but not any messages in the queues.
For example, the displays that allow a param- Message file objects and message descriptions
eter line on System/38 allow a similar function are migrated. The System Reply list cannot be
on the AS/400 system, but the entries must saved and must be manually updated.
appear in OS/400 syntax. For example, the
DSPOUTQ function to change a spooled file Message IDs: Most message IDs remain the
to a different output queue must be specified same, including the CPFxxxx types. In most
in OS/400 syntax such as cases, programs monitoring for escape messages
OUTQ(LIBX/OUTQB). should not have to change. A few message IDs
that are sent to QSYSOPR have been changed.
Command entry capability: On System/38, very
few displays supported command entry capability A valid message description ID includes the char-
(for example, the Command Entry display and the acters A to F (in addition to 0 to 9) for the last 4
Programmer Menu). On the AS/400 system characters (for example, CPFAABB). Some mes-
almost all of the OS/400 menus support the ability sages issued by IBM use this expanded naming
to enter a command on a command line. Only function. The System/38 environment commands
OS/400 syntax is supported on AS/400 menus. can work with this expanded definition.
You can control whether a user has the general User profile message queue: A message
capability of entering commands. If you are queue is associated with each user profile on the
relying on menus to provide security, you want to AS/400 system. The default when a user profile is
use the LMTCPB parameter in the user profile created is to create a message queue with the
(see “Security” on page 2-36). same name as the user profile in the QUSRSYS
library. The OS/400 commands allow a special
Unsupported menus: QCALLMENU is not sup- entry on SNDMSG, SNDUSRMSG, and
ported. This menu was the default for the QUSER SNDPGMMSG to send directly to the message
profile and allowed a simple method of calling pro- queue associated with the user profile. The
grams. It would be possible to build your own System/38 environment commands do not allow
version to simulate the System/38-provided easy use of these message queues. However,
version. you can achieve somewhat the same function in
the System/38 environment using RTVUSRPRF to
access the MSGQ associated with the user profile
Changing message descriptions: The OS/400 For example, assume you are using a save
WRKMSGD command retrieves the message command interactively. During the running of the
description information and places the existing command, an inquiry message concerning the
values in the command prompt for the CHGMSGD media may be sent to QSYSOPR message
command. This simplifies changing existing queue. No feedback is sent to your work station
message text. on System/38 that your job is waiting for a
response. On the AS/400 system, you receive a
Message displays: The display of first-level message informing you that your job is waiting for
messages changes so that all impromptu mes- a reply to a message sent to QSYSOPR.
sages are identified as to who sent them, date
Personal computers as work stations: A If you are not using alerts, you may continue to
special type of device description, *PEER, can be take the defaults.
configured for a *PCS device that is attached to
an IBM Token-Ring Network. This implicitly Commands: The System/38 environment com-
creates a message queue in QUSRSYS in the mands that work with network attributes continue
same manner as created for local work stations. to function for some network attributes. However,
Sending messages to all work stations includes you should use the OS/400 commands to enter
these message queues. and change these attributes because only the
OS/400 commands support the full function.
Logs: The QCHG and QSRV logs are no longer
supported. See “Logs” on page 2-18. Attributes: The following describes each of the
System/38 network attributes and any changes
Mixed File: See “Data Description Specifica- that have occurred:
tions (DDS)” on page 2-6. ALRSTS A new value (*UNATTEND) is sup-
ported, but only on the OS/400
Naming command.
ALRCTLU This is renamed to ALRCTLD in the
Syntax: While operating in the System/38 envi-
OS/400 program. Any use on the
ronment, the names you can specify for object
RTV or CHG commands causes an
names, job names, or field names are unchanged.
error message.
Qualified names can be entered as they were on
System/38. If commands are entered in the ALRFOCPNT Not supported. Any use on the
OS/400 program, differences in terms of syntax, RTV or CHG commands causes an
the separator character, valid characters, and error message.
quoted names exist. In the System/38 environ- SYSNAM This is renamed to SYSNAME in
ment, use of the extended names as defined for the OS/400 program. SYSNAM
the AS/400 system is not valid. See Chapter 4 of performed two functions on
this book for more information. The CL Program- System/38:
ming book contains more information about name
syntax. Name on the displays. This
operates the same as it did on
User assigned names: Documents on System/38.
System/38 did not have user-assigned names. Means of establishing commu-
On the AS/400 system, the names can be nications with another system.
assigned in the same style as PC names. This function has changed.
See “Remote Location Name
Network Attributes: None of the network (RMTLOCNAME)” on
attributes on System/38 are migrated by the page 2-29.
Migration Aid to the AS/400 system. For nonalert The display, change, and retrieve
attributes, see the System/38 to AS/400 Migration functions that use the SYSNAM
Aid User’s Guide and Reference for more informa- parameter in the System/38 envi-
tion and a sample program. ronment all operate on the OS/400
program. SYSNAME attribute.
System A System B
RMTLU(SYSB) RMTLU(SYSA)
LCLLU(*SYS) LCLLU(SYSB)
SYSB SYSA
SYSA SYSB
Network Attribute
SYSNAM
SYSA
RMTLU(SYSB) RMTLU(SYSX)
LCLLU(SYSX) LCLLU(SYSB)
SYSB SYSX
SYSX SYSB
RV2W312-0
Prior to establishing communications to another of having a default is allowed, but more flexibility
system, both systems had to create the device exists to separate the functions performed by the
description objects to allow the link to occur. It is System/38 network attribute of SYSNAM (the
not necessary that the device descriptions have other function causes the name to be used on dis-
the same names. plays). If you do not need this flexibility, you
should use the same name for both network attri-
Parameters: In the OS/400 program, the names butes.
of the parameters have changed, but they essen-
tially have the same meaning: On the OS/400 program, a new object called a
configuration list is used if you are using APPN.
System/38 AS/400 Names You can identify the additional names that you
RMTLU → RMTLOCNAME want to call your own system (all of the local LU
LCLLU → LCLLOCNAME
names that you want your system to be known
as). These are the local names. You use the
The LCLLU parameter has a different default. It is
CRTCFGL, CHGCFGL, ADDCFGLE, and
now *NETATR. This refers to the new network
RMVCFGLE commands to maintain this list. A
attribute LCLLOCNAME. Thus, the same concept
sample list might look as follows:
System A System B
Device Description
RMTLOCNAME(SYSB)
LCLLOCNAME(SYSX)
Dynamically
Created
RV2W314-0
The local AS/400 system knows that the commu- When you define the configuration link in an ICF
nications request is for this system because the file, you need only describe a RMTLOCNAME.
name SYSX is in the APPN local-location config- The RMTLOCNAME is a parameter on the
uration list. If a device description with the speci- ADDICFDEVE or OVRICFDEVE command. The
fied RMTLOCNAME and LCLLOCNAME exists, it device description object is dynamically selected
is used. If not, a device description is dynamically for you when the file is opened. The
created. LCLLOCNAME uses the default network attribute
*NETATR.
The system builds an internal directory of the
RMTLOCNAME and LCLLOCNAME information Any dynamically created device description acts
from created device descriptions. This directory is the same as a user-created device description on
searched to determine if a device description the system. For example, you may change or
already exists and if so, it is used. display the device description. If you no longer
need one of the descriptions, you must delete it.
Another way the system dynamically creates a The system does not keep track of which device
device description is when a program opens an descriptions are being used. If you accidentally
ICF file. In the System/38 environment, the files delete one that is being used, the system dynam-
used by application programs must specify a ically creates it again when it is needed.
device description that has already been created.
However, OS/400 files require that In the first example on dynamically creating a
RMTLOCNAME be specified instead of a device device description (Figure 2-3), a request came in
description and the device description object can from SYSB and it identified that it wanted to talk to
be implicitly created. SYSX. The local system found the SYSX name in
the APPN local-location configuration list and,
CRTICFF FILE(M)....................................
ADDICFDEVE FILE(M) PGMDEV(PGMDEVA) RMTLOCNAME(SYSB)
System A System B
RMTLOCNAME(SYSB)
Program
Open FILE(M)
Dynamically
Created
Device Description Device Description
RMTLOCNAME(SYSB) RMTLOCNAME(SYSA)
LCLLOCNAME(*NETATR) LCLLOCNAME(SYSB)
SYSB SYSA
SYSA SYSB
Network Attribute
LCLLOCNAME
SYSA
RV2W315-0
If the name is not in the list, is not the default local RMTLOCNAME Remote Control Point
location name in network attributes, and is not the TOM SYS7
local control point name in network attributes, the
new system support for APPN is used automat-
The system would find SYSZ in the directory and
ically.
route the request to SYS2. APPN also automat-
For example, assume a request came in for ically determines how to route the request. For
SYSZ. This is not in the local list so the new example, the system determines which lines to
APPN support would search an internal table use and which intermediate systems must be sent
(directory). The table is updated implicitly by the for the request to have it forwarded. This is based
system. This table contains the actual location of on the class-of-service object associated with the
where the name exists (which system calls itself mode. The class-of-service object associated with
by that name). A table might look like: the mode defines the acceptable ranges of link
and node characteristics for the session. The
RMTLOCNAME Remote Control Point request for SYS2 may have to be routed to SYS7
first, no physical connection exists between your
BILLING SYS2
system and SYS2.
MARY SYS5
SYSB SYS5
SYSZ SYS2
SYSA RMTLOCNAME(SYSZ)
LCLLOCNAME(SYSB)
SYSX SYSZ
JOB SYSB
PAYROLL
Internal Directory
Name System
BILLING 2
MARY 5
SYSB 5
SYSZ 2
TOM 7
AS/400 System
SYS7
AS/400 System
SYS2
RV2W316-0
The directory keeps track of where it finds the More than one system responds as SAM.
names. Each system in the network has a direc- The first system to respond is assumed to be
tory performing a similar function. the correct system and is forwarded the
request, but an error is posted. You must
Assume now that a request comes in from System manage the network in terms of keeping the
B for a RMTLOCNAME = SAM. SAM is not in the names unique across the network.
APPN local-location configuration list so the
system knows the request cannot be met locally. The directory is a dynamic function. For example,
It passes the name to the remote directory func- in the previous discussion BILLING is on SYS2.
tion, which does not find the name either. The BILLING may represent one or more database
remote directory then sends a broadcast message files and programs. Assume a change is required
to every system in the network to see if SAM to move the entire function to SYS7. Our system
exists. The following can result: has a directory entry for BILLING that points to
SYS2. If a request for this occurs, our system
No system has SAM as a name, and therefore
directs it to SYS2. SYS2 responds, saying it does
the original request is rejected.
not have BILLING. Our system deletes the entry
One system responds saying it is known (or from the internal table and broadcasts a message
also known) as SAM. In this case, the direc- to all systems saying Who has BILLING? When
tory is updated and the request sent to the SYS7 responds, the table is updated.
responding system.
The same concept of RMTLOCNAME is also used
for other communications functions (for example,
CRTICFF FILE(N)....................................
ADDICFDEVE FILE(N) PGMDEV(PGMDEVB) RMTLOCNAME(BSC1)
System A System B
RMTLOCNAME(BSC1)
Program
Open FILE(N)
Device Description
BSCX
RMTLOCNAME(BSC1)
RV2W317-0
Display and printer files: The return codes for Licensed programs: Programs from the
DSPF and PRTF have changes. The changes are System/38 licensed programs (for example, the
primarily to agree with the same codes used in the RPG compiler) are not restored on the AS/400
OS/400 program. Many applications do not check system. You must obtain the OS/400 licensed
for the return codes for displays or printers. The program.
major return codes are primarily identical (most
changes affect the minor return codes). The RSTPGMPRD is now RSTLICPGM.
changes are described in Appendix C. Note: The utilities provided with the Migration Aid
should be used whenever possible.
Cancel job: The 02 major return code is set if a
cancel job (called ending a job in the OS/400 Release requirements: The AS/400 system sup-
program) is requested. This does not affect ports most object types saved on System/38
printers, BSC, or CMN files. MXD files are not Release 5 or later (both diskette and tape). If you
affected except for display functions. The 02 have historical data that you may want to restore
major return code does not cause an escape on the AS/400 system, you must ensure that it
message. If your program is performing an action was saved on System/38 using Release 5 or a
and the major return code is not 00, you may later release. You should also ensure that it is
need to change your program. saved on a media format and type density that
can be restored on the AS/400 system.
Save Files: The object descriptions of the
save files will migrate successfully using the Tape: The tape devices supported by the AS/400
Migration Aid or save and restore. However, any system are all supported by save and restore. For
contents in a save file are not migrated. You must tape capacities, rates, and devices supported for
use the SAVSAVFDTA command to save the con- models of the AS/400 system see “Tape” on
tents of a save file. page 2-59.
Some device files saved on System/38 with attri- Security considerations: On System/38, if a
butes that are not valid are not restored by the new object was restored and the owner did not
OS/400 restore. Examples include card files and exist on the system, the owner was changed to
display, mixed, or communications files with QSECOFR. On the AS/400 system, the owner
unsupported DDS functions. See “Data name is QDFTOWN.
Description Specifications (DDS)” on page 2-6
and the System/38 to AS/400 Migration Aid User’s The RSTUSRPRF command on the OS/400
Guide and Reference for more information. program can be used on SAVSYS media created
from System/38, but only if saved on Release 8.
Documents and folders: The SAVDOC and
RSTDOC commands do not operate in either the Database files: A change has been made to the
System/38 environment or the OS/400 program. way database files are restored on the system.
The OS/400 commands are SAVDLO and On System/38, spreading on different disk
RSTDLO. RSTDLO cannot be used to restore a actuators did not occur for files less than 16
*DOC object from System/38. AS/400 documents megabytes. On the AS/400 system, better
saved by SAVDLO cannot be restored on spreading occurs if the space utilization of the disk
System/38. units is approximately the same. The technique
approximates what would happen if you created a
The Migration Aid can be used to migrate docu- new file and used a program to write records to
ments to the AS/400 system. the file. If you add a new disk unit, spreading will
not occur until the new disk unit has approximately
A Personal Services/38 user can mail a document the same amount of space utilization as the
to a user on the AS/400 system. The AS/400 existing units.
user could file the document in a folder. (A folder
is used to group related documents and to find
Security
documents by name. It is similar to a library.)
| Levels: Five different security levels exist and
The new SAVDLO command can save specific
| are controlled by the system value QSECURITY:
folders and documents while other work is occur-
ring on the system. However, if you request that Level 10 No password. All users have essen-
all documents and folders be saved, the restricted tially all authority. A few functions are
condition (all active subsystems ended) must be reserved for the security officer and
used. service profiles.
Level 20 Password is required. All users have
SAVSYS: The SAVSYS command saves both
essentially all authority. A few func-
QSYS and related OS/400 objects (as it did on
tions are reserved for the security
System/38). On the AS/400 system (using either
officer and service profiles. It is pos-
the System/38 environment or the OS/400
Most of the OS/400 commands have changed as Excluding a user: On the AS/400 system, new
follows: support has been added for exclusion of a user.
The *EXCLUDE authority means the user cannot
System/38 access the object. For example, if the display
Environment OS/400 Program appears as:
*NORMAL *CHANGE
*OPER *USE
*NONE *EXCLUDE
à@ ð
User Object -----Object---- --------Data-------
Authority Opr Mgt Exist Read Add Upd Dlt
– *OBJOPR
JONES \EXCLUDE
\PUBLIC \USE X X
JONES \USE X X
parameter) have changed for the definition of
SMITH
\PUBLIC
\USE
\CHANGE
X
X
X
X X X X *NORMAL. The value *NORMAL now specifies all
The following service functions on System/38 no Optional values: Optional values are shown on
longer exist on the AS/400 system: the Sign-On display for:
CSNAP Initial program
BSC diagnostic Initial menu
SLV update Current library
Vary power control
MCR update The user profile parameter LMTCPB (limit capa-
Error logging control bility) controls whether the user can enter these
Diskette Repair Utility values on the Sign-On display. The Migration Aid
QSRV Log uses the System/38 user profiles as the default
which results in a value of LMTCPB(*NO). This
References: See also the sections on: means the user signing onto the profile can
“Problem Determination” on page 2-26. change these values. The LMTCPB default also
“Programming Temporary Fix (PTF)” on lets a user enter commands on a Command Entry
page 2-28. display.
“Problem Log” on page 2-27.
On System/38, only the initial program function
“Problem Analysis Function” on page 2-26.
was supported and there was no option on the
“System Support” on page 2-57.
Sign-On display to allow a change. Many end
See also the change in “Security” on page 2-36 users were controlled by user-written menus that
relative to the new service profiles and also the were started by an initial program and never
resetting of passwords. allowed access to a Command Entry display. To
achieve the same type of support as existed on
System/38, you need to change the end user pro-
Session Description: Created by the RJE files to say LMTCPB(*YES).
utility. No changes. See “Remote Job Entry
(RJE) 5714-RC1” on page 2-66. The LMTCPB(*PARTIAL) function allows users to
change only the INLMNU parameter on the
Shipped Objects: The IBM objects that are Sign-On display and allows them to enter com-
shipped in QGPL have changed. See the dis- mands on a Command Entry display.
cussion in Chapter 7.
If the QCMD routing program is used (it is the
The objects which you can change in QSYS (for default), the sequence of functions performed is:
example, print files) must be changed in the same
1. The user profile ATNPGM is set.
manner that you changed them following a new
release on System/38. A job stream or CL 2. The initial program is run.
program should be used to change such things as
3. If the initial program does not exist or com-
the form size for the print files.
pletes without a sign-off, the initial menu is
run.
Sign-On
Yes ATTNPGM No
= *NONE
SETATNPGM
Yes INLPGM No
= *NONE
Call Initial
Program
Did
No Sign-Off Yes
Occur?
End
Yes INLMNU = No
*SIGNOFF
End
Did
Yes No
Sign-Off
Occur?
End
RV2W318-0
If a sign-off occurs in the initial program, the If your approach to security on System/38 was
initial menu is never run. to control the user through a menu presented
The initial program must either not exist or do by an initial program, you may want to set the
a return for the initial menu to be run. migrated profiles to INLMNU(*SIGNOFF).
A special value is allowed for the initial menu
which is *SIGNOFF. This means that a user User defined sign-on display: On System/38
is signed off if the initial program does a the CPF Programmer’s Guide Work Management
return. This entry is designed for those users chapter describes how to create your own
who are controlled solely with an initial Sign-On display. If you have done this, the
program. A message is sent to the operator if display file must be changed to adhere to the new
this occurs. requirements.
| “Creating Another Subsystem Description for Parameters: The Node ID (NDEID) parameter
| the Controlling Subsystem” supported on several SNADS commands is
| “Retrieving the Sign-On Information in an ignored in the System/38 environment and
| Application Program” dropped on the corresponding OS/400 commands.
This specified the two part name in the next
Inquiry message: The inquiry message that system table.
occurred when QCL was to be ended and was the
first program in the program stack still exists. The DSPDSTLOG command ENTTYP parameter
QCMD also supports the inquiry message, but the allowed the value next system table (*NST). This
message only occurs if QCMD is the second has changed to distribution queue (*DSQ).
program in the program stack.
Source Attribute: See “Object Attributes and
SNADS Source Types” on page 2-23.
Printer Printer
PRT01 PRT02
CRTDEVPRT DEV(ABC) . . .
RV2W320-0
PRTDEV(*USRPRF)
OUTQ(*USRPRF)
System Value
Initial Job Attributes User Profile QPRTDEV
PRT01
PRTDEV(*SYSVAL)
PRTDEV(*USRPRF) OUTQ(*DEV)
OUTQ(*USRPRF)
PRTDEV(PRT01)
OUTQ(*DEV)
RV2W321-0
These attributes provide the base values for printer. The OUTQ parameter contains either
the job. The printer file also has the PRTDEV an output queue name or the value *DEV.
and OUTQ parameters that may specify to
4. Once the job starts, the values in the job
use these job attributes (described in step 5).
description, the user profile, or the system
The default is *JOB.
value are no longer used to determine the job
Note: The OUTQ parameter can specify attributes. Any changes are ignored for active
*DEV. If the printer file is directed to use the jobs. The CHGJOB command can be used to
job attributes, the output queue to be used is change the PRTDEV or OUTQ job attributes
the queue associated with the PRTDEV while the job is active.
parameter specified in the printer file. The
5. When a program opens a print file, the open
PRTDEV attribute contains a name of a
routine goes through a series of steps.
Open
DEV(*JOB)
SPOOL(*YES)
OUTQ(*JOB)
PRTDEV(PRT01)
DEV(PRT01)
SPOOL(*YES)
OUTQ(*DEV) OUTQ(*DEV)
Direct Attach
Yes No
SPOOL(. . .) Printer
Determine Which
Output Queue
Output Queues
PRT01
QPRINT2
QPRINT
RV2W322-0
.A/ If the OVRPRTF command is specified .B/ The DEV parameter value is determined if
before your program opens the print file, the file is not spooled. The DEV param-
the overrides are merged with the print eter in the Open Data Path is evaluated
file attributes to create the temporary as follows:
object called an Open Data Path (ODP).
DEV = *JOB Use the job attribute
Only one set of attributes exists after the
PRTDEV
merge. If no overrides are specified, the
DEV = *SYSVAL Use the name in
print file attributes are used. If the
QPRTDEV system
defaults were taken, the important values
value
to this discussion are:
DEV = xxx Use the xxx printer
DEV = *JOB device
SPOOL = *YES
In the previous illustration, the Open Data
OUTQ = *JOB
Path DEV attribute of *JOB causes the
job attribute of PRT01 to be used.
*READ authority to an output queue is now To create your own subsystems, you may use the
required to place a spooled file on that output CRTDUPOBJ command to create copies of these
queue. On System/38, *ADD authority was IBM-supplied subsystems in a user library.
required.
There are two subsystem approaches: The multiple subsystem approach allows you to
start and end classes of work (for example, batch
Simple subsystem approach. A single sub-
and interactive) in a more convenient manner by
system (QBASE) is used as the controlling
starting and ending subsystems.
subsystem and is also used for interactive,
batch, and communications work. Spooled
The multiple subsystem approach is also much
work is done in the QSPL subsystem. For
more convenient to work with if you have complex
QBASE, multiple storage pools exist and
routing entries to deal with or a frequent need to
routing entries direct the work to the pools
change the subsystems. On the AS/400 system,
with different processing priorities. However,
as on System/38, some of the attributes of a sub-
all the pool entries use *BASE so that all
system cannot be changed while the subsystem is
batch and interactive work is done in the
active.
same pool.
QBASE is the default controlling subsystem For example, if you need to change an interactive
shipped in the QCTLSBSD system value. routing entry, it is much easier to do it with the
multiple subsystem approach. With the simple
An automatic start job exists using a special
subsystem approach, you must change the
job description QSTRUPJD. See “Automatic
QCTLSBSD system value to QSYSSBSD in
job start” on page 2-55.
QSYS, power down, do another IPL, change the
Multiple subsystem approach using the fol- QBASE subsystem, change the system value
lowing subsystems: back to QBASE, power down, and do another IPL.
With the multiple subsystem approach you need
Controlling subsystem QCTL
only end the QINTER subsystem, make the
Interactive work QINTER
change, and then start QINTER again.
Batch work QBATCH
Spool work QSPL
Both subsystem approaches contain the special
Communications work QCMN
entries needed to allow both the System/36 and
System/38 environments to be operational.
The multiple subsystem approach is similar to
what was shipped as a default for System/38.
Performance adjustment option: In conjunction
However, the QCTL subsystem also supports an
with the two subsystem approaches, the system
automatic start job using the same job description
has a new function called performance adjust-
(QSTRUPJD) as in the QBASE subsystem.
ment which is controlled by the system value
QPFRADJ. The default is to cause a performance
To use the multiple subsystem approach, you
adjustment at IPL. This function sets the storage
must change the system value QCTLSBSD to
pool sizes and activity levels based on the system
QCTL QSYS.
model, main storage size, and the configuration-
Note: The QCTLSBSD system value is not related descriptions that exist.
migrated by the Migration Aid.
Note: This function only occurs when you do an
The storage pools set up are the same for both IPL. It resets the values on each IPL when the
approaches. The shipped entries all use *BASE system value is set. It is not a dynamic adjust-
as the pool to run in. Note the later discussion of ment function that changes as your work load
IPL performance adjustment and how it may affect changes.
these pools.
If an adjustment is requested by the QPFRADJ
system value, the following occurs:
AS/400
Media Models
Width Sup- Maximum Rewind
Tape in ported Megabytes Time in
Device Inches Type On Per Hour Minutes Maximum Media Capacity (MB)
6346 1/4 Streaming 9404 320 3.0 120
9404 and
9346 1/4 Streaming 9406 320 3.0 120
9404 and
9347 1/2 Streaming 9406 550 2.7 44
2440 1/2 Start/Stop 9406 1500 2.4 167
3422 1/2 Start/Stop 9406 2230 1.1 167
3430 1/2 Start/Stop 9406 950 3.0 167
Default changes: The default for RTGDTA on IBM-supplied nonchangeable objects: IBM
SBMJOB and JOB on the System/38 environment ships the following objects that can be used if your
commands is changed from *JOBD to QCMD38. subsystem objects become damaged or inoper-
This allows the job to be processed by the correct able:
routing entry in the IBM-supplied subsystems.
This change may cause the following differences: Description Object Library
Controlling subsystem QSYSSBSD QSYS
If you have your own subsystems or have
changed the IBM subsystems, you may need Class for routing entry in QSYSCLS QSYS
to change your routing entry to QCMD38 subsystem QSYSSBSD
instead of QCMDB. JOBD for use with the QSYSJOBD QSYS
ADDWSE command for
If you were making use of unique RTGDTA the subsystem
values in job descriptions, you need to change QSYSSBSD
the JOB or SBMJOB JOBD parameters to
Job queue QSYSSBSD QSYS
specify *JOBD (otherwise, the default of
QCMD38 will occur). You will need to con-
sider which program is used in the routing For example, if your controlling subsystem
step for your unique RTGDTA. description becomes inoperable, you could specify
QSYSSBSD at the IPL Options display and IPL
Significant changes in the OS/400 program have the system.
been made regarding the SBMJOB command.
See “Work Management” on page 4-15. Work Station
User message queue: A user message queue is Additional input fields: Additional input fields
now associated with the job and is transferred for are supported for all local devices. The limit of
any group job. See “Message Handling” on 128 on System/38 has been raised to 256. See
page 2-19. the Data Management book for reductions caused
by certain DDS keywords. The 5294 Display
Date format and separator character: New job Station or Work Station supports 254 fields. The
attributes, DATFMT and DATSEP, describe the 5251 M12 remote Work Station Controller con-
date format and the date separator character. tinues to support 126.
These default to the corresponding system values.
AS/400 System
RV2W323-0
Similarly, if the personal computer is attached to a IDU - CGU (Character Generator Utility)
System/38, the request to download using DDM is
5714-UT1: CGU is no longer a licensed
only valid to a System/38 (it is invalid to an
program, but is part of the Application Develop-
AS/400 system).
ment Tools on the AS/400 system (5763-PW1).
CRT commands: The CRTPF and CRTLF com- 18-by-18 ideographic tables are not supported.
mands can now be used to create files on a
remote system. The PFILE and JFILE DDS
keywords must describe a file which is located on IDU - DFU (Data File Utility) 5714-UT1:
the same system as the file being created. OS/400 DFU exists and is part of the Application
Development Tools.
Changes: Changes to the DDM file definition
may be required on the source system if the target The System/38 DFU product is only supported in
System/38 system is replaced with an AS/400 the System/38 environment. The System/38 envi-
system. See “Interchanging Using DDM” on ronment product is found in the DFU/38 User’s
page 5-2. Guide and Reference.
A significant change has been made in the There are no changes from the System/38 DFU to
OS/400 program for creating DDM files. See “Dis- the System/38 environment DFU.
tributed Data Management (DDM)” on page 4-6.
Library qualifying commands: To use a
System/38 DFU command from an OS/400
Dictionary 5714-DCT: The IBM-supplied command entry function, you must qualify the
System/38 language dictionaries cannot be command with the QSYS38 library. For example,
migrated to the AS/400 system. New dictionaries no option exists on the Programmer Menu to
are available. Information on dictionary com- access System/38 DFU. You must enter the fol-
mands is available in the CL Reference book. lowing type of command in OS/400 syntax.
If you enter the DFU commands on a System/38 Enhancements: The find and change functions
environment Command Entry display or in a have been changed to be more compatible with
CLP38 type program, you do not have to use a the Systems Application Architecture function.
library qualifier. The Member List Function and Services displays
have been enhanced. More line commands have
IDU - Query 5714-UT1: OS/400 Query been added including tab columns and copy
exists as a separate licensed program. repeat. Full language prompts and user prompts
are also available.
The System/38 Query product is only supported in
the System/38 environment. The System/38 envi- Intelligent Work Station Support
ronment product is found in the Query/38 User’s
Guide and Reference.
5714-PC1
Devices: The IBM Personal Computer/Display
No changes have been made from the System/38
Station Emulation Card (part 6851206) is not sup-
Query to the System/38 environment Query.
ported by Client Access/400. All other IBM 5250
Library qualifying commands: To use a adapter cards are supported.
System/38 Query command from an OS/400
The Client Access/400 DOS Ext Memory Setup
command entry function, you must qualify the
book contains information on other ways personal
command with the QSYS38 library. For example,
computers may be attached to the AS/400 system.
no option exists on the Programmer Menu to
access System/38 Query. You must enter the fol-
A PC device used with Client Access/400 cannot
lowing type of command in OS/400 syntax:
be used for those functions associated with an
QSYS38/DSNQRYAPP ..... IPL. See “Initial Program Load (IPL)” on
page 2-13.
To use a Query from an OS/400 program, you
must also qualify the command such as: Environment: The Client Access/400 utility oper-
QSYS38/QRYDTA ..... ates in the OS/400 program. You must convert to
OS/400 commands. For example, if you were
If you enter the Query commands on a System/38 using the CPYFRMVDSK command, you must
environment Command Entry display or in a convert to the CPYFRMPCD command. See
CLP38 type program, you do not have to use a Appendix A for the command changes.
library qualifier.
Functions: The function provided by the
EXITPGM parameter on BGNIWSSRV is replaced
IDU - SDA (Screen Design Aid)
by the new network attribute PCSACC.
5714-UT1: SDA is part of the Application
Development Tools on the AS/400 system The transfer function has minor changes to the
(5763-PW1). The System/38 environment com- API on the personal computer. For example, a
mands use a System/38-compatible form of the register pair is used on an open request to
new AS/400 support. address the system name that files are transferred
to or from. The Client Access/400 DOS, OS/2
Different source types are supported. See “Object Technical Reference contains more information.
Attributes and Source Types” on page 2-23.
The Client Access/400 DOS Ext Memory Setup Data: Because the data is machine dependent,
book describes the differences for the PC user. data captured on System/38 cannot be processed
by the OS/400 commands.
DOS requirements: The PC user must be using
DOS level 3.3 or a later release. The database formats that were used by the
PRPQ have been changed. Programs that use
Virtual disks: The Migration Aid converts virtual those formats must be reworked.
disks to folders on the AS/400 system.
Personal Services/38 5714-WP3: The
If you do not use the Migration Aid, you can Using OfficeVision/400 book describes the differ-
migrate the virtual disks as database files and use ences.
the CVTTOFLR command. This command is part
of the Client Access/400 Utility.
Reformat Utility 5714-CV2: The separate
There is no support for virtual diskettes. These licensed program on System/38 has been incorpo-
were created by the File Support Utility PRPQ rated into the OS/400 program.
which was used prior to the System/38 PC
Changes: The printer file name used for the
Support Utility. Virtual diskettes must be copied to
printed output is the name of the source member
PC diskettes or converted to System/38 virtual
instead of QSYSPRT.
disks using the PC Support/38 Utility before
migrating to the AS/400 system.
Card files are no longer supported.
Several of the command names and functions Two hundred fifty six bytes are allowed for the
have changed from the System/38 PRPQ. In key instead of 248, but performance is
general, the level of the function is similar, but degraded occurs if the length exceeds 248.
Text Management/38 on the AS/400 system The compilation printed output format has
allows users to create, store, retrieve, revise, changed somewhat for all languages. The mes-
check document spelling, provide synonyms and sages produced by the System/38 environment
automatic hyphenation, and print documents. The products are shown in OS/400 form. See “Sup-
user may access the AS/400 database interac- ported programs” on page 2-12 for more informa-
tively from the Text Management/38 program at tion about supported programs.
edit time or at print time to include database infor-
The System/38 licensed program numbers are
mation in a text document. In addition, forms may
used so you can relate to the function.
be created and filled in on the display or stored in
the system for later use.
BASIC 5714-BA1
Text Management/38 on the AS/400 system sup-
plies most of the editing functions supplied with Interactive sessions: The BASIC interactive
System/38 Personal Services/38, 5714-WP3. session differs from System/38 as follows:
Exceptions are listed below: Operational and color changes have been
Office functions, such as sending a document made on the Command Entry and Help dis-
or filing a document in the document library, plays.
are not supported.
Printer spooled file names have changed: Card files are not supported.
QBASESSION is used for output created by
the OFF LIST command. PASCAL RPQ 5799-CPK: PASCAL was a
QBASDMP is used for the file created by a PRPQ on System/38 and is a licensed program on
call to QBADTREE. the AS/400 system (5763-PS1). No support for
The source member is used by the COMPILE PASCAL exists in the System/38 environment. All
BASIC and CRTBASPGM commands. System/38 PASCAL program objects must be re-
QBAWRKSPC is used for the spooled file created from source on the AS/400 system
created by the COMPILE command if no (restore cannot be used).
name is specified.
QBALISTP is used for the spooled file created PL/I 5714-PLI: The AS/400 licensed program
by the LISTP command. is 5763-PL1.
DDM: New support allows DDM access to CICS Card devices are not supported.
direct files.
The name of the spooled file used for the compila-
Defaults: The format of the date used when the tion printed output is the source member specified
program is run is in the format described in the job on CRTPLIPGM.
value (set by the job description or CHGJOB)
rather than the system value. If the defaults are RPG 5714-RG1: The AS/400 licensed
taken for the job value, the system value deter- program is 5763-RG1. RPG supports both an
mines the format. Therefore, unless you have AS/400 system version and a System/38 environ-
made a specific change, you will not see any dif- ment version. Using the System/38 environment
ferences. support, you can update programs migrated from
System/38 or create new System/38 environment
COBOL 5714-CB1 programs.
New support: The AS/400 licensed program is The System/38 environment RPG is different from
5763-CB1. It supports two levels. the System/38 RPG in these ways:
The System/38 COBOL is ANSI 74 level. The The source member name specified on the
same level is available in the System/38 envi- create command is used for the spooled file
ronment. name. System/38 programs that read a
spooled version may need to be changed.
The AS/400 COBOL is ANSI 85 intermediate
level. Differences when converting from the The format of the date used when the
ANSI 74 level are described in Chapter 4. program is run is in the format described in
the job value (set by the job description or
The format of the date used when the program is CHGJOB) rather than the system value. If the
run is in the format described in the job value (set defaults are taken for the job value, the
by the job description or CHGJOB) rather than the system value determines the format. There-
system value. If the defaults are taken for the job fore, unless you have made a specific change,
value, the system value determines the format. you will not see any differences.
Therefore, unless you have made a specific
When IGNDECERR(*YES) is specified in the
change, you will not see any differences.
complier option of CRTRPGPGM and decimal
The source member name for the spooled file is data that is not valid is involved in an arith-
used. System/38 programs which read a spooled metic calculation, the result may be different
CL Program Type=CLP
DLTPGM LIBB/PGMA
PGMX Type=XXX
or XXX38
CHGVAR &CMD 'CALL PGMX.LIBY'
CALL QCAEXEC PARM(&CMD 500)
RV2W324-0
In this case, the OS/400 CL program uses a call CVTCLSRC does not convert qualified field names
to QCAEXEC even though it may be calling an such as those found in the OPNQRYF command
OS/400 program. Thus, if you have a complex for the parameters QRYSLT, GRPSLT and
System/38 command that is used in QCAEXEC, MAPFLD.
you can continue to use the same specifications in
most cases. Minor changes exist relative to the number of
parameters that can be entered positionally
Note: CVTCLSRC does not convert the names
(without keywords) for some OS/400 commands.
of the programs QCAEXEC and QCACHECK nor
This may prevent a few System/38 commands
the values in the parameters passed. You must
from being properly converted by CVTCLSRC.
manually convert these to QCMDEXC and
QCMDCHK. Commands: For the list of differences by
command, see Appendix A.
CVTCLSRC does not convert the CRT and CHG
device configuration commands. You must Commands using the System/38 environment
convert these manually to the new commands DFU and Query (for example, CHGDTA and
required on the AS/400 system.
Chapter 3. Converting from the System/38 Environment to the OS/400 Program 3-3
Assume you want to manually convert the DDS OS/400 program. See “Return Codes” on
source for a typical physical file. You would page 2-35 for the changes from the System/38 to
normally use the Programmer Menu or PDM and the System/38 environment.
specify the OS/400 type of PF instead of the
System/38 environment type of PF38. You could For qualified name use, see the discussion under
use the SEU scan function to scan the source “Physical files” on page 3-3.
looking for the use of a period as the separator for
qualified names. For example, assume you have Printer files: No changes have been made to
used the REF keyword as: the return codes used between the System/38
environment and the OS/400 program. See
REF(FILEX.LIBY)
“Return Codes” on page 2-35 for the changes
from the System/38 to the System/38 environ-
You need to change this to:
ment.
REF(LIBY/FILEX)
For qualified name use, see the discussion under
If you had used the unqualified form or the “Physical files” on page 3-3.
unqualified form with a format name, you would
not need to change. For example: Communication files: The System/38 forms of
REF(FILEX) BSCF, CMNF, and MXDF are not supported in the
REF(FILEX FORMAT1) OS/400 program. The files must be converted to
the new ICF file. For the most part, the DDS con-
would not need to be changed. version effort is the same as it is for a database
file.
Instead of using SEU to scan individual source
members, you could have a scan program look for Return codes: Return code differences may
periods in all of the DDS source. A command is cause differences for the programs that are using
supplied in the QUSRTOOL library for general the file. In the System/38 environment, the return
source scanning. See the TAA tool SCNSRC codes are mapped to the definition used on
command. System/38. In the OS/400 program, new return
Note: Scanning for a period finds the qualified codes exist and changes to the old codes have
names that must be changed, but may also find been made.
decimal points (for example, in edit words and
comments) that should not be changed. See “Return Codes” on page 4-13 and “Data
Description Specifications (DDS)” on page 4-4.
As on System/38, whenever you prepare to
replace a physical file you must remove the
dependencies (for example, logical files and jour- Languages
naling) and copy the data in the existing file.
In general, most of the programs convert to the
Logical files: For qualified name use, see the OS/400 program without the need to make any
discussion under “Physical files” on page 3-3. For source code changes. For most programs, the
ACCPTH keyword change, see the discussion on program need only be re-created using the
“Data Description Specifications (DDS)” on OS/400 CRT command. An automated conver-
page 4-4. sion of high-level language source programs is not
supported. See “Mass Changes of Source Types”
Display files: The use of the DSPSIZ keyword on page 3-5 for a discussion of mass changes of
with types *DS1 and *DS2 is not supported. source types.
These are for the System/38 console (16-by-64)
and (12-by-80) display that is not supported on the COBOL programs may require some changes to
AS/400 system. convert from the ANSI 74 version to the ANSI 85
intermediate level.
The RTGXXX keywords are not supported.
To convert fully to an OS/400 program, look for
No changes have been made to the return codes calls to QCAEXEC and QCACHECK, and convert
used between the System/38 environment and the
Chapter 3. Converting from the System/38 Environment to the OS/400 Program 3-5
3-6 AS/400 System/38 Environment Programming
Chapter 4. Changes Needed to Convert to the OS/400
Program
This chapter describes the changes needed to Display and work commands: Most DSP com-
convert from the System/38 environment to the mands that allow changes have been changed to
OS/400 environment support; you should have the verb WRK. Other WRK commands exist to
already migrated to the System/38 environment. If allow a set of functions against a particular object
you are converting directly to the OS/400 program, type (for example, WRKJOBD).
also see Chapter 1 and Chapter 2.
The DSP and WRK commands that support the
No hardware changes must be made between the OUTPUT parameter have changed to use a value
System/38 environment and the OS/400 program. *PRINT instead of *LIST.
Not all new programming functions are described. Outfile support: Commands which support an
In some cases, new OS/400 functions are men- outfile have changed from OUTPUT(*NONE) to
tioned to assist in your understanding. Specific OUTPUT(*OUTFILE).
command changes are described in Appendix A.
These affect many of the OS/400 functions dis- Authority: The commands using the keyword
cussed in the following pages. PUBAUT have been changed. The new keyword
is AUT and the values have changed as follows:
For some functions (for example, recovery and
System/38
Client Access/400), no special System/38 environ-
Environment AS/400 System
ment support exists. This means the commands
*NORMAL *CHANGE
and functions are only in QSYS. If this is the
*OPER *USE
case, the section in this chapter is described as
*NONE *EXCLUDE
the OS/400 program only.
The same values also exist on the
GRT/RVKOBJAUT commands.
General
Calls: Any calls to QCAEXEC, QCACHECK, or
Several changes have been made to commands QCL should be changed to QCMDEXC,
where different verbs are used, keyword names QCMDCHK, and QCMD. The syntax of the
have changed, or keyword values have changed. parameters being entered to QCMDEXC and
Appendix A lists the changes by command. Most QCMDCHK must adhere to the OS/400 program.
of these changes are not described in this The calls can be made from CL or any high-level
chapter. However, the highlights of the changes language programs. See Chapter 3 for a dis-
are as follows: cussion of when it is not necessary to change.
See also “Data Description Specifications (DDS)” The division operator ‘/’, must be preceded by a
on page 4-4. blank if the first operator is not a constant.
Valid 1/2
Auxiliary Storage Pools (ASP): Available &A /2
in the OS/400 program only. All specifications are &A / 2
made using DST. &A /&B
Not valid &A/2 (No blank between
BSC: The BSC38 file type is not supported. the variable and the /)
You must convert to the ICF file type. See “Data
Description Specifications (DDS)” on page 4-4. OPNQRYF always requires a preceding blank
before the division or remainder operator.
RJE and 3270 device emulation continue to use a
BSC file. Data areas: Commands which work with data
areas (DCLDTAARA, SNDDTAARA, and
RCVDTAARA) are not supported in the OS/400
Card: Card devices and card files are not sup- program. You must convert to the CHGDTAARA
ported on the AS/400 system.
and RTVDTAARA commands.
Chart Format: No changes from the Convert command: The CVTCLSRC command
System/38 environment. converts most of the typical kinds of changes such
as those described in Chapter 3 for commands,
Checksums: Available in the OS/400 keywords, and values. Appendix A lists the differ-
program only. All specifications are made using ences by command.
DST.
Programs: The CL source must adhere to the
OS/400 syntax for qualified names and comments.
CL
When a replacement variable is used to substitute
Syntax: The syntax of a valid comment has
into a keyword of type *NAME, the content of the
changed to avoid conflicts with the new slash sep-
variable is not folded to uppercase. For example,
arator for qualified names. The beginning of a
if you did the following:
comment is specified by a /*. It must be preceded
or followed by a blank. Two exceptions are made: CHGVAR &A 'abcde'
CALL PGM(&A)
/\\... is always treated as a comment.
The routing keywords are not allowed. See Replacing a System/38 with an AS/400
Appendix A for a list of these keywords. system: A change may be required for the
systems communicating with a System/38 if the
Data Queue: Other than the command System/38 is replaced with an AS/400 system.
changes described in Appendix A, no changes This is discussed in Chapter 5.
from the System/38 environment are required.
Remote location name: The DDM commands
support a new parameter RMTLOCNAME. See
Debug: Other than the command changes “Remote Location Name (RMTLOCNAME)” on
described in Appendix A, no changes are required page 2-29.
from the System/38 environment. “Debug” on
page 2-7 describes the change of authority for New parameters are required for the local location
what is required to debug a program. The default name and the remote network ID.
for the program create commands is *CHANGE
which allows debugging. To prevent debugging Refer to the Distributed Data Management book
specify *USE. and the Communications Configuration book for a
description of this support.
Dedicated Service Tools (DST): No
changes from the System/38 environment. When a DDM file is created in the System/38
environment or migrated from System/38, the
RMTLOCNAME function defaults to *DEVD. In
Device Configuration: Available in the
OS/400 program only.
Edit Descriptions: Other than the command See “Data Description Specifications (DDS)” on
changes described in Appendix A, no changes page 4-4.
are required from the System/38 environment.
IBM-Supplied Programs: The System/38
Emulation (3270): The 3270 Pass-Through environment programs are replaced by the
function is standard in the OS/400 program for the OS/400 programs as shown in Figure 4-1. The
STREML3270 command to a remotely attached System/38 environment programs (for example,
3270 Display Station. QCAEXEC) exist in QSYS (not in QSYS38) and
may still be used in the OS/400 program if
Changes in commands and parameters exist. System/38 syntax is needed.
See Appendix A.
System/38 AS/400
Additional keyboard types are supported. Environment System
QCL QCMD Command entry
Error Handling: See “Return Codes” on QCAEXEC QCMDEXC Run a command
page 4-13. from a string
QCACHECK QCMDCHK Validity check a
Exchange ID: Available in the OS/400 command
program only. See “Exchange ID” on page 5-1.
Files: See “Database” on page 4-3 and “Data Intersystem Communications Function
Description Specifications (DDS)” on page 4-4. (ICF): New commands include:
Add ICF program device entry ADDICFDEVE
Finance: Other than the command changes Change ICF program device
described in Appendix A, no changes are needed entry CHGICFDEVE
from the System/38 environment. Change ICF file CHGICFF
Create ICF file CRTICFF
Graphical Data Display Manager Delete override ICF device
(GDDM): No changes from the System/38 entry DLTOVRDEVE
environment. Override ICF device entry OVRICFDEVE
Override ICF file OVRICFF
Remove ICF device entry RMVICFDEVE
Graphics Symbol Set: Other than the
command changes described in Appendix A, no The ICF Programming book contains specific
changes are required from the System/38 environ- information.
ment.
Job Descriptions
Establishes interactive
job environment.
Establishes batch
job environment.
RV2W325-0
User profile job description: The system The default for CRT commands that do not
support is now designed to encourage the use of specify a library is the user profile value.
a job description assigned to a user profile. The The current library affects the library list. The
JOBD parameter in a user profile has the default sequence of the library list is:
value of QDFTJOBD in QGPL. The default value
– System portion (for example, as set by the
for the ADDWSE JOBD entry is *USRPRF which
QSYSLIBL system value)
allows a job description to be assigned when
– Product library #1
signing on.
– Product library #2
The default for the SBMJOB JOBD parameter has – Current library
changed to use the JOBD assigned to the user – User portion (for example, as set by the
profile. You may want to specify unique job CHGLIBL command)
descriptions for certain user profiles and specify Because many user CL statements specify an
unique requirements for such things as library list unqualified object name, the library list is often
and priorities. You may also want to tailor the used to find objects. Specifying a current
QDFTJOBD job description in QGPL. As on library can cause a change in the library in
System/38, the CHGJOB command can be used which an object is found.
during a job to change the values.
You can specify the same library name in both
the current library and in either the system or
Job Queue: A new job priority of 0 can be user portion. The typical approach for con-
used to move a job to the top of the job queue. verting to the current library would be to
specify the library, which is normally first in
Job Streams: To convert a job stream, the the user portion. Because no error occurs if
System/38 environment command JOB must be the current library is also in the user library
changed to BCHJOB. The default for the JOBD portion, you do not have to immediately
parameter will cause all of the other commands in change the user portion to take advantage of
the job stream to be syntax checked for the the current library approach.
OS/400 environment.
Product library: This allows commands to desig-
The ENDJOB command from the System/38 envi- nate a library that appears on the library list for
ronment has been changed to ENDBCHJOB. It is the duration of the command. (See Chapter 2 for
important that ENDJOB be changed in any job more information.) This is of particular value in
streams which are converted because the that it avoids the need to have libraries like QRPG
ENDJOB command is the valid new spelling for or QCBL on either the interactive library list (for
the System/38 environment CNLJOB command. use by SEU syntax checking) or in the batch
library list (for use by high-level languages compi-
LU-1: LU-1 is not supported using ICF. If you Mixed File: The MXD file type is not sup-
need ICF support, you should consider converting ported. Communications functions must be con-
to the SNA Upline Facility (SNUF) or APPC. verted to the new ICF file type. Display functions
must be converted to a display file type. See also
RJE and 3270 Device Emulation continue to use “Data Description Specifications (DDS)” on
LU-1 support. page 4-4.
Qualified names: Because a period is a valid Pass-Through: For 3270 Pass-Through, see
character in a name in the OS/400 program, a “Emulation (3270)” on page 4-7.
typical error is to fail to convert a System/38 quali-
For 5250 Pass-Through, the OS/400 command
fied name. For example, assume you have the
STRPASTHR replaces BGNPASTHR.
following System/38 statement in CL source:
STRPASTHR supports APPN and the OS/400
CALL PGMA.LIB1 method of indicating device used in the pass-
If you re-create the program as an OS/400 type, through by specifying a RMTLOCNAME. (See
the program probably fails with an object not “Remote Location Name (RMTLOCNAME)” on
found message. page 2-29.) If you use multiple systems in the
pass-through and have not converted all systems
to APPN, STRPASTHR also supports the
Network Attributes: No changes from the
System/38 interface of specifying the devices,
System/38 environment, but the new network attri-
rather than the RMTLOCNAME.
butes can only be used by the AS/400 commands.
See “Network Attributes” on page 2-22.
Client Access/400: See “Intelligent Work
Station Support 5714-PC1” on page 2-64.
Object Attributes and Source Types:
See “Object Attributes and Source Types” on
page 2-23. To convert to the OS/400 types, you
Performance Information: No changes
from the System/38 environment.
must re-create the objects that are System/38
types.
Printers
Object Distribution: Other than the Files: Printer files have changed as follows:
command changes described in Appendix A, no
changes are required from the System/38 environ- The FORMSIZE parameter is now named the
ment. PAGESIZE parameter.
The SCHEDULE parameter default changes
from *JOBEND to *FILEEND.
The OS/400 CRTxxxPGM commands support a When using the Programmer Menu, a message
new option for REPLACE. *YES is the default. If continues to be displayed if a program exists
REPLACE(*YES) is requested and the program when the create option is requested. Pressing the
does not exist, the command works as it does on F11 function key results in a conditional replace-
System/38. If REPLACE(*YES) is requested and ment of the program. The program is not deleted
the program exists: immediately the way it was on System/38. If the
The USRPRF parameter value is copied from create is successful, the existing program is
the existing program (the parameter value on deleted and replaced by the new program.
the CRT command is ignored and the existing
program value is used). If the existing When creating a System/38 program, the create
program specifies the adopt function of commands have a default value of
USRPRF(*OWNER), it is correctly replaced. REPLACE(*NO). Pressing F11 on the Pro-
grammer Menu deletes the existing program and
The program is compiled into an internal work then creates the new program. (If the create is
area. unsuccessful, the original program has been
OVRPRTF file name: On System/38, if you Work Management: When specifying work
specified: management functions within the System/38 envi-
ronment, you must consider the following
OVRPRTF QPRINT TOFILE(XYZ)
changes:
the name of the spooled file on DSPOUTQ was
XYZ. On the AS/400 system, the program name SBMJOB CMD parameter: SBMJOB allows
will be used. If you want to change the spooled either the new CMD parameter or the RQSDTA
file name, you should use the new SPLFNAME parameter. The CMD parameter should be used
parameter. when you are submitting a command. A syntax
check of the command is made before it is sub-
Subsystem Description: Other than the mitted. The prompter is available with F4 for sub-
command changes described in Appendix A, no mitting the command. Expressions are allowed
changes are required from the System/38 environ- within parameter values, but cannot be used to
ment. build the command name or parameter names.
System Request: No changes from the SUBMIT JOB defaults: SBMJOB defaults
System/38 environment. change as follows:
JOBD(*USRPRF) instead of QBATCH. The
System Service Tools (SST): Available in *USRPRF entry means to use the JOBD
the OS/400 program only. parameter value specified in the user profile
associated with the submitted job.
System Values: The new system values can INLLIBL(*CURRENT) instead of *JOBD. This
only be used by OS/400 commands. Additional
*CURRENT entry means to use the current
information is provided in “System Values” on
library list instead of the library list in the job
page 2-57.
description. In general this is a preferred
default, but some specific applications may
Appendix A provides information about specific
have to be changed rather than using the
command changes.
default.
Table: Other than the command changes OUTQ(*CURRENT) instead of *JOBD. This
described in Appendix A, no changes are required means to use the current output queue
from the System/38 environment. assigned to the job instead of the value in the
job description. This may cause any spooled
output to be routed to a different output
Tape: Other than the command changes
queue.
described in Appendix A, no changes are required
from the System/38 environment. RTGDTA(QCMDB) instead of *JOBD. The
System/38 environment command uses
Test: See “Debug” on page 4-6. QCMD38 as the default. This change is
Job streams: See “Job Streams” on page 4-9. Multiple commands (CRTDFUDEF and
DSNDFUAPP). The CRTDFUDEF command
was used in some applications after asking
Work Station: The new help information
the end user for a valid file name. This
function is described in “Data Description Specifi-
allowed application control of security over the
cations (DDS)” on page 4-4.
files to be operated on by DFU.
Retrieving source.
COBOL: The System/38 COBOL level is ANSI
Multiple commands (CRTQRYDEF and 74. The AS/400 version is ANSI 85. The fol-
DSNQRYAPP). The CRTQRYDEF command lowing differences exist:
was used in some applications after asking
An index name is a compiler generated
the end user for a valid file name. This
storage area that is 4 bytes in length.
allowed application control of security over the
files to be used by Query. A temporary result field is generated by the
compiler when only one identifier is specified
Tables.
in the following cases:
Record sampling.
– In the ADD statement FORMAT 1, pre-
Remainder function available for created result ceding the keyword TO
fields. – In the SUBTRACT statement, FORMAT 1,
*OMIT on record selection. preceding the keyword FROM
– In the MULTIPLY and DIVIDE statements,
Support of multiple format files. FORMAT 1
DDM Support (performing a Query on a file on Card-specific language features are not sup-
another system). ported.
Source Entry Utility (SEU): Enhancements for The keyword ALPHABET must precede
SEU include: alphabet-name within the alphabet-name
clause of the SPECIAL-NAMES paragraph.
More line commands including:
– Exclude and show The relative key data item specified in the
– Shift with truncation RELATIVE KEY phrase must not contain the
– Format line and prompt list PICTURE symbol ‘P’.
– COLS and TABS The ALPHABETIC class test is true for upper-
– Copy and repeat case letters, lowercase letters, and the space
Improved prompts, including user-defined character.
prompts
Improved service displays, line command pro- When no next statement exists to be pro-
cessing, and member lists cessed in a called program, an implicit EXIT
PROGRAM statement is run.
Note: The syntax of the RMTFILE parameter When a DDM file is displayed (DSPDDMF
differs from most qualified names in that no library command) the file name is shown within apostro-
default of *LIBL is supported. The default for phes such as:
RMTFILE is no library qualifier. If you took the
default, you do not need to make a change. RMTFILE 'ABC.DEF'
RMTFILE: If you need to specify a qualified This is the way the information is stored within the
name, you may have to use the *NONSTD entry system. If migration of a DDM object occurs to an
on the RMTFILE parameter: AS/400 system, no change is needed to communi-
cate as a source system to a System/38.
DDM FILE(X)
RMTFILE('ABC.DEF')
Program
Read FILE(X) System/38 Target System
ABC
DDM FILE(X)
RMTFILE('ABC.DEF')
Program
Read FILE(X)
RV2W326-0
Because the target system is a System/38, both on the AS/400 source system to communicate to
source systems use the same specification for the System/38 and need a qualified name, you
RMTFILE. If the source System/38 is replaced by would specify:
an AS/400 system, no changes are needed for the
DDM file. If, however, you create a new DDM file RMTFILE(\NONSTD 'OBJ.LIB')
Program
Read FILE(X)
Replaced by
ABC
RV2W327-0
The target System/38 is replaced by an AS/400 If a System/38 sends a pre-generic NMVT alert to
system. The RMTFILE parameter must now be an AS/400 system, it is accepted and can be dis-
changed on the source system to agree with the played.
OS/400 syntax. On the source System/38, you
would specify: On System/38, alerts were logged to a journal
(QALERT). This has been changed to a database
RMTFILE(\NONSTD 'DEF/ABC') file on the AS/400 system. The journal is not
Note: The syntax for an unqualified name is the migrated. A new display command exists to
same regardless of System/38 and System/38 display the alerts.
source target combinations. It would be specified
The ADD/CHGMSGD commands have parameter
as:
changes, as described in Appendix A.
RMTFILE(FILEX)
SAVOBJ...
PGM
SAVF SAVF
Object
Distribution
Object Distribution
RSTOBJ... RSTOBJ...
SAVF SAVF
PGM PGM
RV2W328-0
If you are migrating to the AS/400 system with the Once you decide what source and data files need
intent of maintaining applications for System/38, to be sent to maintain the application, you want
you may need to make some changes to the some packaging method of placing the data into a
applications to get them to successfully migrate. If convenient container to ship to a System/38
you have changed the source during migration, (assuming you are not using a DDM source file).
you may need to work with multiple versions of
the same source. For example, you could write a user command
that allows multiple source members and data files
The CVTCLSRC command can be used to to be copied to a single member. The single
convert System/38 CL source into OS/400 source. member could then be sent to the System/38
However, the inverse is not supported (if you have using object distribution, DDM, a communications
OS/400 CL source, you would need to do a file, or media (diskette or tape).
QGPL library: The QGPL library from System/38 User profiles: The IBM user profiles (such as
should not be restored directly to the AS/400 QSECOFR) are not migrated nor are any of the
system because it will overlay the IBM-supplied specific authorizations. The new AS/400 user pro-
objects you need to operate the AS/400 system. files are used as a base and you must make mod-
The Migration Aid saves QGPL and restores it to ifications to them. Therefore, if you have made
QGPL38. (See the discussion on “Handling changes to the IBM user profiles, you should
QGPL” on page 7-5.) If you are not using the make a printed output of these so that you can
Migration Aid, you should consider a similar change the corresponding user profiles on the
approach. AS/400 system.
Some objects (for example, journal and journal Use the DSPUSRPRF command on System/38
receivers) cannot be restored to a different library. with the OUTPUT(*LIST) function for the following
Therefore, if you have journals and journal user profiles:
receivers in QGPL, you should save them and
restore them directly to QGPL on the AS/400 QPGMR
system. QSYSOPR
QSECOFR
Other Q libraries: The Migration Aid does not QUSER
migrate libraries which begin with Q except for the
QGPL library. If you created libraries beginning The QPSR and QCE profiles are replaced on the
with Q, you must migrate them using save and AS/400 system by the QSRV and QSRVBAS pro-
restore. files. Different functions are performed by the new
user profiles so you must reevaluate your use of
User libraries: If you are migrating all objects in these user profiles as opposed to copying the
a library, you should first review the contents and QCE and QPSR information.
delete any objects that you will not need on the
AS/400 system. Edit descriptions: Edit description objects in
QSYS are not migrated by the Migration Aid. The
The Migration Aid saves your objects and restores same defaults that were used on System/38 are
them on the AS/400 system. Because media is used on the AS/400 system, but you may have
involved, you may want to be sure you have ade- modified some of the values. If you have modified
quate backup of the objects to be migrated. This any edit descriptions, you should use the
is of particular importance if you are transferring DSPEDTD command for each of the modified
the same storage units from System/38 to the descriptions.
The return codes used on the AS/400 system for 0001 0001 ------- x
display and print files are identical between the 0300 0300 ------- x
System/38 environment and the OS/400 program.
0300 0300 CPF5037 x
Once you are successfully operating in the
System/38 environment, no changes are needed 0309 0309 CPF4741 x
in the return code processing to convert to the 0310 0310 CPF4742 x
OS/400 program. 0310 0310 CPF4743 x
Note: The 02 major return code is new and indi- 0400 0412 CPF4737 x
cates that your job is being requested to be ended
0400 0412 CPF5044 x
by a command such as ENDJOB or ENDSBS.
The 02 return code does not cause an escape 0401 8319 ------- x
message to the high-level language program. 0402 80EB CPF4062 x
0402 831D CPF4912 x
SEQNBR \... ... 1 ... ... 2 ... ... 3 ... ... 4 ... ... 5 ... ... 6 ... ... 7
1.ðð /\ PRTDEVCFGC - Prints device configuration - CPP for PRTDEVCFG \/
2.ðð PGM
3.ðð DCLF QADSPOBJ
4.ðð CHKOBJ OBJ(DEVCFG) OBJTYPE(\FILE) MBR(DEVCFG)
5.ðð CRTPF DEVCFGP.QTEMP RCDLEN(8ð)
6.ðð DSPOBJD OBJ(\ALL.QSYS) OBJTYPE(\LIND) OUTPUT(\NONE) +
7.ðð OUTFILE(DSPOBJDP.QTEMP)
8.ðð DSPOBJD OBJ(\ALL.QSYS) OBJTYPE(\CUD) OUTPUT(\NONE) +
9.ðð OUTFILE(DSPOBJDP2.QTEMP)
1ð.ðð CPYF FROMFILE(DSPOBJDP2.QTEMP) +
11.ðð TOFILE(DSPOBJDP.QTEMP) MBROPT(\ADD)
12.ðð DSPOBJD OBJ(\ALL.QSYS) OBJTYPE(\DEVD) OUTPUT(\NONE) +
13.ðð OUTFILE(DSPOBJDP2.QTEMP)
14.ðð CPYF FROMFILE(DSPOBJDP2.QTEMP) +
15.ðð TOFILE(DSPOBJDP.QTEMP) MBROPT(\ADD)
16.ðð OVRDBF QADSPOBJ TOFILE(DSPOBJDP.QTEMP)
17.ðð OVRPRTF QPDCLINE HOLD(\YES)
18.ðð OVRPRTF QPDCCTLU HOLD(\YES)
19.ðð OVRPRTF QPDCDEVD HOLD(\YES)
2ð.ðð READ: RCVF /\ Read an object \/
21.ðð MONMSG MSGID(CPFð864) EXEC(GOTO ENDPGM) /\ EOF \/
22.ðð IF (&ODOBTP \EQ '\LIND') DO /\ Line \/
23.ðð DSPLIND LIND(&ODOBNM) OUTPUT(\LIST)
24.ðð CPYSPLF FILE(QPDCLINE) TOFILE(DEVCFGP.QTEMP) +
25.ðð SPLNBR(\LAST) MBROPT(\ADD)
26.ðð CNLSPLF FILE(QPDCLINE)
27.ðð ENDDO /\ Line \/
28.ðð IF (&ODOBTP \EQ '\CUD ') DO /\ Control unit \/
29.ðð DSPCUD CUD(&ODOBNM) OUTPUT(\LIST)
3ð.ðð CPYSPLF FILE(QPDCCTLU) TOFILE(DEVCFGP.QTEMP) +
31.ðð SPLNBR(\LAST) MBROPT(\ADD)
32.ðð CNLSPLF FILE(QPDCCTLU)
33.ðð ENDDO /\ Control unit \/
34.ðð IF (&ODOBTP \EQ '\DEVD') DO /\ Device \/
35.ðð DSPDEVD DEVD(&ODOBNM) OUTPUT(\LIST)
36.ðð CPYSPLF FILE(QPDCDEVD) TOFILE(DEVCFGP.QTEMP) +
37.ðð SPLNBR(\LAST) MBROPT(\ADD)
38.ðð CNLSPLF FILE(QPDCDEVD)
39.ðð ENDDO /\ Device \/
4ð.ðð GOTO READ
41.ðð ENDPGM:
42.ðð CPYF FROMFILE(DEVCFGP) TOFILE(DEVCFG) +
43.ðð MBROPT(\ADD) FMTOPT(\CVTSRC)
44.ðð ENDPGM
1.ðð /\ Moves objects from one library to another - CPP for MOVLIBOBJC \/
2.ðð PGM PARM(&FROMLIB &TOLIB &OBJTYPE &GENNAME +
3.ðð &EXCLUDE)
4.ðð DCLF QADSPOBJ
5.ðð DCL &FROMLIB \CHAR LEN(1ð)
6.ðð DCL &TOLIB \CHAR LEN(1ð)
7.ðð DCL &OBJTYPE \CHAR LEN(8)
8.ðð DCL &GENNAME \CHAR LEN(1ð)
9.ðð DCL &EXCLUDE \CHAR LEN(1ð)
1ð.ðð DCL &GOODCNT \DEC LEN(5 ð)
11.ðð DCL &BADCNT \DEC LEN(5 ð)
12.ðð DCL &BYPCNT \DEC LEN(5 ð)
13.ðð DCL &GOODCNTA \CHAR LEN(5)
14.ðð DCL &BADCNTA \CHAR LEN(5)
15.ðð DCL &BYPCNTA \CHAR LEN(5)
16.ðð DCL &GENCNT \DEC LEN(3 ð) VALUE(1ð)
17.ðð DCL &GENCOMP \CHAR LEN(1ð)
18.ðð DCL &GENCOMP2 \CHAR LEN(1ð)
19.ðð DCL &TYPE \CHAR LEN(1)
2ð.ðð DCL &MSGID \CHAR LEN(7)
21.ðð DCL &MSGDTA \CHAR LEN(1ðð)
22.ðð DCL &MSGF \CHAR LEN(1ð)
23.ðð DCL &MSGFLIB \CHAR LEN(1ð)
24.ðð DCL &ERRORSW \LGL
25.ðð MONMSG MSGID(CPFðððð) EXEC(GOTO ERROR)
26.ðð RTVJOBA TYPE(&TYPE)
27.ðð IF (&TYPE \EQ 'ð') DO /\ Batch job \/
28.ðð /\ Ensure job log if in batch \/
29.ðð CHGJOB LOG(4 ð \MSG)
3ð.ðð ENDDO /\ Batch job \/
31.ðð IF (&GENNAME \NE '\NONE') DO /\ Generic name \/
32.ðð CHGVAR &GENCOMP &GENNAME
33.ðð GENLOOP: IF (%SST(&GENNAME &GENCNT 1) \EQ ' ') DO /\ Chr \/
34.ðð CHGVAR &GENCNT (&GENCNT - 1)
35.ðð GOTO GENLOOP
36.ðð ENDDO /\ Char exists \/
37.ðð ENDDO /\ Generic name \/
38.ðð DSPOBJD OBJ(\ALL.&FROMLIB) OBJTYPE(\ALL) +
39.ðð OUTPUT(\NONE) OUTFILE(DSPOBJP.QTEMP)
4ð.ðð OVRDBF QADSPOBJ TOFILE(DSPOBJP.QTEMP)
41.ðð RMVMSG CLEAR(\ALL)
42.ðð READ: RCVF /\ Read a record from DSPOBJD out file \/
43.ðð MONMSG MSGID(CPFð864) EXEC(GOTO EOF)
44.ðð IF (&OBJTYPE \NE '\ALL') DO /\ Not all types \/
45.ðð IF (&ODOBTP \NE &OBJTYPE) DO /\ Wrong type \/
46.ðð CHGVAR &BYPCNT (&BYPCNT + 1)
47.ðð GOTO READ
48.ðð ENDDO /\ Wrong type \/
49.ðð ENDDO /\ Not all types \/
5ð.ðð IF (&GENNAME \NE '\NONE') DO /\ Generic name \/
51.ðð CHGVAR &GENCOMP2 %SST(&ODOBNM 1 &GENCNT) /\ Gen len \/
52.ðð IF (&GENCOMP \NE &GENCOMP2) DO /\ Not gen val \/
53.ðð CHGVAR &BYPCNT (&BYPCNT + 1)
54.ðð GOTO READ
SEQNBR \... ... 1 ... ... 2 ... ... 3 ... ... 4 ... ... 5 ... ... 6 ... ... 7
1.ðð /\PARMS PGM(CHKLIBOWNC) \/
2.ðð /\ \/
3.ðð /\ Check Library owner checks all objects in a library to see \/
4.ðð /\ if they are owned by the profile named. If not, a message \/
5.ðð /\ is sent to the job log. The object types that are only in \/
6.ðð /\ QSYS (eg \LIND) are bypassed. If the library is QSYS, \/
7.ðð /\ message queue objects are bypassed if the name is the same \/
8.ðð /\ as a device description. The special value \IBM excludes \/
9.ðð /\ QSYS and other names beginning with Q except for QSECOFR, \/
1ð.ðð /\ QPGMR, QCE, QPSR, and QSYSOPR. \/
11.ðð /\ \/
12.ðð /\ The CPP is CHKLIBOWNC \/
13.ðð /\ \/
14.ðð CMD PROMPT('Check Library Owner')
15.ðð PARM KWD(LIB) TYPE(\NAME) LEN(1ð) MIN(1) +
16.ðð EXPR(\YES) +
17.ðð PROMPT('Library to check:')
18.ðð PARM KWD(EXCLUDE) TYPE(\NAME) LEN(1ð) MIN(1) +
19.ðð EXPR(\YES) SPCVAL(\IBM) +
2ð.ðð PROMPT('Exclude owner name or \IBM:')
2. Create the CHKLIBOWN command and
specify:
PGM(CHKLIBOWNC)
3. Enter the source and create the CL program
CHKLIBOWNC.
advanced printer function. A function of the AS/400 application program interface (API). A functional
Application Development Tools licensed program that interface supplied by the operating system or a sepa-
allows a user to design symbols, logos, special charac- rately orderable licensed program that allows an appli-
ters, large characters, and forms tailored to a business cation program written in a high-level language to use
or data processing application, and supports printing of specific data or functions of the operating system or the
any design on the 5224 or 5225 dot matrix printer. licensed program.
all authority. An object authority that allows the user attribute. (1) A characteristic or property of one or
to perform all operations on the object except those more objects. (2) (SQL) In database design, a charac-
limited to the owner or controlled by authorization list teristic of an entity; for example, the telephone number
management authority. The user can control the of an employee is one of that employee’s attributes.
object’s existence, specify the security for the object, (3) (BGU) The characteristics that make up the chart
and change the object. Contrast with exclude authority. format.
all object authority. A special authority that allows attribute character. A character associated with a
users to use all system resources without having spe- field in a display file record format that defines how the
cific authority to the resources. See also save system field is displayed.
authority, job control authority, security administrator
automatically started job entry. A work entry in a
authority, service authority, and spool control authority.
subsystem description that specifies a job to be auto-
American National Standard Code for Information matically started each time the subsystem is started.
Interchange (ASCII). The code developed by Amer-
auxiliary storage. All addressable disk storage other
ican National Standards Institute for information
than main storage.
exchange among data processing systems, data com-
munications systems, and associated equipment. The
auxiliary storage pool (ASP). A grouping of disk
units. See also system ASP and user ASP.
checksum set. Units of auxiliary storage defined in current library. The library that is specified to be the
groups to provide a way for the system to recover data first user library searched for objects requested by a
if a disk failure occurs when checksum protection is in user. The name for the current library can be specified
effect. on the Sign-On display or in a user profile. When you
specify an object name (such as the name of a file or
CL. See control language (CL). program) on a command, but do not specify a library
name, the system searches the libraries in the system
class attributes. The values in the Change Job part of the library list, then searches the current library
(CHGJOB) command that control the processing of before searching the user part of the library list. The
routing steps in a job. These values include the run pri- current library is also the library that the system uses
ority, time slice, delete, and default wait time-out param- when you create a new object, if you do not specify a
eters. library name.
command definition. An object that contains the defi- data area. A storage area used to communicate data
nition of a command (including the command name, such as CL variable values between the programs
parameter descriptions, and validity checking informa- within a job and between jobs. The system-recognized
tion) and identifies the program that performs the func- identifier for the data area is *DTAARA.
tion requested by the command. The
system-recognized identifier for the object type is *CMD. data description specifications (DDS). A description
of the user’s database or device files that is entered into
command file. A remote job input stream that can the system in a fixed form. The description is then
contain host system commands and job control lan- used to create files.
guage (JCL), data, and RJE control statements
(READFILE or EOF). Contrast with data file. data file. (1) A collection of related data records
organized in a specific order. (2) A file created by the
commit. (1) To make all changes permanent that specification of FILETYPE(*DATA) on the create com-
were made to one or more database files since the last mands. Contrast with source file. (3) (BASIC) The
commit or rollback operation, and make the changed table containing the values from the DATA statements
records available to other users. (2) (SQL) The of a program. (4) (RJE) A remote job input stream that
process that allows data changed by one application or can contain host system commands and job control lan-
user to be used by other applications or users. When a guage as well as data. Contrast with command file.
commit operation occurs, the locks are released to
allow other applications to use the changed data. data queue. An object that is used to communicate
and store data used by several programs in a job or
device configuration. The physical placement of graphical data display manager (GDDM). A function
display stations, printers, and so forth; and the config- of the operating system that processes both text and
uration descriptions that describe the physical configura- graphics for output on a display, printer, or plotter.
tion to the system and describe how the configuration
will be used by the system. See also line configuration graphics symbol set. An object that can contain
and controller configuration. either lines or images. The system-recognized identifier
for the object type is *GSS.
device file. A file that contains a description of how
data is to be presented to a program from a device or group job. One of up to sixteen interactive jobs that
how data is to be presented to the device from the are associated in a group with the same work station
program. Devices can be display stations, printers, a device and user.
diskette unit, tape units, or a remote system.
independent work station. A work station that is pro-
display station pass-through. A communications grammable and operates independently of a host
function that allows a user to sign on to one system system, but can communicate with a host system and
(either an AS/400 system, System/38, or System/36) use selected system services. A Personal System/2* is
from another system (either an AS/400 system, an example of an independent work station.
System/38, or System/36) and use that system’s pro-
grams and data. Sometimes called pass-through. initial program load (IPL). The process that loads the
system programs from the system auxiliary storage,
distributed data management (DDM). A function of checks the system hardware, and prepares the system
the operating system that allows an application program for user operations.
or user on one system to use database files stored on
remote systems. The systems must be connected by a IPL. See initial program load (IPL).
communications network, and the remote systems must
also be using DDM. job accounting. A system function that collects infor-
mation about a job’s use of system resources and
document library. The system library named QDOC records that information in a journal.
that contains all documents and folders.
job control authority. A special authority that allows a
DST. See dedicated service tools (DST). user to: change, delete, display, hold, and release all
files on output queues; hold, release, and clear job
end node. A node in an APPN network that can be a queues and output queues; start writers to output
source or target node, but does not provide any routing queues; hold, release, change, and end other users’
or session services to any other node. jobs; change the class attributes of a job; end subsys-
tems; and start (IPL) the system. See also all object
exclude authority. An object authority that prevents authority, save system authority, security administrator
the user from using the object or its contents. Contrast authority, service authority, and spool control authority.
with all authority.
job description. A system object that defines how a
folder. A directory for documents. A folder is used to job is to be processed. The object name is *JOBD.
group related documents and to find documents by
name. The system-recognized identifier for the object job name. The name of the job as identified to the
type is *FLR. Compare with library. system. For an interactive job, the job is assigned the
name of the work station at which the job was started;
formatted diskette. A diskette on which the control for a batch job, the name is specified in the command
information is written but which may or may not contain used to submit the job. Contrast with qualified job
any data. name.
Glossary G-3
job queue. A list of batch jobs waiting to be started or network. A collection of data processing products con-
processed by the system. The system-recognized iden- nected by communications lines for exchanging informa-
tifier for the object type is *JOBQ. tion between stations.
journal. A system object used to record entries in a network node. A node that can define the paths or
journal receiver when a change is made to the data- routes, control route selection, and handle directory ser-
base files associated with the journal. The object type vices for APPN.
is *JRN. See also journal receiver.
node. (1) One of the systems or devices in a network.
journal receiver. A system object that contains journal (2) A location in a communications network that pro-
entries recorded when changes are made to the data in vides host processing services. (3) (X.25) A point
database files or the access paths associated with the where packets are received, stored, and forwarded to
database files. The object type is *JRNRCV. See also another location (or data terminal equipment) according
journal. to a routing method defined for the network.
(4) (APPN) See network node and end node.
K. 1024 bytes of storage.
normal queue. A list of distribution items for a next
keyed sequence access path. An access path to a system (queue for each next system) with a low priority
database file that is arranged according to the contents for sending. There is one normal queue for each next
of key fields contained in the individual records. See system. When send times and queue depths are satis-
also arrival sequence access path and access path. fied for both the priority and normal queues at the same
time, the priority queue is sent first. Contrast with pri-
library. (1) An object on disk that serves as a direc- ority queue.
tory to other objects. A library groups related objects,
and allows the user to find objects by name. Compare object. (1) A named storage space that consists of a
with folder. (2) The set of publications for a system. set of characteristics that describe itself and, in some
cases, data. An object is anything that exists in and
licensed program. An IBM-written program that per- occupies space in storage and on which operations can
forms functions related to processing user data. be performed. Some examples of objects are pro-
grams, files, libraries, and folders. (2) (SQL) Anything
line configuration. The process of creating configura- that can be created or manipulated with SQL state-
tion descriptions for the lines that make up a data pro- ments, such as databases, tables, views, or indexes.
cessing system. See also controller configuration and
device configuration. object authority. A specific authority that controls
what a system user can do with an entire object. For
local work station. A work station that is connected example, object authority includes deleting, moving, or
directly to the system without a need for data trans- renaming an object. There are three types of object
mission functions. Contrast with remote work station. authorities: object operational, object management, and
object existence.
logical unit (LU). One of three types of network
addressable units that serve as a port through which a object distribution. A function that allows a user to
user accesses the communications network. See also send source and data files, save files, job streams,
physical unit, and system services control point (SSCP). spooled files, and messages to another user, either
locally or on a SNADS network.
LU. See logical unit (LU).
object existence authority. An object authority that
mode. The session limits and common characteristics
allows the user to delete the object, free storage of the
of the sessions associated with advanced-program-to-
object, save and restore the object, transfer ownership
program communications (APPC) devices managed as
of the object, and create an object that was named by
a unit with a remote location.
an authority holder.
mode description. A system object created for
object management authority. An object authority
advanced-program-to-program communications (APPC)
that allows the user to specify the authority for the
devices that describe the session limits and the charac-
object, move or rename the object, and add members
teristics of the session, such as the maximum number
to database files.
of sessions allowed, maximum number of conversations
allowed, the pacing value for incoming and outgoing object name. The name of an object. Contrast with
request/response units, and other controlling information qualified name.
for the session.
output queue. An object that contains a list of spooled
files to be written to an output device, such as a printer.
physical unit. One of three types of network address- RJE. See remote job entry (RJE).
able units. A physical unit exists in each node of an
SNA network to manage and monitor the resources RPG. Report Program Generator. A programming lan-
(such as attached links and adjacent link stations) of a guage designed for writing application programs for
node, as requested by an system services control point business data processing requirements. The applica-
logical unit (SSCP-LU) session. tion programs range from report writing and inquiry pro-
grams to applications such as payroll, order entry, and
presentation graphics routines (PGR). A group of production planning.
routines within the operating system that allows busi-
ness charts to be defined and displayed procedurally save system authority. A special authority that allows
through function routines. Contrast with graphical data the user to save and restore all objects on the system
display manager (GDDM). and free storage of all objects on the system. See also
all object authority, job control authority, security admin-
priority queue. A queue that contains distribution istrator authority, service authority, and spool control
queue entries for distributions with a service level of authority.
fast, status, or data high. When send times and queue
depths are satisfied for both the priority and normal SDLC. See synchronous data link control (SDLC).
queues, the priority queue is serviced first. Contrast
with normal queue. security administrator authority. A special authority
that allows a user to add users to the system distribu-
problem analysis. The process of finding the cause of tion directory, to create and change user profiles, to add
a problem. For example, a program error, device error, and remove access codes, and to perform office tasks,
or user error. such as delete documents, folders, and document lists,
and change distribution lists for other users. See also
problem log. A record of problems and of the status all object authority, save system authority, job control
of the analysis of those problems. authority, service authority, and spool control authority.
program message queue. An object used to hold service authority. A special authority that allows the
messages that are sent between program calls of a user to perform the alter function in the service func-
routing step. The program message queue is part of tions. See also all object authority, save system
the job message queue. authority, job control authority, security administrator
authority, and spool control authority.
program temporary fix (PTF). A temporary solution
to, or bypass of, a defect in a current release of a SEU. See source entry utility (SEU).
licensed program.
SNA. See Systems Network Architecture (SNA).
PTF. See program temporary fix (PTF).
SNA distribution services (SNADS). An IBM asyn-
QGPL. See general-purpose library. chronous distribution service that defines a set of rules
to receive, route, and send electronic mail in a network
qualified job name. A job name and its associated of systems.
user name and a system-assigned job number. Con-
trast with job name. SNADS. See SNA distribution services (SNADS).
qualified name. The name of the library containing the source entry utility (SEU). A function of the AS/400
object and the name of the object. Contrast with object Application Development Tools licensed program that is
name. used to create and change source members.
remote job entry (RJE). A function of the AS/400 source file. (1) A file of programming code that is not
Communications Utilities licensed program that allows a compiled into machine language. Contrast with data
user to submit a job from a display station on the file. (2) A file created by the specification of
AS/400 system to a System/370-type host system. FILETYPE(*SRC) on the Create command. A source
file can contain source statements for such items as
remote work station. A work station that is connected high-level language programs and data description
to the system by data communications. Contrast with specifications.
local work station.
Glossary G-5
source system. The system that issues a request to system time is changed to the local time when the
establish communications with another system. (DDM) system is started, the current system time is the local
The system on which an application program issues a time of day.
request to use a remote file. Contrast with target
system. System/36 environment. A function of the operating
system that processes most of the System/36 operator
spool. The system function of putting jobs into a control language (OCL) statements and procedure
storage area to wait to be printed or processed. statements to run System/36 application programs and
allows the user to process the control language (CL)
spool control authority. A special authority that commands. Contrast with System/38 environment.
allows the user to perform spooling functions, such as
display, delete, hold, and release spooled files on the System/38 environment. A function of the operating
output queue for himself and other users. This authority system that processes most of the System/38 control
also allows the user to change the spooled file attri- language (CL) statements and programs to run
butes, such as the printer used to print the file. See System/38 application programs. Contrast with
also all object authority, save system authority, job System/36 environment.
control authority, security administrator authority, and
service authority. Systems Network Architecture (SNA). The
description of the logical structure, formats, protocols,
Structured Query Language/400 (SQL/400). An IBM and operational sequences that are used for transmit-
licensed program that is the SAA* version of SQL. ting information units through networks, as well as con-
trolling the configuration and operation of networks.
SSCP. See system services control point (SSCP).
Systems Network Architecture distribution
synchronous data link control (SDLC). (1) A form of services. See SNA distribution services (SNADS).
communications line control that uses commands to
control the transfer of data over a communications line. target system. In a distributed data management
(2) A communications discipline conforming to subsets (DDM) network, the system that receives a request from
of the Advanced Data Communication Control Proce- an application program on another system to use one or
dures (ADCCP) of the American National Standards more files located on the target system. Contrast with
Institute (ANSI) and High-Level Data Link Control source system.
(HDLC) of the International Standards Organization
(ISO), for transferring synchronous, code-transparent, temporary library. A library that is automatically
serial-by-bit information over a communications line. created for each job to contain temporary objects that
Transmission exchanges may be duplex or half-duplex are created by the system for that job. The objects in
over switched or nonswitched lines. The configuration the temporary library are deleted when the job ends.
of the connection may be point-to-point, multipoint, or Named QTEMP.
loop. Compare with binary synchronous communica-
tions (BSC). uninterruptible power supply. A source of power
from a battery installed between the commercial power
system ASP. The auxiliary storage pool where system and the system that keeps the system running, if a
programs and data reside. It is the storage pool used if commercial power failure occurs, until it can complete
a storage pool is not defined by the user. See also an orderly end to system processing.
auxiliary storage pool and user ASP.
user ASP. One or more auxiliary storage pools used
system configuration list. A list of devices that are to isolate journals, journal receivers, and save files from
provided with the system. the other system objects stored in the system ASP.
See also auxiliary storage pool and system ASP.
system distribution directory. A list of user IDs and
identifying information, such as network addresses, user profile. An object with a unique name that con-
used to send distributions. tains the user’s password, the list of special authorities
assigned to a user, and the objects the user owns.
system services control point (SSCP). A focal point
within an SNA network for managing the other systems vector symbol set (VSS). A set of characters each of
and devices, coordinating network operator requests which is treated as a small picture and is described by
and problem analysis requests, and providing directory a sequence of lines and arcs. Characters in a vector
routing and other session services for network users. symbol set can be drawn to scale, rotated, and posi-
tioned precisely. Contrast with image symbol set (ISS);
system time. The elapsed time from the point where see also graphics symbol set.
the system was started to the current time. If the
Glossary G-7
G-8 AS/400 System/38 Environment Programming
Bibliography
The books below are listed with their full title and base information on how to use the word processing
order number. functions of OfficeVision/400.
Network and Systems Management, SC41-3409. Backup and Recovery – Advanced, SC41-3305.
Provides information for configuring AS/400 systems Provides the system programmer with information
to use the remote management support (distributed about the different media available to save and
host command facility), the change management protect system data, as well as a description of how
support (distributed systems node executive), and to record changes made to database files and how
the problem management support (alerts). that information can be used for system recovery
and activity report information.
Distributed Data Management, SC41-3307. Pro-
vides the application programmer or system pro- Programming Reference Summary, SX41-3720.
grammer with information about remote file Provides the system operator, system programmer,
processing. or system administrator with quick reference infor-
mation about the structure of the AS/400 com-
SNA Distribution Services, SC41-3410. Provides
mands.
the system operator or system administrator with
information about administering data communica- CL Programming, SC41-3721. Provides the appli-
tions applications on an AS/400 system. cation programmer or system programmer with a
wide-ranging discussion of AS/400 programming
ICF Programming, SC41-3442. Provides informa-
topics.
tion to write application programs that use AS/400
communications and the OS/400-ICF file. CL Reference, SC41-3722. Provides the applica-
tion programmer or system programmer with a
Communications Configuration, SC41-3401. Sup-
description of the AS/400 control language (CL) and
plies communication configuration examples.
its commands.
Communications Management, SC41-3406. Sup-
Cryptographic Support/400, SC41-3342. Provides
plies management information relating to commu-
the system operator or system programmer with a
nications, specific work management,
description of the data security capabilities of the
communications error handling, and performance.
AS/400 Cryptographic Support.
Local Device Configuration, SC41-3121. Provides
DB2/400 Database Programming, SC41-3701. Pro-
the system operator or system administrator with
vides the application programmer or system pro-
information on how to do an initial configuration and
grammer with a detailed discussion of the AS/400
how to change that configuration. It also contains
database structure, including information on how to
conceptual information about device configuration.
create, describe, and manipulate database files on
RPG/400 Reference, SC09-1817. Provides the the system.
application programmer with the information needed
DDS Reference, SC41-3712. Gives descriptions of
to write programs for the AS/400 system using the
the entries and keywords needed to describe data-
RPG/400 programming language.
base files (both logical and physical) and certain
System/38 Migration Planning, SC41-3153. Pro- device files (for displays and printers) external to
vides the application programmer, system adminis- the user’s programs on the AS/400 DDS Coding
trator, or data processing manager with information Form.
to help them migrate their products and applications
Data Management, SC41-3710. Provides the appli-
with the System/38 Migration Aid.
cation programmer or system programmer with
Using OfficeVision/400, SH21-0697. Provides the information about managing key aspects of the
office user with detailed information on how to use system.
OfficeVision/400. It contains procedural as well as
Performance Tools/400, SC41-3340. Provides the
reference information and can be used with the
system programmer with an overview of AS/400
Office online information.
performance tools and explains how the tools can
Getting Started with OfficeVision/400, SH21-0732. be used to help manage system performance.
Provides office users with information to help them
Work Management, SC41-3306. Provides the
learn how to use the word processing functions of
system programmer with information about how to
OfficeVision/400.
create an initial work management environment and
Using OfficeVision/400 Word Processing, how to change it.
SH21-0701. Provides the office user with detailed
Index X-3
differences end node G-3
hardware 1-3 ENTCBLDBG command A-26
operational 1-4 ERRMSGID keyword B-1
programming 1-4 error handling 2-12
disk devices 1-3 EVOKE keyword B-1
diskette exchange ID
default 2-10 coexistence 5-1
migration aid 1-2 prefix 2-12
spooling 2-53 exclude authority G-3
display commands
DSPLIB command 2-11
new commands 2-11 F
prevent user changes 2-11 FIFO (first in, first out) 4-4
display files 2-11, 3-4 file changes 3-3
display formatting finance 2-12
function keys 2-11 folder G-3
help 2-11 FORMAT keyword B-1
option numbers 2-11 formatted diskette G-3
qualified name 2-11 FROMFILE parameter
display station pass-through G-3 as default for TORCDLEN parameter A-9
distributed data management (DDM) distributed data management (DDM) file specified
coexistence 5-2 as 2-4, A-8
communications 4-6 function keys 2-11
definition G-3
distributed data management (DDM) 2-11
file name 5-3
G
GDDM (graphical data display manager)
licensed program 2-62
definition G-3
migration 5-3
general-purpose library
qualified name 5-4
definition G-3
RMTLOCNAME parameter defaults 4-6
graphic character set
document library G-3
definition G-3
document password 2-39
graphical data display manager (GDDM)
DSPF keyword 2-35
definition G-3
DSPFD command
graphics symbol set
mapping function 2-6
definition G-3
outfile support 2-5
group job
source 2-5
definition G-3
DSPOBJAUT command 2-42, 2-43
group profile authority 2-41
DSPSIZ keyword B-1
DST (dedicated service tools)
auxiliary storage pool (ASP) 2-2
checksums 4-2
H
hardware differences 1-3
definition G-3 help
initial program load (IPL) 2-7 data description specifications (DDS)
OS/400 operating system 4-6 functions 2-12, 4-5
service function 2-45 display formats 4-6
IBM displays 2-11
E QHLPSYS library 2-12
text 4-7
edit descriptions 2-11
emulation (3270)
3274 control unit 2-11
attention key 2-11
I
IBM-supplied programs
KBDTYP entries 2-12 AS/400 system 4-7
pass-through 4-7 not supported 2-13
objects changes 7-5
Index X-5
keywords (continued) logs (continued)
REF B-1 OS/400 4-10
REFFLD B-1 problem 2-27
SFLMSGID B-1 LU (logical unit) G-4
TRNRND B-1 LU-1 (logical unit-1)
TRNTBL B-1 return codes 2-35
support 2-18
using intersystem communications function
L (ICF) 4-10
languages
BASIC 4-17
COBOL 4-17 M
conversion 3-4 menu
new functions 4-17 DSPMNU command 2-18
PASCAL 4-18 GO command 2-18
PL/I 4-18 message 2-21
RPG 4-18 OS/400 4-10
syntax 6-5 QCALLMENU 2-19
library QOPRMENU 2-19
command 1-7 QUSER profile 2-19
CURLIB parameter 2-16 security 2-19
current 4-9 message handling
current, new functions 2-44 break mode 2-20
definition G-4 changes 4-10
DSPLIB command 2-18 DSPMSG command 2-20
DSPOBJD command 2-18 IDs 2-19
library list 2-18 message help 2-21
PRDLIB parameter 2-16 message queue 2-19
product OS/400 4-10
installation 2-16 PCS 2-22
new functions 2-44 problem analysis function 2-21
product library 2-18 problem determination (PDP) codes 2-21
QGPL 2-16, 7-2 QSYSOPR message queue 2-20
QSYS 2-16 severity setting 2-20
QSYS38 1-7 SNDPGMMSG command 2-20
QSYSLIBL 2-58 support on the AS/400 system 6-4
QUSER38 1-7 user profile defaults 2-20
restoration 1-3 message queue 2-39
search 1-7, 2-16 migration
shipped 2-16 aid 1-2
licensed programs authorities information 1-3
definition G-4 device configuration 1-3
migration 1-2, 7-2 media compatibility 7-1
syntax 1-6 multiple systems 1-15
line configuration G-4 release requirements 7-1
local names 2-31 system objects 7-5
local work station G-4 system values 7-4
logical files 3-4 mixed file 2-22
logical unit (LU) G-4 mode G-4
logical unit-1 (LU-1) mode description G-4
return codes 2-35 move library objects command (MOVLIBOBJ) D-3
support 2-18 MSGCON keyword B-1
using intersystem communications function multiple systems, migrating 1-15
(ICF) 4-10 MXDF38 file type 4-5
logs
distribution 2-18
Index X-7
Operating System/400 (continued) presentation graphics routines (PGR) G-5
user profile 4-15 PRINT keyword B-1
work management 4-15 printers
work station 4-16 file attributes 2-52
X.25 parameter 4-16 files 2-26, 3-4
operational changes 1-4 image 2-26
operational differences 1-1 output queue 2-50
OPNQRYF command syntax 4-4 QGPL file 7-7
OS/400 new commands specify with user profile 2-49
System/38 commands A-2—A-38 supported 2-26
OS/400-ICF priority queue G-5
create file 2-31 private authority 2-41
logical unit-1 (LU-1) 4-10 problem analysis G-5
source types 2-13 problem analysis function 2-26, 4-12
out files 2-25 problem determination 2-26
output queue problem log
definition G-4 definition G-5
override profiles 2-44, 7-2
command (OVRPRTF) 4-11 program
definition G-4 create option 1-13, 4-12
functions 6-5
message queue G-5
P print device configuration D-1
PASCAL 2-67, 4-18 QSYS38/CRTCLPGM command, create option 1-14
pass-through references 2-27
3270 4-11 REPLACE(*YES) parameter 4-12
5250 4-11 syntax rules 1-5
advanced peer-to-peer networking (APPN) 4-11 template 2-35
coexistence 5-2 Migration Aid 1-2
definition G-5 restoring program objects 1-3
mode 2-26 program temporary fix (PTF)
RMTLOCNAME parameter 4-11 definition G-5
sign-on 6-3 licensed internal code 2-36
testing on System/38 6-4 new commands 2-28
password Programmer Menu
encryption 2-37 alternatives 1-14
security levels 2-37 attributes, designate 1-13
sign-on 1-4 data file utility (DFU) 2-28
PC support default 2-27
AS/400 system 4-11 query 2-28
compatible products 1-4 programming changes 4-13
utility 5-5 programming development manager (PDM) 1-6,
work station 4-8 1-13
PCS (personal computer support) 2-13 programming differences 1-1
PDM (programming development manager 1-6 prompter keywords 2-5
PDM (programming development manager) 1-13 DSPFD command 2-5
performance information 2-26 PTF (program temporary fix)
performance tools 2-65 definition G-5
personal computer support (PCS) 2-13 PUBAUT keyword 2-40
personal services 2-65 public authorities 2-40, 2-41
PFILE keyword B-1
PGR (presentation graphics routines) G-5
physical files 3-3 Q
physical unit G-5 QBASE subsystem 4-16
PL/I 2-67, 4-18 QCAEXEC program
OS/400 program 3-2, 3-5
Index X-9
SFLMSGID keyword B-1
S sign-off 2-47
sample programs D-1 sign-on
save and restore display 2-48
changes 4-14 optional values 2-46
data interchange 2-36 password protection 1-4
Release 5 2-35 routing entry 2-48
SAVSYS command 2-36 routing program 2-46
space utilization 2-36 two level 2-46
tape devices 2-35 user profiles 2-46
save files 2-35 SNA (Systems Network Architecture) G-6
save system authority G-5 SNA (Systems Network Architecture) environment,
SAVOBJ command 6-3 exchange ID 5-1
SAVSYS command 2-36 SNA distribution services (SNADS)
SBMJOB command 3-3, 4-15 coexistence 5-2
SDLC (synchronous data link control) configuration 7-8
definition G-6 database file formats 2-48
security definition G-5
*EXCLUDE authority 2-43 distribution log 2-48
authorization list 2-45 migration 7-3
commands 2-42 objects 2-48
data authorities 2-44 SNADS (SNA distribution services)
default passwords 2-44 coexistence 5-2
keywords 2-37 configuration 7-8
levels 2-36 database file formats 2-48
object authority 2-43 definition G-5
OS/400 program 4-14 distribution log 2-48
parameter 2-42 migration 7-3
password 2-36 objects 2-48
profile, user 2-37 sort utility 2-65
profiles 2-44 source
program changes 1-5 attribute 1-13, 2-48
public authorization 2-44 files 2-48
sign-on attempts 7-4 multiple versions 6-3
sign-on display 2-47 saved and restored 1-12
single level sign-on 2-37 syntax 1-13
security administrator authority G-5 source entry utility (SEU)
SECURITY keyword B-1 definition G-5
service authority G-5 functions 1-13
service functions product, support in command definition 2-3
dedicated service tools (DST) 2-45 prompting 1-7
Non-supported System/38 2-46 scan 3-4
system service tools (SST) 2-45 source type 2-2, 2-23
session description 2-46 source, recreated 3-2
SEU (source entry utility) System/38 commands in System/38
definition G-5 environment 6-3
functions 1-13 type 1-13
product, support in command definition 2-3 source file G-5
prompting 1-7 source file member
scan 3-4 DSPFD TYPE(*MBRLIST) statement 1-12
source type 2-2, 2-23 type 1-12
source, recreated 3-2 source system G-6
System/38 commands in System/38 SPCAUT keyword 2-38
environment 6-3 special authorities 2-38
type 1-13 spelling aid dictionary 2-49
Index X-11
user profile (continued)
QPGMR 2-55
sign-on 2-46
V
vary
cascading 2-10
DSPDEVCFG command 2-10
VRYCFG command 2-10
vector symbol set (VSS) G-6
VSS (vector symbol set) G-6
W
work management 2-61, 4-15
work station 2-61, G-7
work station user profile G-7
WRKJOB command 4-16
X
X.25 parameter
definition G-7
Very
Very Dissatis-
Satisfied Dissatis-
Satisfied fied
fied
Overall satisfaction
How satisfied are you that the information in this manual is:
Accurate
Complete
Easy to find
Easy to understand
Well organized
Applicable to your tasks
THANK YOU!
Note that IBM may use or distribute the responses to this form without obligation.
Name Address
Company or Organization
Phone No.
Reader Comments—We'd Like to Hear from You! Cut or Fold
Along Line
SC41-3735-00 IBM
NO POSTAGE
NECESSARY
IF MAILED IN THE
UNITED STATES
Cut or Fold
SC41-3735-00 Along Line
IBM
Printed in U.S.A.
SC41-3735-ðð