Introductory Reference to the IBM AS/400

Introduction to the AS/400

The IBM Application System/400 popularly known as AS/400 is a family of mid-range business computing systems, that supersedes IBM's highly successful System/3X family. The AS/400 is available in three different types the 9402, 9404, and the 9406. Currently, here at Minnesota State University, Mankato, the Computer Services is supporting a dual processor IBM AS/400 9406 model D80, that contains 192 Megabytes of primary memory and 7.1 Gigabytes of mirrored secondary storage. The AS/400 systems exclusively use the IBM Operating System/400 (OS/400). It is a multi user operating system that works with the Licensed Internal Code (LIC) instructions to implement the functions that are basic to the AS/400 architecture. OS/400 can perform tasks under direct control of both the user and an application program. The AS/400 system differs from the traditional systems in several ways. They offer more compatibility across the product line since only one operating system and architecture is used consistently across the entire family. The system offers very high performance compared to the earlier System/3X computers. This is achieved by a combination of faster processors, extended storage and improved fixed disk systems. The software architecture is different from that of more traditional systems. Implementing functions such as security, database and communications in microcode, and providing a one-piece operating system resulted in improved efficiency, consistency and simplicity.

Now, to take a look into the highlights of the system
AS/400's standard functions plus the many communications options and supporting software provide users with flexibility for various communications environments. The AS/400 application programming interface provides some new capabilities not found in earlier operating systems. The basic architecture of AS/400 systems makes for a very productive program development environment. The built-in database and single-level storage provide high-level structures and consistency. This along with the programming tools available for AS/400 can increase programmer productivity. The programmer has the flexibility to choose one of the following programming languages for their application programs:
y

BASIC

y y y y y y y y

C CL command language COBOL X3.23-1974 & X3.23-1985 FORTRAN Pascal PL/I REXX RPG II & III

The AS/400 marks a new beginning in the business computing world. This new generation of systems with advanced technology and advanced applications serve as a growth platform for the customer to expand in application, size and network complexity.

Signing On to the AS/400
PC Support/400
y y y y y y

Reboot the PC by pressing <Ctrl><Alt><Delete>at the same time. Press this key combination twice. Select the option that indicates PC Support and/or AS/400. Answer "Enter common user ID:" with your username Answer "Enter password for common user ID:" with your password. If there is a beep or a message press <Enter>to bypass the message. At this point you should have the following screen:
Sign On System . . . . . : MKTAS400 Subsystem . . . . : QINTER Display . . . . . : PCnnnnS1 User . . . . . . . Password . . . . . Program/procedure. Menu . . . . . . . Current library. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . __________ __________ __________ __________

y y y y

Type your username in the "User" blank. Press the <Tab>key. Type your password. The password will not be displayed. Press the <Enter>key.

If for some reason you can not longer type, press the <Reset>key. On the Microterms or PCVT this would be the <Esc>key then R. On PC Support/400 this would be the left <Ctrl>key. If this is the first time you signed on continue with the Changing your password section of this manual.

Changing Your Password
The first time you log on the AS/400 you will be forced to change your password before continuing.
y y

y y

y y

y y y

Press <Enter>to change your password. At the "Current Password" field, type `xx' followed by the last six digits of your social security number (ie. xx999999) NOTE: nothing you type on this screen will be displayed to ensure that no one views your password as you type it. Press <Tab>or <Field Exit>. For the "New Password" field, type the password you would like to use when you sign on to the computer. It must not exceed 10 characters, it must begin with a alphabetic character and the remaining characters may be any combination of alphabetic, numeric characters. Note: Try not to make it too difficult, you will need to know it to sign on the AS/400 again. Press <Tab>or <Field Exit> At the "New Password (to verify)" field, type in your new password for a second time to make sure you have entered it correctly. If you have entered it incorrectly you will get an error message and your initial password will still be `xx' followed by the last four digits of your social security number. Press <Enter> Upon completion, the following message will be displayed: Password changed successfully Read the following screens, pressing <Enter>to exit each one, until you reach the AS/400 Main Menu screen.

Later on when you want to change your password, type CHGPWD on the command line and go through the same steps.

Signing Off of the AS/400
y y

Press <F3>until you see a command prompt, ===>. At the command prompt type SIGNOFF.

Getting Online Help
AS/400 provides extensive On-line help, and a simple method of accessing the help information. On-line help information is provided for all system displays. The type of help provided depends on the location of the cursor. For all displays, the following information is provided:
y y y y y

What the display is used for How to use the display How to use the command line if there is one How to use the entry fields and parameter line if any What function keys are active and what they do.

If the <Help>key is pressed when the cursor is in an area where specific on-line help information is available, the help text for that area of the display is shown. If the <Help>key is pressed when the cursor is in an area for which no specific information is available, information for the entire display is shown. Then you can page forward or backward through the information for the entire display and for each area. If the <Help>key is pressed while a help display is shown, a description of the types of help that are available on the displays, and how to get each type of help is shown. The <Help>key on the PC Support stations is labeled <Scroll Lock>. On the VT -100 or PCVT stations the key sequence for < Help>is <ESC>h. If <F11>=Search index is shown at the bottom of the display, you can press <F11>to see the Search Help Index display. On that display, you can request information about any topic you specify.

STRSCHIDX
The start search index command is used when you would like to get help on a specific or general topic. To use the index search facility type STRSCHIDX and hit <Return>. Type your subject topic, or topics on the bottom subject line. When you hit <Return>again your topic will be searched for and the topics found will be displayed on the screen above the topic line. To display the information you are looking for type 5 in the option field by the topic line press <Return>. To get out of the index search facility press <F3>until exited.

CD-ROM Manuals
If you are attached to the AS/400 using PC Support/400 you have the ability to look at a hypertext version of a subset of the complete AS/400 manual set. To start the hypertext book reader type the command MANUALS at any AS/400 prompt. This guide is laid out like a library. The library contains bookshelves. These bookshelves contain books. For example our library contains a bookshelf name Languages. We select the bookshelf by using the arrow keys to place the highlighted cursor over it and press <Enter>. On this bookshelf there are several books on languages. One of the books is titled "COBOL/400 Reference". Once again we use the arrows and cursor to select the item. Now that we have the book it opens up a "Table of Contents" for the book. By using this search and select procedure you can look through the book like a book you'd check out at the library.

More Help
There are three ways to get help on the READ/DOS book reader (AS/400 command MANUALS):
y y y

Start the book reader and select the bookshelf entitled BookManager READ/DOS. Press <F1>anywhere you're in question about your current options. Press <Alt>h (or <F10>h) and select the appropriate help selection for your current problem.

Using the Prompt Facility
AS/400 provides interactive command prompting for any command supplied with the system or created by the user. On the command entry screen notice the option F4 = Prompt at the bottom of the screen. You can type the command name only, and press <F4>to see the prompt display for the command. Usually, a command may require many parameters before it can be executed. The prompt displays provide a convenient method of supplying that parameter information. For example, type SNDMSG on any command line and press <F4>. The following prompt display is shown:
Send Message (SNDMSG) Type choices, press Enter. Message text . . . . . . . . . . ________________________________________ __________________________________________________________________________ __________________________________________________________________________ _______________________ ___________________________________________________ __________________________________ To user profile . . . . . . . . . __________ Name , *SYSOPR, *ALLACT...

F3=Exit F4=Prompt F5=Refresh F10=Additional parameters F12=cancel F13=How to use this display F24=More keys

To execute the command, supply the required information for Message text and user profile and press <Enter>. Most of the parameters used on commands have default values that are used if no other value is specified. You may change the default values if you desire to do so. If <F4>= Prompt is shown on the prompt display, you can press < F4>to request a list of predefined values (such as *SYSOPR and *ALLACT in the above display) that are permitted in the field where the cursor is currently positioned. In relation to the SNDMSG command, you can use DSPMSG at any time to display messages in your message queue.

Organization of OS/400 Objects
Objects
On the AS/400, everything that can be stored or retrieved is stored in an object. Examples of objects are libraries, files, executable programs, queues, and more. Objects share some common attributes such as name, type, size, description, date created, and owner. The concept of an object allows the system to perform certain standard operations, such as authorization management, on all objects types. The object types that we will be primarily concerned with in this manual are:
y

*LIB Libraries

device data. that contains a group of objects. a data physical file is a data file.y y y *FILE Files *PGM Compiled programs *OUTQ Output queues Libraries Every object is contained in a library. In this manual. It is similar to the "root" or top-level directory on Unix. a library cannot "contain" other libraries (with the exception of QSYS. A source physical file has the attribute "PFSRC". This description is then compiled to produce a *FILE object with attribute PF-DTA. However. physical files 2. An interesting implication of the non-hierarchical nature of libraries is that two users cannot have libraries with the same name. QSYS . There are two types of database files: 1. A physical file contains actual data stored on the system. This record format is defined using Data Description Specifications (DDS is a language that is used to describe database files to the system). A library is an object. we are primarily interested in two kinds of physical files: 1. data physical files 2. 6 for the sequence number field. The CRTSRCPF command creates a physical file with attributes appropriate for source physical files. In this manual. A data physical file normally has a record format. we are primarily concerned with database files. System supplied libraries NOTE:all IBM-supplied library names begin with the letter "Q" or "#" 3. unlike these systems. and 6 for the date field. In conventional terms. It is usually created using the "Create Source Physical File" (CRTSRCPF) command (more information about this command will be given later). A source physical file (*FILE PF-SRC) contains source statements. logical files. 2. Files A file is an object. for example the source statements of a Pascal or COBOL program. A data physical file (*FILE PF-DTA) contains data that cannot be compiled. Refer to the section on the SEU editor for the meanings of these fields. For example. that contains data in the form of a database. There are basically three general categories of libraries: 1. or a group of related records that are handled as a unit. A source physical file is actually a special type of data physical file. of type *LIB. which "contains" all libraries on the system). for example an employee master file. the default record length is 92 (80 for the source data field. such as an input file to a program. It has a fixed-length record format. and VAX/VMS. the system master library. MS-DOS. source physical files. of type *FILE. User-created libraries.) .the library that contains all other libraries.

you may want to keep all your RPG source programs in a PF-SRC file called. and when PDM (Program Development Manager) is given the instruction to compile the file. you may choose to include source members of different types belonging to the same application in the same PF-SRC file. These members are not objects themselves but subsets of an object. for example.) the AS/400 editor. . For example. each member contains source statements for a program or DDS source. will format the program as a COBOL program. You may also use the standard IBM-supplied names such as "QRPGSRC".. . 2=Edit 7=Rename Opt __ __ __ __ __ Member NAMEEMP CLPRO G RPGPROG EMPMAST SCRNMBR 3=Copy 4=Delete 8=Display description Type LF CLP RPG PF DSPF Text Sample Sample Sample Sample Sample 5=Display 9=Save 6=Print 13=Change text . An example of a PF SRC file and its members is shown below (we will explain how to get to this screen in the section on PDM): Work with Members Using PDM File . In a data physical file (PF-DTA). Library . SRCFILE___ YOURLIB___ Position to . Members have an attribute associated with them. you will probably want to store source programs of the same type in a separate source physical file. in the above example. . which in the case of PF-SRC members. .The data records in a data physical file can be grouped into members. a member has been specified as having an attribute of CBL (for COBOL program. . This implies that all members of an object share the same basic characteristics with the other members in the object such as ownership and security. as in the above example. . the member's name is the . the member(s) contains data for use by programs. This attribute is specified when creating the member. . . and allows compilation to be totally automatic. and "QCLSRC" for the various PF-SRC files. SEU. for example. a PF-DTA file will only have one member (by default. and it is contained in the library YOURLIB. In a PF-SRC file. "QDDSSRC". it "knows" that it should invoke the COBOL compiler. for example. . . "RPGSRC" and DDS source in a PFSRC file called. Although. source members of different types are stored in the same source physical file. determines how the various systems programs (such as the editor and compilers) on the AS/400 treat the member. Normally. . However. DDS Source for a Logical File Control Language Source Program RPG Source Program DDS Source for a Physical File DDS Source for a Display File Parameters or command ===> ___________________________________________________________ F3=Exit F9=Retrieve F4=Prompt F10=Command entry F5=Refresh F23=More options F6=Create F24=More keys The name of the source physical file is SRCFILE. __________ Type options. press Enter. A data physical file may contain one or more members. "DDSSRC". Once..

An important object type on the AS/400 is the output queue (*OUTQ). A data logical file (*FILE LF-DTA) is a data file that contains no actual data. A display file describes what information is to be displayed and where it is to be displayed on the screen of a display station.same as the file name). However. A spooled files. In the "Work with Members using PDM" screen above. It is similar to the concept of a "view" in SQL. A printer file can be created using the "Create Printer File" (CRTPRTF) command. A data logical file is described to the system using DDS. is not an object itself but a subset of an object. such as the length and width of a printed page. A printer file describes the attributes that printed output will have. For instance. In this way. Another *FILE object type that you may encounter in your programming courses is the device file. It is important to understand. One way of defining and creating a display file is with the Screen Design Aid (SDA) utility. the difference between "source" and "data" in regards to data physical files. Two common types of device files are printer files (*FILE PRTF) and display files (*FILE DSPF). This compiled object is the actual file that is used to hold data records. A device file contains a description how data is to be presented to a program from a device or vice versa. When this source member is compiled (using CRTPF or option 14 in the "Work with Members using PDM" screen). The name of the output queue is normally the same as that of your user profile. you may want to group the records in a sales transactions file so that each member contains data for each month. The spooled file stays in the output queue until it is directed to a printer or removed. it is possible to include multiple members in a single PFDTA file. it produces an object with a type of *PGM with the attribute CBL. the "PF" member. like a member. but provides a different method of viewing the data of an accompyning data physical file(s) which it internally references. The relationships between the various objects that have been discussed in this section are as follows: QSYS (*LIB) [special library] | | contains | Library (*LIB) | . a *FILE object with the attribute LF-DTA is produced. the output goes to an output queue and it stays there as a spooled file. each month's data can be processed separately by processing one member at a time. On the AS/400. when a COBOL source program is compiled. Refer to the section "Printing Procedure" in this manual for more information on printing spooled files. it will produce a *FILE object with attribute PF-DTA. For example. Other Object Types A program object (*PGM) is a compiled program. contains DDS source that defines a physical file. When the DDS source is compiled. whenever something is printed. An output queue has already been created for you with the creation of your user profile. The attribute for a *PGM object indicates the language the program was written in. "EMPMAST". at this point.

Type in the name of the library and enter a brief description for the library. . to store all your application objects. To create a library. .-----------------. Member(s) | | [Reorginized data] Source Data Physical Physical File File (PF-SRC) (PF -DTA) | | contains | | contains | | Member(s) Member(s) [Program source] [Actual Data] Creating a Library A library has already been created for during user profile creation. Library type . .^--. F3=Exit F4=Prompt F5=Refresh F13=How to use this display YOURLIB__ Name *PROD____ *PROD. we will create another library and use this library as an example throughout the manual.--------. . Text 'descrip tion' .e. . . . . | | | | Programs (*PGM) Outqueues (*OUTQ) Files (*FILE) Other [Executable] | | objects | contains | Spooled Files | [Output intended for Printer] | | . . . Leave the library type as *PROD (a production library is one that is used for normal processing). . . . . The name of this library is normally the same as that of your user profile. .------^-----. the library that has the same name as that as your user profile. type the CRTLIB ("Create Library") on a command line and press <F4>to prompt on it. .| contains | . *TEST Sample_Library__________________ F10=Additional parameters F24=More keys F12=Cancel . . . In this section. press Enter. . i. . | | Physical Data Logical file file (PF) (LF -DTA) | ^ contains .+----^----------------.---------------. Create Library (CRTLIB) Type choices. . . Library . .. . . Note that you can use your default library. .

*CURLIB 92_______ Number *NONE_____ Name. try another name for the library." at the bottom of your screen. . .. . created in library . *NONE. Display Library List System: MKTAS400 . You can display your library list by typing DSPLIBL and press <Enter> on a command line. . . . . It specifies which libraries are to be searched and the order in which they are searched when the system looks for an object. Create Source Physical File (CRTSRCPF) Type choices.Press <Enter>. . press Enter. Member. . . . A library list is identified by the value *LIBL. To create a source physical file. we first explain what a library list is. type CRTSRCPF and press <F4> to prompt on it... . The current library is tied closely to the concept of a library list. Record length . Your default library. . Other commands that operate on libraries are: y y y DSPLIB (Display Library) DLTLIB (Delete Library) WRKLIB (Work with Library).. Library . . You should see a message at the bottom of the screen saying "Library . we show the display for creating a source file called "SRCFILE" in the library "YOURLIB". Before we discuss what the current library is. . let's create a source physical file in the library that we have just created. . A library list is similar in concept to the "PATH" in Unix and MS-DOS. . . .. created". it means that some other user already has a library by the same name. . . . already exists". Below.. . The following is the library list for the user "JOHNDOE". . . SRCFILE___ Name YOURLIB___ Name. . . . . . A default library list is automatically created by OS/400 for each job started by a user. .. .. . if desired Text 'description' . Creating a Source Physical File Now. . If you get this message. *FILE Sample_Source_File___________________ F10=Additional parameters F24=More keys F12=Cancel F3=Exit F4=Prompt F5=Refresh F13=How to use this display Library Lists You may have noticed in the previous screen that the "Library" field defaults to the value *CURLIB. . File . meaning the current library. Supply the names for the source file and the library that will hold it. . . Note: All libraries are on the same "level" with only QSYS above them. is automatically included in your library list. . If you see the message "Library . . . . . . Press < Enter> and you should see the message "File . . that is the library that has the same name as that as your user profile.

. however. If "JOHNDOE" now issues the the unqualified CALL command. In addition. pre ss Enter. You can edit your library list using the EDTLIBL command and remove a library list entry using . If a user does not specify a library name when requesting an operation on an object. As you can see. the libraries in the library list are searched for the object (starting with the system libraries.created by SQL F3=Exit F12=Cancel F17=Top F18=Bottom Note that you may not have all the libraries in the above list. user portion which consists of libraries that holds user objects. 5=Display objects in library Opt __ __ __ __ __ __ __ __ __ __ __ Library QSYS QHLPSYS QUSRSYS JOHNDOE QTEMP QGDDM QGPL QMSU QPAS MBNLQ ONLINE Type SYS SYS SYS CUR USR USR USR USR USR USR USR Text System Library *IN USE JOHN DOE's default library GENERAL PURPOSE LIBRARY MSU generated commands and programs Common Library for MBNLQ . and QGDDM come with the system while others are locally supplied. is the library that has the same name as your user profile (in this case. followed by the library name (or prompt on the command) ADDLIBLE YOURLIB . such as QTEMP. "TESTPROG" is qualified by "YOURLIB" as CALL YOURLIB/TESTPROG then the program can be found and executed.Type options. The current library is the first user library that is searched before the rest of the user libraries in the list. the library "JOHNDOE"). Some user libraries. A message will appear stating that the program is not found in the library list. assume that the user "JOHNDOE" has an executable program (*PGM object) called "TESTPROG" in the library "YOURLIB". If. To add a library to the library list. For example. the program can now be located and executed since the library that contains the program is now in the library list. User "JOHNDOE" wants to run the program (using the CALL command) and issues the command CALL TESTPROG . type the "Add Library List Entry" (ADDLIBLE) command. a library list is divided into three parts: system portion which consists of the libraries that are required to run system functions current library which by default. QGPL. the current library. and the user libraries). This is because "YOURLIB" is currently not in the library list. the user can create their own libraries and add them to their library list. COLLECTION .

*PRV.the RMVLIBLE command. when "JOHNDOE" signs on. . "YOURLIB" will no longer be in their library list and hence. Next time. Note. . . . . . . . . . Some commands automatically default to the current library (*CURLIB). . we will create an "initial program" that will automatically run these commands when a user signs on the system. Object type . . .Work with libraries using PDM WRKOBJPDM -. *generic. . In the section "Steps in Developing a Program". . *PRV. Object . . and allows the programmer to manage their environment from a set of standard menus. *PRV______ *ALL______ *ALL______ *ALL______ *PRV. that both commands (ADDLIBLE and CHGCURLIB) are only effective for a particular session. *AUTL. however. . attribute. . . Using the Program Development Manager (PDM) The Program Development Manager (PDM) is a set of utilities under OS/400 designed to simplify the creation and development of software. . *ALRTBL. Work with Objects Using PDM (WRKOBJPDM) Type choices. no longer the current library. . . . name. . press Enter. . *PRV. Library . Type WRKOBJPDM and press <F4> to prompt on it. . The . objects. compilation and program execution. . editing.) or using one of three commands which indicate the level at which the user would like to work: y y y WRKLIBPDM -. It automates file and member creation. ...) which will produce a menu of options for the level on which the user wishes to work (libraries. .Work with file members using PDM Work with Objects One of the most commonly used commands to start PDM is WRKOBJPDM. . This allows the user to work with objects inside a library. . Starting PDM PDM may either be started using the command STRPDM (for Start PDM. . or members... *generic. . . These may be replaced with the name of a specific library. Object attribute . *CURLIB name. *ALL. "YOURLIB" can be made the current library by typing CHGCURLIB YOURLIB . such as the CRTSRCPF command.Work with objects using PDM WRKMBRPDM -. .. F3=Exit F4=Prompt F24=More keys F5=Refresh F12=Cancel F13=How to use this display The *PRV value on the "Library" field indicates that the default is to work on the library the user last worked with. . . . .

. with the library specified as YOURLIB. YOURLIB___ *ALL______ *ALL______ *ALL______ *PRV. see Table 1 at the end of this section. is shown below. .. Object . *PRV. PDM Options Options are displayed across the top of the screen (for a list of all the options available in PDM. Work with Objects Using PDM Library . ."Object" and "Object type" options allow the user to limit which objects will be displayed. *CURLIB na me. . .. . This method of specifying actions on a form listing the objects available is consistent throughout PDM. the source physical file "SRCFILE" that you have just created. . . *AUTL. . . . .. press Enter. . . . . . . . *generic.. . . . . *PRV. name. . Library . .. . . . . . . . . . Work with Objects Using PDM (WRKOBJPDM) Type choices. press Enter. Object attribute . . . . and *ALL on the other options. . Object type . . Type WRKOBJPDM and prompt with <F4>. . __________ 4=Delete 9=Save Attribute PF -SRC 5=Display 10=Restore 7=Rename 11=Move . *ALL. . attribute. *PRV. . Type options. . *generic*. . YOURLIB___ Position to . __________ Position to type . F3=Exit F4=Prompt F24=More ke ys F5=Refresh F12=Cancel F13=How to use this display The screen resulting from command WRKOBJPDM.. *ALRTBL. 2=Change 3=Copy 8=Display description Opt __ Object SRCFILE Type *FILE Text Sample Source File Bottom Parameters or command ===> ________________________________________________________________ F3=Exit F9=Retrieve F4=Prompt F10=Command entry F5=Refresh F23=More options F6=Create F24=More keys Presently. . there should be just one object in the library. . . . . . .) Each option is an action which may be performed on an object by placing its number on the "Opt" line next to the object and pressing the < Enter> key. ..

change its attributes. Pressing <Enter> causes PDM to process each option in turn.) When working with a physical data file.. present a display allowing the user to call the program. When working with a source physical file at this level. File Position to . The following "Work with Members using PDM" screen appears: Work with Members Using PDM . .) If the item is of type *OUTQ. the "18" option may be invoked to modify the file using DFU (Data File Utility). Work with Members The WRKMBRPDM display is the bottom level of PDM. At the WRKOBJPDM screen. .) option. SRCFILE___ Library . More on PDM levels Moving down levels in PDM is accomplished using the "12" (Work With.. To use the prompting facility. . If the item is of type *PGM. Placing a 12 on the line next to an item on this display will: y y y If the item is of type *FILE. remember that the prompting facility may be invoked on any PDM option. go to the WRKMBRPDM display for that file (there are different types of WRKMBRPDM displays for source and data files. multiple objects may be operated on in succession. . . For example. . YOURLIB___ __________ Type options. (programs may also be called from the WRKOBJPDM screen by using the 16 option.) When this method of changing levels is used. etc. Type "12" against "SRCFILE" to work with it. You can type "5" (Display) against one and type "7" (Rename) against the other. .. option 2 runs the STRSEU command to begin editing a member and 14 calls the compiler for a program of that type (if specific compiler options are needed. . and second.There are two important special features which this method of specifying actions offers: First. press Enter. PDM will present the prompt screen for the command associated with that option number.. Multiple objects may be operated on sequentially by placing numbers on more than one Opt line. for instance the *DEBUG option to include debugging information in the program. the "2=change" option is no longer valid. However. simply press <F4> while an option number is on one of the "Opt" lines. . allowing the user to work with spooled files. assume we have two source files in "YOURLIB". pressing <Enter> or <F12> (cancel) with no options on the screen returns to the previous level. . 2=Edit 7=Rename Opt Member 3=Copy 4=Delete 8=Display description Type Text 5=Display 6=Print 9=Save 13=C hange text . the options support the prompting facility. . the action of this option depends on the file type. go to the "Work With Output Queue" display. .

. . *PRV *PRV. . . . . . . To work with the member that we have just created. . . . Later on. . press Enter. *PRV *LIBL. . Press <Enter> . . . . . . *generic. .(No members in file) Parameters or command ===> ________________________________________________________________ F3=Exit F9=Retrieve F4=Prompt F10=Command entry F5=Refresh F23=More options F6=Create F24=More keys Presently. This will automatically invoke the SEU editor. . . . . . . SRCFILE___ YOURLIB___ *ALL______ *ALL______ *PRV. Start Source Entry Utility (STRSEU) Type choices. press Enter. . Source file . . . . Member type . name. . . . Member . . enter "TXT" (i. . . . Sample_Source_Member____________________ Name. SRCMBR____ Source type . . . . . Let's create a member. BASP.. . Type this command and press <F4> to prompt on it. . press <F3> to quit and type "Y" in the "Change/Create member" field to save the source member. . . Text 'description' . the source member will contain only plain text). . *PRV. > YOURLIB___ Source member . Bottom F3=Exit F4=Prompt F24=More keys F5=Refresh F12=Cancel F13=How to use this display You will now be inside the SEU editor. Work with Members Using PDM (WRKMBRPDM) Type choices. *generic. . Enter the name of the new source member and for its source type. . . . . On return to the WRKMBRPDM screen. File . . The "Work with Members using PDM" screen can be accessed directly using the WRKMBRPDM command. . . . . To do that. . . . Name. For now. enter the names of the library and file as shown below. *CURLIB. Name. you can use the "Member" and/or "Member Type" fields to narrow down the number of members to work with. .. in the section on SEU we will use this source member. .. . .. Library . press <F6> (Create). type.. name. . there are no members in "SRCFILE". you will notice that "SRCMBR" is now in "SRCFILE". .e. *SELECT *SAME. . . . . *CURLIB *PRV.. . . . *LIBL. name *PRV. TXT_______ C. . . Name. BAS. . > SRCFILE___ Library . . . . . . . . . . . . . If you have many members in your file. .

if available Control Language Command Syntax . or member Recall a previous command to the command line Display an OS/400 command entry screen Switch to/from brief display mode Cancel an operation Copy an option number to all lines Switch between date and type display in PF -SRC Cha nge member list sort criteria Specify user -defined commands to PDM Limit the list on the screen to certain types Change PDM user settings Print the object list on the screen Display more PDM option numbers. file. This will bring up the "Work with Objects using PDM" screen for that library.F3=Exit F4=Prompt F24=More keys F5=Refresh F12=Cancel F13=How to use this display Work with Libraries Briefly.) 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 25: Change Copy Delete Display Print Rename Display Descrip. if available Display more function keys. Table 1: Options in PDM (Some options may not be valid at some levels. Save Restore Move Work With Change Text Compile Copy File Run Change Using SDA Change Using DFU Find String Modify an obj ect or edit a source member Duplicate an object Remove an object from storage Display the contents of an object Copy a source member to an output queue Change an object's name Show summary information about an object Save an object to offline storage Retrieve an object from offline storage Move an object to another library Perform operations on the contents of an object Change the text description line for an object Compile a source physical file member Copy a *FILE object (has special options) Run an object of type *PGM Change a screen design (in a PF -SRC) using SDA Use DFU to change a PF -DTA member Find a s tring of characters in an object Table 2: Function Keys in PDM F1: F3: F4: F5: F6: F9: F10: F11: F12: F13: F14: F15: F16: F17: F18: F21: F23: F24: Help Exit Prompt Refresh Create Retrieve Command Entry Display Toggle Cancel Repeat Source Type Toggle Sort User Options Subset Change Defaults Print List More Options More Keys Obtain help on an area of PDM Exit PDM or current operation Display prompt screen for options on screen Redraw the screen with updated information Create a library. You can work with the contents of a library by typing 12 against it. the WRKLIBPDM command lets you work with a library or libraries. You will probably use this command least among the three PDM commands.

Move o RMV . The verb consists of three characters and is the "action" component of the command.Stop a program which was started with a STR o GRT .Create Source Physical File WRKOBJPDM . a VERB and 2.Grant o MOV .Display item o END . A command is made made up of two components: 1. A system-defined default value . Another way of finding commands is to press <F4> on any command line.Work with Objects Using PDM STRPDM .Change o CPY .Work with The subject component of the command specifies the item that the verb acts on. or more parameters.Remove item o RST .Create o DLT . This will bring up the "Command Grouping Menu" where each option represents a group of related commands. As you would probably know by now.Add Library List Entry CL commands can be found in several ways.g. let's consider the command name. A command may have some parameters that are required and some that are optional.Delete o DSP . Command Structure First. The first option SLTCMD ("Select Command by Name") can be used to obtain a list of commands using a wildcard character (e. The command GO CMDxxx can be used to get a menu of commands related to xxx (where xxx can be a verb or subject). Some common verbs and their meanings are shown below: o ADD .Revoke o SET .Send o STR .Set o SND . a CL command is a way of of invoking functions and calling system services. Parameters A CL command can have zero.Copy o CRT .Start (a program or utility) o WRK .Restore o RTV .The purpose of this section is to provide a more formal presentation of CL commands. one.Retrieve o RVK . A CL command is made up of two parts: (1) a command name and (2) parameters. SLTCMD CR* will list all commands starting with CR).Add Item o CHG . Some examples of verb/subject combinations are: y y y y CRTSRCPF .Start PDM ADDLIBLE . a SUBJECT.

the system-defined value. 2. For example. which in this case is *ALL. can be entered in the position of that parameter. which is in between the second and third parameters in the parameter set. One such tool is the Programming Development Manager (PDM) that offers the following: . In the positional form. Parameters in keyword form can be specified in any order. A CL command can use a combination of both positional and keyword parameters. Note that when using the WRKMBRPDM command. a combination of both. If you do not want to specify a value for one of the parameters. A parameter that is specified in keyword form will have a keyword followed immediately by a value (or list of values). character in both keyword and positional forms WRKMBRPDM YOURLIB/SRCFILE SRCMBRWRKMBRPDM FILE(YOURLIB/SRCFILE) MBR(SRCMBR) If only the file name is specified. the file name and library name fields are actually one parameter (a file name plus a library qualifier). Note that the "Member" parameter. *N. or 3. One restriction of this mixed form of specifying parameters is that positional parameters cannot follow keyword parameters. for example WRKMBRPDM YOURLIB/SRCFI LE MBRTYPE(TXT) . the following command will display all objects of type *FILE in the library YOURLIB.(prefixed by "*") is usually assigned to an optional parameter if the user does not specify a value for it. The parameter values must be positionally matched with the keywords in the parameter set for that command. is omitted. For example. develop and maintain applications. we have been using the <F4> prompt facility for specifying parameters. If the reference is to a file in a specific library. parameters are specified without keywords. positional form. The above example can be specified in positional form as follows WRKOBJPDM YOURLIB SRCFILE . For example. So far in this manual. Using this method. Using the SEU Editor Introduction The IBM AS/400 provides an integrated set of Application Development Tools (ADT) to design. Another way of specifying parameters is the free format or command line method. Positional parameters are often limited to the first three or four parameters. parameters can be specified in: 1. WRKOBJPDM LIB(YOURLIB) OBJ(SRCFILE) There must not be any blanks between the keyword and the left parenthesis. as in the following statement WRKMBRPDM SRCFILE the library qualifier will default to the library list (*LIBL). the following is invalid WRKOBJPDM LIB(YOURLIB) SRCFILE . WRKOBJPDM YOURLIB *N *FILE *N will map to the default value for that parameter. You may want to use this method if you remember exactly what parameter information is needed for a command. keyword form. "/". the file name must be qualified with a slash.

Press <Enter> .+. Type 2 on the "Opt" line to edit the source member "SRCMBR". 4 ....+. 3 . 1 ....+. 5.. Extendable interface to tools through user-defined options. Starting the Editor Type STRPDM (Start Program Development Manager) on any command line. Another tool is the Source Entry Utility (SEU) that offers a full screen editor providing syntax checking of source statements.. *************** Beginning of data ******************************** If you press <Enter> without typing anything. 4 .... In this SEU tutorial.+... 1 ..y y y Integrated application development environment. 6 .. .: 1 80 SEU==>_______________________________________________________ FMT ** ''''''' ''''''' ''''''' ''''''' ''''''' ''''''' ''''''' ****************** End of data *********** ************************ F3=Exit F10=Top F4=Prompt F11=Bottom F5=Refresh F24=More keys Edit SRCMBR .+.. The PDM menu is displayed. and press <Enter> .. Choose option 3 to Work with members.... The "Work with members" screen shows up.. List-oriented selection of items for development or maintenance.+. In either case.: 1 80 SEU==> _______________________________________________________ FMT ** Edit SRCMBR ..+. 3 . ...+.... the screen readjusts as shown: Columns .. supply the necessary source file (SRCFILE) and library (YOURLIB) information and press Enter.+........ . You can also reach this screen by typing WRKMBRPDM (Work with members using PDM) on any command line and pressing <F4> . . 5. we will use the source member we created in the previous section..... You are now in the full-screen EDIT mode..+.. 2 ....+.+. 6 . *************** Beginning of data ********************************* ****************** End of data ************************************ F3=Exit F10=Top F4=Prompt F11=Bottom F5=Refresh F24=More keys . Columns .... . ... PDM is one tool that may be used to access the SEU... 2 .+..+.

N=No .+.+..00 End Second Blo ck. 0010. Columns . 3 .+. 6 .. 6 ..... 0004. 4 . . .. The exit display shows up: Exit Type choices. 3 .00 ****************** End of data ************************************ Notice the sequence numbers of records at the extreme left.....+.. To save the current member and exit SEU follow the following procedure 'Exiting the Editor. .00 Begin Second Block...00 0003..+.+..00 Begin First Block.+. Columns .: 1 80 Edit SRCMBR SEU==> _______________________________________________________ FMT ** .. Y Y=Yes. 2 . press Enter. ..+. you may start typing in the desired text... Change/create member ... 0009. .00 THIS IS A TEXT DOCUMENT..00 Text for second block . .....' Exiting the Editor To exit SEU press <F3>.. For more information on line commands see 'Using SEU line commands'. .+. 2 .. *************** Beginning of data ********************************* 0001....Type I (for insert) on the first line as shown and press <Enter> ... 1 . 0008... The sequence number field of a record is used to specify the line commands... 0002. 5. 0006......... .. 1 ... we show a sample TEXT document that will be used in the next section for illustrating the use of various SEU line commands. .+.00 0007.. Below.00 Text for the first block .00 End First Block.. 5..+.+. ..+. .. 4 . . I *************** Beginning of data ********************************* ****************** End of data ************************************ Now..: 1 80 Edit SRCMBR SEU==> ____________ _____________________________________________ FMT ** . 0005.+..

y y Use the command WRKMBRPDM as explained in the previous section. . . . and then you decide to cancel it. use <F5> to refresh the screen. . . Text . . . .00___ 0000. The default values supplied for most of the options above are self-explanatory. . For example. . . . . However. . . . . .01 . . Resequence member Start . . From the "Work with members using PDM" display. Print member . . . . you may simply press < Enter> . . . . Note: If you type a line command. . To edit a member that has already been created. . . type option 2 in front of member SRCMBR and press <Enter> . to edit the member SRCMBR created before. . N=No F5=Refresh F12=Cancel If you wish to save the changes you have made. . Using Line Commands SEU supports various line commands that guide us in editing an existing member. . . . . The screen for editing that member will show up. command C is used to copy lines. . Use the tab keys to position the cursor at the desired member. . if the member is modified. . . . . . . reach the 'Work with members using PDM' display. In the following discussion. . . F3=Exit . Return to editing . . . . . . . note the following: y y y If you have decided not to quit the editor.01 . otherwise N. . N=No N Y=Yes. if your member did not have any syntax errors. . . . . N=No N Y=Yes.99 N Y=Yes. . . Increment . . and type option 2. . N=No 0001. . press <F12> to cancel the exit display. a sample TEXT document is used to illustrate the use of the various commands. . . .Member . . . . File . . . . .99. . . if syntax errors do persist. . . . However. This returns you back to the editing mode. . . The default value for 'Change/create member' is Y. . and press < Enter> . . . The edit display for this member is shown: . . . . Type N in this field only if you do not want to save changes made to your member.9999. . ._____ Y Y=Yes. Library .99 01. . . . .00____ 00. . Go to member list . . . For example. SRCMBR____ Name SRCFILE___ Name YO URLIB___ Name Description_for_the_member. . . the system supplies Y in this field and returns back to the editing mode ( unless you explicitly type N and force it to exit ). The SEU line commands are entered over the digits that make up the sequence number of a record. command M for moving lines and so on. . . . . type WRKMBRPDM YOURLIB/SRCFILE on any command line. . . . The default value for 'Return to editing' option is N. . .

0006. 0002. End First Block.00 End Second Block.Columns ..00 0010. . 0010.00 0004.00 0008.00 F3=Exit F10=Top THIS IS A TEXT DOCUMENT..00 THIS IS A TEXT DOCUMENT. 0004.....: 1 71 Edit YOURLIB/SRCFILE SEU==> _________________________________________________________ SRCMBR FMT CB . .00 0007..: 1 71 Edit YOURLIB/SRCFILE SEU==> ________________________________________________________ SRCMBR FMT CB . .00 0005. .. Begin End Second Block. 0005. Begin First Block..00 Text for second block .00 0002. 0009. SAMPLE. ''''''' PROGRAM -ID. 0002. .. Text for second Second Block. .. Type in the line to be inserted and press <Enter> .00 0009. 0008. . and press <Enter> . type I (insert) on the sequence number field of that record..00 ****************** End of data ************************** ********* F3=Exit F10=Top F4=Prompt F11=Bottom F5=Refresh F24=More keys Inserting a line To insert a line after a particular record.... *************** Beginning of data ******************************** I001.00 Begin First Block.00 0006.00 Text for the first block . Text for the first block .. block .-A+++B+++++++++++++++++++++++++++++++++++++++++++++++++++++ + *************** Beginning of data **** **************************** 0001.00 0003..00 0003.00 THIS IS A TEXT DOCUMENT.00 End First Block.-A+++B++++++++++++++++++++++++++++++++++++++++++++++++++++++ *************** Beginning of data ******************************** 0001. ****************** End of data *********************************** F4=Prompt F11=Bottom F5=Refresh F24=More keys The screen adjusts as shown below.00 0007.00 0003.00 Begin Second Block. Columns .00 Begin First Block..

00 Text for second block .. 0009. type C (copy) in the sequence number field. 0008.: 1 71 Edit YOURLIB/SRCFILE SEU==> __________________________________________________________ SRCMBR FMT CB ..00 C Begin First Block.. ..00 End First Block.00 Text for the first block . 0004.. ..0004. 0004...00 End Second Block.00 Text for the first block .00 THIS IS A TEXT DOCUMENT. First Block.00 End Second Block.01 It illustrates the use of SEU line commands. .00 0010.. 0010.. 0001. 0002. 0001.00 THIS IS A TEXT DOCUMENT.. . 0008. Begin End ****************** End of data *********************************** F4=Prompt F11=Bottom F5=Refresh F24=More keys Copying a line To copy the "Begin First Block" line to the end of the program.. . Text for second Second Block. 0002.-A+++B++++++++++++++++++++++++++++++++++++++++++++++++++++++ *************** Beginning of data ******************************** 0001. This results in the pending line to be copied after the line you have indicated.00 C Begin First Block.: 1 71 Edit YOURLIB/SRCFILE SEU==> _________________________________________________________ SRCMBR FMT CB .00 0007. 0009. Second Block..00 0007.01 It illustrates the use of SEU line commands.00 End First Block.-A+++B++++++++++++++++++++++++++++++++++++++++++++++++++++++ *************** Beginni ng of data******************************** 0001..00 0006. and press Enter.00 0009. .00 ****************** End of data *********************************** Type A (after) on the last line as shown.00 0005. 0005. 0005..00 Begin Second Block. Columns . 0006...00 Text for second block ..00 F3=Exit F10=Top End Text for the first block . .00 Begin Second Block.00 0007. Note the message on the top that indicates a pending Copy line command.... Columns .. 0006. block .00 0008. and press Enter.

00 0009. block . type D (delete) in front of it and press <Enter> . Text for the first block . ****************** End of data *********************************** Block Move To move a block.00 0009..00 0005.00 0001. Now. It illustrates the use of SEU line commands. End First Block. 0001.. after the copy.00 0011.. Begin End Second Block. End First Block.00 0007.00 D011. It illustrates the use of SEU line commands.A010. and press <Enter> . Begin First Block.00 ****************** End of data ************************************ The program looks as shown below.00 0005.00 0010.. use the command M (move) and follow the procedure as explained above for copy. type MM at the beginning and the end of the block.00 Begin First Block.00 0006. *************** Beginning of data ******************************** THIS IS A TE XT DOCUMENT.. To move a single line.01 0002.. Text for second Second Block.00 Begin First Block.. The Block Move is illustrated below.00 0003.00 0006..00 0003.00 0004.00 0007. Begin End Second Block. *************** Beginning of data ******************************** THIS IS A TEXT DOCUMENT.00 0008. the first block of text being moved after the second one. It illustrates the use of SEU line commands.00 0001. Begin First Block. ****************** End of data *********************************** Deleting a line To delete a line.00 0010. the target for the move has to be specified. Text for the first block .01 .00 0008.00 0001.00 0004. block .01 0002. 0001. The line that was just copied may be deleted as shown below: *************** Beginning of data***************************** THIS IS A TEXT DOCUMENT. 0001. Text for second Second Block.

00 0010. 0001.00 0008.00 .00 0012.. Text for second Second Block.00 0009. *************** Beginning of data ******************************** THIS IS A TEXT DOCUMENT. *************** Beginning of data ******************************** THIS IS A TEXT DOCUMENT.01 0002. Note below... End First Block.00 0009.00 ****************** End of data *********************************** Here is the member after the move: *************** Beginning of data ******************************** THIS IS A TEXT DOCUMENT. End First Block.00 0008.00 Begin First Block.00 MM 0007.00 MM 0004.00 MM 0004.00 0014... block .00 Begin First Block. Text for second Second Block.00 0007.. It illustrates the use of SEU line commands. End First Block. Begin End Second Block. Begin First Block. to copy the block before the indicated line. It illustrates the use of SEU line commands.00 MM 0007.00 0001.00 0013. ****************** End of data *********************************** Type A on the last line to move the block to the end of the program..00 0005.00 0008..00 0009. 0001. Begin End Second Blo ck.0002. block ...00 A010. 0001. Text for the first block . block .. Text for the fi rst block .01 0002. Begin End Second Block. that B is specified as the target. ****************** End of data *********************************** Block Copy Enclose the block to be copied within CC commands..00 0010.00 0005. Text for the first block .00 0001. Text for second Second Block. The block copy resembles the block move explained above. and specify the target.00 0011.

00 DD 0013.00 0011.00 0012. Begin Second Block..01 0002.. 0001. Text for the first block ..00 0013.00 CC 0008. End First Block.00 Begin First Block.00 B It illustrates the use of SEU line commands.00 0013. Text for second Second Block.00 0007.00 0012. The block that was just copied may be deleted as shown: *************** Beginning of data ******************************** THIS IS A TEXT DOCUMENT. Text for the first block ..00 0001. It illustrates the use of SEU line commands.00 0009. Text for second Second Block...01 0002. Begin End Second Block.. Begin End Second Block. End First Block. Text for the first block .00 0008. ****************** End of data *********************************** The source member looks as follows.00 0010.00 0008. Begin First Block.00 0010. Text for second Second Block..00 CC 0011. block .00 0009.0001.00 0007. End First Block.00 0001. 0001.. Begin End Second Block.00 0011..00 0012. block .00 Begin First Block.03 DD 0014. ****************** End of data *********************************** . ****************** End of data *********************************** Block Delete To delete a block... Text for second blo ck . block .00 0009.00 0013.01 0002.00 0014.. End Second Block. enclose it within DD commands and press <Enter> . after our experimentation with the above line commands: *************** Beginning of data ******************************** THIS IS A TEXT DOCUMENT..02 0013. It illustrates the use of SEU line commands.

The scope of the search can be specified using search parameters: X (excluded records) and NX (nonexcluded records).To get a complete list of commands for SEU place the cursor on the sequence number list and press the help key. apostrophes. The syntax of FIND is FIND string [N. Several direction parameters are available: N (Next).P.P.L] [X. If the string contains embedded blanks.NX] [column parameter] TOP Go to the first page of the work screen.L] [X. and A (All). FILE [ [ [ library/ ] file ] member ] CANCEL Cancel session and exit session.A. Examples: y y y y F XYZ F 'hello there' F *ERR A find all syntax errors F "'XYZ'" Use the F16 "Repeat Find" key to find the next occurrence of a string. CHANGE Find all occurrences of a character string and replace it with another string. or quotation marks. SAVE [ [ [ library/ ] file ] member ] FILE Save changes and exit from edit session.A.F. FIND Search for an occurrence of a character string. SAVE Save changes and continue editing. SEU Commands SEU commands are entered in the "SEU==>" field at the top of the screen.F. BOTTOM Go to the last page of the work screen. it should be enclosed in quotation marks. The syntax is CHANGE fstring cstring [N. F (First). P (Previous).NX] [column parameter] . L (Last). SET .

___________________________________________________________________________ ___ Key Name Function ___________________________________________________________________________ ___ F1 Help Press the help key for details about the display. . and from the SEU command line to the data area. Rebuilds display and shows it again. Summary of Line Commands The Sequence_number field displays the sequence number of the record and is used for entering SEU line commands. returns to previous entry point. B=Before Move or copy records before this record. F10 Cursor Moves the cursor from the data area to the SEU command line. F5 Refresh Refresh the current display. F11 Previous Record Places the previous record in the prompt. Bn=Before with repeat n times Move or copy records before this record and repeat these records n times. Function Keys in SEU When a member is being edited.See the IBM SEU manual for more information. to the right of the current display. SEU returns to the EDIT Session and displays the prompt after you make a selection. type the command over the digits that make up the sequence number. F4 Prompt Provides assistance for the options selected in the list or a command on a command line. F13 Change Session Go to the Change Session Defaults Defaults display. F17 Repeat Change Perform change or repeat current change function. F15 Browse/Copy Options Go the Browse/Copy Options dis play. F24 More keys View the other function keys available for the current display. to the left of the current display. To use a line command. F14 Find/Change Options Go the Find/Change Options display. F18 DBCS Conversion Perform DBCS conversion. F20 Right View the info. PDM will fill in the default values. F3 Exit End the current task. C=Copy Line Copy this line to a specified target. F23 Select Prompt Go to the Select Prompt display. the Edit display supports a diverse set of function keys that allow you to perform specific tasks. An=After with repeat n times Move or copy records after this record and repeat these records n times. F16 Repeat Find Perform find or repeat current find. F19 Left View the info. The following is a list of all the valid commands: y y y y y A=After Move or copy records after this record.

LL=Shift block 1 char to the left Shift data defined by the boundary between and including the two LL line commands one character position to the left without losing data. D=Delete Delete the current line. Mn=Move n lines Move the current line and the following n-1 lines to a specified target.y y y y y y y y y y y y y y y y y y y y y y y y y y y y Cn=Copy n lines Copy this line plus the next n-1 lines to the specified target. Dn=Delete n lines Delete the current line and the next n-1 lines. Rn=Shift data n chars right Shift data in the current record n character positions to the right without losing data. IP=Insert line and prompt Insert a blank line and display the line in a prompt. DD=Block Delete Delete all lines between the two DD boundaries. copy. CCR=Copy block records and retain command Copy the block of records defined by a pair of CCR commands to the specified targets and keep this command on the display. . or copy repeated line command. or copy repeated line command. copy. CRn=Copy n records and retain command. Copy n records to the specified targets and keep this command on the display. RRn=Block shift n chars to the right Shift data defined by the boundary between and including the RRn and RR line commands n character positions to the right. I=Insert a line Insert a blank line after the current record. O=Overlay Overlay the current line with the first line defined by the move. without losing data. or copy repeated line command. CC=Block Copy Copy all lines between the boundaries formed by the two CC commands CR=Copy records and retain command Copy this record to the specified targets and keep this command on the display. R=Shift data 1 char right Shift data in the current record one character position to the right without losing data. MM=Block Move Move all records between and including the boundaries defined by the MM line commands to a specified target. P=Display prompt Type P to display this line in a prompt. Ln=Shift data n chars left Shift data in this record n character positions to the left without losing data. RR=Block shift 1 char to the right Shift data defined by the boundary between and including the two RR line commands one character position to the right without losing data. On=Overlay n lines Overlay this line and the following n-1 lines with the first n lines defined by the move. LLn=Shift block n chars to the left Shift data defined by the boundary between and including the LLn and LL line commands n character positions to the left. copy. F=Display format line Display a format line. OO=Block overlay Overlay all the records between and including the boundaries defined by two OO line commands with the lines defined by the move. In=Insert n lines Insert n blank lines after this record. L=Shift data 1 char left Shift data in this record one character position to the left without losing data. M=Move a line Move a line to a specified target.

compiling. -n=Roll member backward n lines Roll the member backward n lines. that is the one you created in an earlier section. + (plus sign)=Roll member forward 1 line Roll the member forward one line. +n=Roll member forward n lines Roll the member forward n lines. SL=Show last record Show the last record of the exclude group SLn=Show last n records Show the last n records of the exclude group. and a brief description of the source member. and how to obtain information about certain compilation and runtime errors. ALIBRARY represents the library that has the same name as your user profile or your other library. This will start the SEU editor. all it does is make the library that you have created (in my case. RPPn=Block repeat Repeat all lines defined by the boundary between the two RPP line commands n times. Enter TEST for the name of the source member. The following creates a PF-SRC file in the library ALIBRARY. The CL program is very simple. XX=Block Exclude Exclude all lines between the boundaries formed by the two XX line commands. First. work with the file by typing: WRKMBRPDM FILE(ALIBRARY/QCLSRC) Then create a source member called TEST in QCLSRC by pressing <F6> . let's create a source physical (PF-SRC) file called QCLSRC (the IBM-supplied name for a CL source physical file). RPn=Repeat line n times Repeat the current line n times before the following line.(minus sign)=Roll member backward 1 line Roll the member backward one line. SF=Show first record Show the first record of the exclude group. n=Absolute Positioning Position the line identified by the sequence number(n) as the first record on the display. Once you have entered all the necessary . Xn=Exclude plus Exclude the the current record and the next n-1 records. . We will also demonstrate how to find compilation errors when they occur. Wn=Display member from column n Display the member beginning in column n.y y y y y y y y y y y y y y y y y y RP=Repeat line Repeat the current line once before the following line. CRTSRCPF FILE(ALIBRARY/QCLSRC) Once the PF-SRC file has been created. The command line form of issuing CL commands will be used in this section (you may want to use the <F4>prompt facility to assist you if you are not familiar with the commands). CLP for the source type (to see what source types are available. put the cursor on the "Source type" field and press <F4> ). YOURLIB) the current library while retaining the existing current library on the library list. Steps in Developing a Program In this section. we are going to use a simple Control Language (CL) program to illustrate the steps in developing. RPP=Block repeat Repeat all lines defined by the boundary between the two RPP line commands. SFn=Show first n records Show the first n records of the exclude group. and running a program on the AS/400. The intention here is not to teach CL programming. X=Exclude Exclude the current record from the display. W=Display member from column 1 Display the member beginning in column 1.

) For more information. The RTVJOBA command. Put the parameters back on the DCL statement. Also. You will enter a SEU editing session. The CHGCURLIB command.00 0006. Type in the following program: 0002. SEU will highlight that statement. is used to make YOURLIB the new current library (where "YOURLIB" is any existing library that you have access to). indicating that there is a syntax error. This variable will be used to save the name of the existing current library. such as RPG. "&". the reader is referred to the IBM "CL Programmer's Guide" or the online education modules: "AS/400 Control Language Programming" in the "Tutorial Support System" course. In this case.00 *************** Beginning of data ******************************** PGM DCL VAR(&OLDCURLIB) TYPE(*CHAR) LEN(10) RTVJOBA CURLIB(&OLDCURLIB) CHGCURLIB CURLIB(&YOURLIB) /* intentional error */ ADDLIBLE LIB(&OLDCURLIB) ENDPGM ****************** End of data ****************************** ***** You can use the SEU line command. Remove the parameters of DCL so that the statement contains only "DCL". note that CL programs are "free format" in that components of CL statements do not have to be placed in particular columns on the screen (some source types. The reason for this step will be explained shortly. The second statement declares a CL variable called &OLDCURLIB. We have mistakenly prefixed YOURLIB with "&". &MYVAR will be used to hold the parameter's value. to help you in selecting a CL command.00 0003.00 0005. saving it in the variable &OLDCURLIB. and press <Enter> . on the fourth statement. which is optional if the CL program does not receive any parameters. Notice that we have intentionally introduced an error in this statement. are "fixed-format".00 0004. the IP line command can help enormously in coding such programs). and the modules "Creating a Control Language Program" and "How to Use Error Handling Facilities" in the "Facilities and Implementation" course. that is we really want CHGCURLIB CURLIB(YOURLIB) instead of CHGCURLIB CURLIB(&YOURLIB) . (Aside: If a CL program has a parameter named &MYVAR. . The ampersand symbol. denotes that &MYVAR is a variable. SEU will not let you exit an editing session that has syntax errors unless you explicitly specify that you want to exit in the exit screen. The variable will be used to hold a character string with a maximum length of 10. on the third statement. A CL program begins with the PGM command. IP (insert line and prompt). the variable &MYVAR has to be declared using the DCL command. Note that SEU provides syntax checking for CL programs. is used to retrieve the name of the job's existing current library. Moreover. the PGM statement is coded as: PGM PARM(&MYVAR). press <Enter> .00 0007.information.

. If you prompt on the option (ie. . *PGM Generation severity level . . the "old" current library will not be retained on the library list. . Compiling a Program In the "Work with Members using PDM" screen. > ALIBRARY Name. . . . a message will return saying that the job has ended abnormally. > QCLSRC Name Library . . . . you will see a message at the bottom of the screen saying that the compilation job has been submitted to QBATCH. Program . . . accept the defaults. . *CURLIB Source member . adds the name of the former current library (which we saved in the variable &OLDCURLIB in the RTVJOBA statement) to the library list. . .e. > *YES *NO. . press <F4> when you use option 14). it will invoke the CRTCBLPGM command). This is an error because if we intended &YOURLIB to be a variable. ENDPGM. Since there is an error in the above program. . enter option 14 to compile the member that contain the CL source program. . Option 14 will invoke a different "create program" command for a different source type (e. 29 0 -29 Text 'description' . Now. on the fifth statement. . . You can change these default values. . . . The "Library" field specifies the library that will contain the *PGM object. . . meaning there are compilation errors. . . Press <Enter>to continue. On pressing <Enter> . > TEST Name.A name with "&" as its prefix denotes that it is a CL variable. . . > ALIBRARY Name. .g. . it must be declared in a DCL statement. exit and save the program as it is (i. . . . Option 14. the need to use RTVJOBA to save the name of that library. . . . with the error). . *LIBL. . . indicates the end of the CL program. . Hence. you will see the following screen: Create CL Program (CRTCLPGM) Type choices. . . The last statement. . in this case. you will receive a message saying that the job completed normally. . . . *PGMID Library . . This error will be detected during compilation. . . Unless you want to rename the *PGM object or put it in another library. The default is the library that contains the source member. . . *YES Bottom F3=Exit F4=Prompt F5=Refresh F13=How to use this display F10=Additional parameters F24=More keys F12=Cancel The "Program" field specifies the name of the *PGM object that will be created if the compilation is successful. . . Note that SEU cannot detect this kind of error. . > TEST Name. . . This name defaults to name of the source member. . *SRCMBRTXT Additional Parameters Replace program . . . which is the job queue for batch jobs. This step is needed if we want this library to stay on the library list. If there are no compilation errors. . . *CURLIB Source file . This is because when the CHGCURLIB command is executed. . press Enter. . and to add it back on the library list using ADDLIBLE. if the source type is CBL. The ADDLIBLE command. will invoke the CRTCLPGM (Create CL Program) command.

The message will refer you to the compiler listing of the program. Let's go back to the source member and fix the problem. LIB(&OLDCURLIB) * * * E N D O F S O U R C E * * * No labels used in program. There should be a message stating that the program was not created because of compilation error. There should be a spooled file with the same name as your source member (the compiler listing) and a job log (QPJOBLOG). * * * * * E N D O F C R O S S R E F E R E N C E Program TEST not created in library YOURLIB. Type 5 to display the contents of the compiler listing of the program. For example.Finding Compilation Errors To find out the cause of the compilation error. it is not the cause of the compilation failure. Using SEU to Find Compilation Errors . Maximum error severity 40. The meaning of first error is evident. to get more details about the error CPD0727 DSPMSGD RANGE(CPD0727) MSGF(QCPFMSG) where QCPFMSG is the system message file and CPD0727 is the message ID. You can use the DSPMSGD (Display Message Description) command to get more information about a compilation error. type WRKSPLF to see what's in your output queue. A segment of that listing is presented here: 200300400500* CPD0727 40 600700* * 5738SS1 V2R1M1 YOURLIB/TEST 920306 Control Language Cross Reference Declared Variables Name De fined &OLDCURLIB 300 * CPD0791 00 * 5738SS1 V2R1M1 920306 Control Language Message Summary Total 90-99 2 Severity 0 -9 10-19 1 0 20-29 0 30-39 0 40-49 1 50-59 0 60-69 70-79 0 0 80-89 0 0 YOURLIB/TEST Type *CHAR Length 10 References 400 600 PGM DCL RTVJOBA CHGCURLIB Variable '&YOURLIB ADDLIBLE ENDPGM * * VAR(&OLDCURLIB) TYPE(*CHAR) LEN(10) CURLIB(&OLDCURLIB) CURLIB(&YOURLIB) ' is referred to but not declared. Press <Enter> to exit this display. Type 5 against QPJOBLOG to display it. There are two errors in the listing (errors are marked with "*" in column 1): the first with a severity of 40 and the second with severity of 0. it is the cause of the failure. The second error is only an information message.

in the bottom screen type FIND *ERR on the SEU command line (or simply. Place the cursor on the "Browse/copy spool file" field and press <F4>. The program should compile normally. Running a Program Use the WRKOBJPDM command to work with the library that contain the *PGM object that was created.. option 16 invokes the CALL command). and make the corrections to the source member on the spot. . we specify a nonexistent library called DOGNAP. Alternatively. On return to the editing session. type CALL TEST on a command line. type '+' on the "Parameters" field and press <Enter> . Compile the source member (you will probably be asked if you want to delete the existing *PGM object. This will bring another screen that allows you to enter multiple parameters. For example. If your program takes more than one input parameter. you will get a runtime or object error message similar to the one below: Display Program Messages Job 287471/T03/DSP02 started on 07/20/92 at 13:48:44 in subsystem QINTER CPF2110 received by TEST at 600. To make the situation more interesting. The rest of the source remain the same as before (except for removing the ampersand character). you can pass the parameter value(s) by prompting on either the option 16 or the CALL command. specify some library name that you do not own or one that you are not authorized to use. The program should compile normally after this change. ________________________________________________________ . The *PGM object will be created in the library that contains your source file unless you specified otherwise. But if you created a program that requires an input parameter(s). To find compilation errors. CALL MYPROG PARM(parameter1 parameter2 . An advantage of using SEU for this purpose is that you can see both the source member and the compiler listing on the same screen. In our example.) Diagnosing Runtime Errors In any case. If the library is not in your library list..You may want to use SEU to view your compiler listing instead of the way discussed above. especially if the compiler listing is too lengthy to scan by eye. To view a spooled file while you are in SEU. In the ADDLIBLE statement. press <F15> (Browse/Copy). Type 16 against the *PGM object to run/execute it. Reply . You can also us pass parameters using the command line method. F *ERR). If the library that contains the *PGM object is in your library list. Using SEU. . you can still run the program by qualifying it with the library name CALL ALIBRARY/TEST The example program used here does not take any input parameters. Select the appropriate spool file. "&". let's introduce another type of error. (C D I R) Type reply. edit the source member to remove the ampersand. SEU provides special support for locating compilation errors. you can run the program by using the CALL command (in fact. Respond with a "Y"). that is ADDLIBLE DOGNAP . press Enter. you should see a split screen with the member you are editing on top and the spooled file on the bottom. when you run the program. Enter 2 in the selection field. from YOURLIB.

. . . . .: 99 Time sent . . . . . Additional Message Information Message ID .: 0000 To program . The initial program has to reside in your default library (i. . and recompile.F3=Exit F12=Cancel To find out the cause of the error. . . . . . . Go back to the source member. . . Creating an Initial Program An initial program is similar to the AUTOEXEC. Message type Date sent . . . (C D I R) Cause . The message text. : *EXT Instruction . . Type DSPLIBL to check whether the library has been added and whether it has been made the current library. . I -. Press <Enter> to cancel the program. . Monitor for the error (MONMSG command) and perform error recovery within the program. It is executed when the user logs on. DSPMSGD RANGE(CPF2110) MSGF(QCPFMSG) where QCPFMSG is the system message file and CPF2110 is the message ID. you . To continue. : Control language (CL) program TEST inlibrary YOURLIB detected an error at statement number 600. . . . . . . .Cancel the CL program. . . . . Message text for CPF2110 is: Library DOGNAP not found. : C -.BAT file in MS-DOS.. . indicated clearly what the problem is. . You see a screen similar to the one below. . .Ignore the failing command. place the cursor on the message id (in this case CPF2110) and press <F1>. For instance. Recovery . choose a reply value. the library with the same name as your user profile) and it has to be named INITIALPGM.: 14: 00:05 Instruction . D -. . . Press Enter to continue. .Dump the CL p rogram variables and cancel the CL program. .e. Sometimes you can obtain additional messages by pressing <F10> to display messages in the job log. the library DOGNAP was not found. in this case. . More. . .e. . . For example.: 0000 Message . . it should run without any problems. . . From program . : : : : CPA0701 INQUIRY 07/20/92 QCLXERR Severity . . . Possible choices for replying to message . : This inquiry message can be avoided bychanging the program. .. . . . . . . . . The next time you run the program. . F3=Exit F10=Display messages in job log F12=Cancel Again. : CPF2110 received by TEST at 600. the DSPMSGD ("Display Message Description") command can be used to obtain more information about the error. fix the error. i. .

or control an object's existence. This section is designed to help users maintain correct authorities and to understand the authorities on the objects that they own. Authorities and their meanings Object Authorities Object authority is used to control access to an object including the ability to see an object description. press < F4>to prompt on it. *OBJMGT provides the authority to specify the security (grant/revoke object authority). *OBJOPR provides the authority to look at the description of an object and use the object as determined by the data authority that the user has to the object. *READ provides the authority to get the contents or an entry in an object or to run a program. when you recompile it using the option 14. *OBJEXIST provides the authority to control the object existence and ownership. move or rename the object. The user with this authority can delete. for example records in a database file. and add members to database file. Combinations of Object and Data Authorities . Specify your default library as the library where the *PGM object is to be stored. update. Rename the source member to INITIALPGM and recompile it. *ADD provides the authority to add entries to an object. the object authorities must be relaxed correctly to maintain object integrity.can make the above CL program your initial program. Understanding Object Authorities Introduction To maintain security of data and/or program objects the AS/400 offers a variety of options available to limit access to object. add. *UPD provides the authority to change the entries in an object. if objects are to be shared or used between users. These authorities must be set to secure object to the level of security required. *DLT provides the authority to remove entries from an object. control read and write access to an object. or delete records. If you created the source member in a another library. Likewise. and transfer ownership of the object. Data Authorities Data authority is the authority to access data contained in an object. This includes the ability to view. save.

*CHANGE provides *OBJOPR authority and all data authority. . . *AUTL. Object secured by authorization list Object User JOHNDOE Authority *ALL ----Object----Opr X Mgt X Exist X . *LIBL Object type . *ALL allows the user to perform all authorized operations (object and data) on the object. .Data----------Read X Add X Update Delete X X . . we want to allow a certain user to copy a member from the file "SRCFILE" which is stored in the library "YOURLIB". . . They reduce the time required to assign specific authorities to users. . . . . : YOURLIB QSYS Object type Owner . . press <F11>. . . *LIBL. . . In addition to these. *USE provides *OBJOPR authority and data read authority. Changing authorities with EDTOBJAUT We use an example here to illustrate the use of some of the types of authorities discussed above. *CFGL. . . . is normally owned by your security officer so you cannot change its authorities). . .: *NONE ---------. Fill in the blanks for object. . *EXCLUDE authority prevents the user from accessing the object even if *PUBLIC is authorized. command to edit the authority on "YOURLIB". : *LIB JOHNDOE . users can create customized combinations of object and data authorities. . To do that. . . . > YOURLIB Library .. .These are keywords. . . EDTOBJAUT.. . Type EDTOBJAUT on a command line and press <F4>. . . . Note that the owner of "YOURLIB" has *ALL authority on the object. . . . : Library . : Type changes to curr ent authorities. . . . Object . library. we need to allow the user to have access to the library "YOURLIB". . press Enter. . . . . Edit Object Authority (EDTOBJAUT) Type choices. . Edit Object Authority Object . . . . i. In this example. . press Enter. and object type (*LIB) and press <Enter> . . . > *LIB Name Name. . *CURLIB *ALRTBL. First of all. . . .e. (Note that your default library. . . To see the detail screen as shown below. . . each representing predefined combination of object and data authorities. . we use the "Edit Object Authority". . . the library that has the same name as your user profile.

. . .) Next. type "X" in the position relating to that authority to grant authority or a space to delete that authority. . (Note: If you want to edit a specific authority. When the network file arrives at its destination. . . . .e. . . . press Enter. . . *FROMFILE_ *FROMFILE. . . Mankato. . *DA TA . > RCV_______ Address . . > MKTAS400__ + for more values _ Member . . Type EDTOBJAUT OBJ(YOURLIB/SRCFILE) OBJTYPE(*FILE) or use the prompt to fill in the parameters. . *OBJMGT must be granted. In the example shown below. Type in the name of the user and *USE for the object authority. . . Press <F6> to add the user to the authorization list with *USE authority. . . The "Send Network File" (SNDNETF) command can be used to send a member of a physical database file (PF-DTA or PF-SRC) to another user. At any time press <F1> for more help. Send Network File (SNDNETF) Type choices. File . > SNDLIB____ User ID: _ User ID . . Notice that *USE gives the user *OBJOPR and *READ authorities on "YOURLIB". . *LIBL. . To do that. . . . > SNDMBR____ Name Name. . . > SNDFILE___ Library . . . . "SRCFILE"). . . . . we need to allow the user access to the file "SRCFILE". . . . . . "MKTAS400" is the address of the AS/400 at Minnesota State University. . . . type "X" under "Mgt" in the detail screen for that user. *CURLIB Character value Character value Name. Note that the object authority changes from *USE to USER DEF (meaning a customized authority). Sending and Receiving Network Files Users can send and receive network files to and from each other.*PUBLIC *EXCLUDE _ _ _ _ _ _ _ F3=Exit F5=Refresh F11=Nondisplay detail F6=Add new users F12=Cancel F10=Grant with reference object F17=To p F18=Bottom Press <F6> to add a user to the list of users authorized to this object. . object type along with the user you are granting authorities and the respective authority being granted. . . . Fill in the library name. . . This will allow them to do perform various operations on "SRCFILE" including copying members from the file. . . object name. *FIRST Additional Parameters To file type . . Press <Enter> to return to the previous screen. Use EDTOBJAUT to edit the authority on the file "SRCFILE". . . Changing Authorities with GRTOBJAUT and RVKOBJAUT To use GRTOBJAUT and RVKOBJAUT type the command and prompt <F4>. . . . To allow them to copy the entire file (i. . the member "SNDMBR" of the physical database file "SNDFILE" (which is contained in the library "SNDLIB") is to be sent to the user "RCV". . . . a message is sent to both the sender and receiver.

*LIBL____ Name. *LIBL. . > 'SNDMBR'__ Character value. . "Library". . . H. . . . *FIRST F10=Additional parameters F24=More keys F12=Cancel F3=Exit F4=Prompt F5=Refresh F13=How to use this display Fill in the "To data base file". . . . E. B. . . . Receive Network File (RCVNETF) Type choices. . . . . . . F3=Exit F4=Prompt F24=More keys F5=Refresh A *NORMAL__ A. Work with Network Files (WRKNETF) User . . . . . > 'SNDFILE'__ Character value . Library . *FROMMB R____ Name. *CURLIB . . . . . . . press Enter. . : User ID/Address . .VM/MVS class . . . . . . C. . library and member names and press <Enter>. . . . . . press Enter. . I *NORMAL. . . . From file . . Instead the output is bundled together with other output in an object . . . *FROMFILE__ Name. . G. *FROMFILE . *HIGH F12=Cancel F13=How to use this display The receiver will have to run the "Work with Network Files" (WRKNETF) command to inspect their network files. . *FROMMBR. . . To member . . . and "To member" blanks with the appropriate receiving file. *ONLY . . . . . The following screen will show up. . : Type options. Send priority . Note that the receiving file must already exist before trying to receive members. . F. . . . Printing Procedure When programs on the AS/400 produce output intended to be printed the material does not go directly to the printer. . 1=Receive network file 3=Submit job 4=Delete network file 5=Display physical file member File -------From----------Arrival---Opt File Member Number User ID Addre ss Date __ SNDFILE SNDMBR 1 SENDER MKTAS400 08/26/92 RCV_______ RCV_______ MKTAS400 Time 16:37 F3=Exit F4=Prompt F12=Cancel F5=Refresh F9=Retrieve F11=Display type/records Type 1 in the "Opt" blank in front of the network file to receive and press <F4>to prompt. Member to be received . . . D. . To data base file . .

option 6 in front of the desired member will generate a spooled file that is your program member. To work with your spooled files on your output queue type WRKSPLF and press <Enter>. the spooled file must be placed on a started writer and second. you should change the "assistance level" for this screen. These sub objects are called "spooled files.5" Printer Type Line Printer Line Printer Dot Matrix Location Morris Hall MSU ACC MSU ACC Lab Rooms If "Save file" is changed from "*NO" to "*YES" the spooled file will not be deleted after the file has been printed. change the attributes of the desired spooled file.called an "output queue" (*OUTQ). then. 11" 132/80 8. First. Spooled files should be deleted as soon as they are not needed to reduce clutter in your output queue. Typing 2 in the option field of spooled file in the WRKSPLF screen will change the spooled file's attributes. . Note: If this is the first time that you are using the WRKSPLF command. Note that if you do a print screen. first you must work with your output queue. specifying the correct print device name. you will have to press the <Reset>key to clear the message at the bottom of the screen in order to continue your session. two facts must be true. Moving a Spooled File to a Writer To get a physical copy of a spooled file on your output queue. The printer writer names at MSU are: Printer Name PRT01 VAXPRTS2 PS/2 printers Width/Paper 132 Col. By changing the attribute "Print device" from "*OUTQ" to a valid printer (use the WRKWTR command to find out which printers are available). Here are some: y y y From the WRKMBRPDM display. This will gives you more features on the screen. The system automatically generates spooled files in some cases like presenting job log. information on processed records for a database file and abnormal job end conditions. Try pressing the <F10>or <F11>keys to obtain different views of your spooled files. Typing 3 in the option field of spooled file in the WRKSPLF screen will keep the spooled file from printing if placed on a printer writer and change the status to *HLD." To send these spooled files to a printer. you will move your spooled file from your output queue to a printer writer. 11" 132 Col. This screen allows you to do many things with your spooled files. To do this press <F21>and change the assistance level from "basic" to intermediate". Pressing the Print Screen key (<Shift><Print Screen>on the PS/2 running PC-Support or <Ctrl>p on the ASCII connections) will generate a spooled file of the current display. There are several ways by which spooled files are generated. The attributes that you will be interested in are the "Print device" and "Save file". Typing 4 in the option field of spooled file in the WRKSPLF screen will delete the spooled file from your output queue. the spooled file must have a status of released.

type WRKWTR ("Work with Writers"). Type in the name of the printer <Enter>. Use the <Field EXIT>key or <Tab>to move to the desired spool file. Printing to a PS/2 Printer To see which PS/2 printers are available for printing from the AS/400. More Printing Help For more help on printing type STRSCHIDX <Enter>then type SPOOLED QUEUES <Enter>. This will allow you to work with your spooled files. The name of the printer is: "PC0" (i. the PS/2 workstation that is connected to the printer must be signed on to the AS/400. Press <Enter> . make sure it says "Ready". This will bring you back to the work with spool file screen. For the printer to be started. PC0614S2). If the status is HLD then release it by typing a 6 in the option field of the spooled file and press <Enter>. If the STS (status) is RDY or WTR the printer will print your spooled file. Normally you will not be authorized to print to writer PRT01. This will refresh the screen to show you the current status of your spooled files. Step by Step Printing Example Type WRKSPLF { or OQ } Press <Enter>. Typing 6 in the option field of spooled file in the WRKSPLF screen will will release a file that is held to become available to print and will change its status to *RDY. VAXPRTS2 is a printer that is connected to VAX1. select the "stop" option and then select "start". Also. make sure that the printer is ready for printing. Press the <F5>key. Common Problems . If not. Press 2 <Enter>. Press <Alt><Esc>on the computer that is attached to the printer to display the status of the printer. This printer is the system printer. This will permit you to change the spool file attributes. This will move us to the correct spool file option field. Type 5 in the option field. If you printed to VAXPRTS2. Make sure that the printer you want to print to has been started. The printer will never say it is started although it actually is. your printouts can be picked up in the ACC printer area at any time. This will mark the spool file for displaying. "P" + "C" + zero) + the number of the PS/2 to which the printer is connected + "S2" (e.g.e. This will display the spool file. Press <Enter>.Typing 5 in the option field of spooled file in the WRKSPLF screen will allow you to view your spooled file. Also make sure the printer's status is "ONLINE". This will move the file to the printer writer.

for example. To stop your infinite loop: y y y y Press <Left Ctrl> (this will reset any keyboard errors) Press <Alt><Print Screen>(this sequence is call "System Request") Type 2. When you have exceeded (or nearly exceeded) your storage quota and you try to start. you must clear the *PGM objects from library QRPLOBJ. endless. type in *IMMED i. The reader must substitute the appropriate names for source physical file and library. type option 4 (End) against the job that is causing the loop and press <F4>to prompt on the option. (This is the option on System Request to end a previous request. Because OS/400 retains every version of a *PGM object that results from a compilation. On the "Work with Active Jobs" display. Note: You can also press <Alt><Print Screen>and press <Enter>to display a menu of system requests. Ending Disconnected Jobs with Infinite Loops If for some reason you have been disconnect from the system while executing an infinite loop request the job may continue to execute. your storage can be used up very quickly. loop. You can see this information by typing: DSPUSRPRF username. can also be used. Out of Storage Quota Errors Depending on the specific class that requires use of the AS/400 there is a maximum storage quota allocated to your user profile. . DDS and Data Files on the AS/400 Creating a data file The following discussion assumes that you already have a source physical file in your current library. We will continue to use SRCFILE in library YOURLIB for explanation. The command will clear your objects out regaurdless of the error. You may get an authority problem do to the fact that you do not own all of the object in that library. you may get an error message "Error found on SEU command". where applicable. This can be done by typing WRKMBRPDM YOURLIB/SRCFILE on any command line. The first step is to to reach the 'Work with members using PDM' display. to end the job immediately. In the "How to end" field. This will cause the system to run very slowly. To deal with this problem. The locally-defined alias for WRKACTJOB. To end the disconnected job: y y y On a command line. Stopping Infinite Loops/Ending a Previous Request If you have issued a command and it is taking too long finish it may be an infinite. and then select the appropriate command.) Press <Enter> . AJ.e. Press <Enter>.Note that the command keys used in this section are those of the PS/2 running PC Support. type the "Work with Active Jobs" command: WRKACTJOB and press <Enter> . SEU. To do this type WRKOBJPDM QRPLOBJ .

. . .. . . .Functions++++++++++++++++++ *************** Beginning of data ************************************* 0001. . . . . . . you have to start the Source Entry Utility. *PRV. . . BAS... . C..A. BAS. Your_description_for_the_member_. . *SAME.. .. . press Enter.Name++++++RLen++TDpB. . . . YOURLIB___ *PRV Source member . . . . .. . . . . the screen looks as shown: Find . . Name. . . *PRV. Option . *LIBL.. . Press <F6> from the 'Work with members using PDM' display or type STRSEU on any command line and press <F4>. 2. . . . .. this type denotes aPhysical File. . . BASP. *BLANK____ *BLANK. . .. . Option . .______ Name.. . . *SELECT Name. . *SAME. ' '. Library .. . . . . The following screen shows up: Start Source Entry Utility (STRSEU) Type choices. . . When the prompter is invoked.To create a data file member. . . . . to create a data file called TESTDATA in the source file SRCFILE in library YOURLIB. 6 The Edit display shows up. .. *PRV Name. . . 5. Source file . . . .. For example. *BLANK____ Text 'description' . ' '. . BASP. fill in the fields as shown: Start Source Entry Utility (STRSEU) Type choices. . . .00 ****************** End of data **************************************** . The prompter helps you to supply the source information in the correct format.. .. . 6 *BLANK_________________________________ The Source type for a data file must be specified as PF. . Text 'description' . . *PRV Name. .. ... *BLANK. . . PF________ C. . _________ ____________________________________________ TESTDATA FMT PF . . Source type . Source file . SRCFILE___ Library .. Press <F4> to invoke the prompter and <F12>to cancel it. . *CURLIB. *SELECT Name. . . 5. . . Name. . . . . . 2. *CURLIB. . It is convenient to use the prompt facility for defining the DDS source. .T. ... . *PRV Source member . . .. *PRV______ __________ *PRV______ *SAME_____ Name. . . . . p ress Enter. . . . . . . . . . . . . TESTDATA__ Source type . .. . *LIBL.

Data_Type Choose one of the following: A for character data. Length Type a value to indicate the number of characters in a character field or the number of digits in a numeric field. Decimal_Positions Type a value from 0 through 31 to indicate the number of decimal positions to the right of the decimal point within a packed decimal. H for hexadecimal data. F for floating point data. R Type R in column 17 to indicate a record format name. a floating point. for Packed decimal the range is 1-31 digits and so on. . For example. . so for normal applications you may conveniently ignore them. a zoned decimal. . . . beginning in column 19. for Character type the range is 1-32766. K Type K in column 17 to indicate a key field name. Length ______ Data Type _ 0001. or a binary field. P for packed decimal data. or key field name in this position. field. Name Type _ Name ____ _ PF Ref _ Sequence number . Name_Type Choose one of the following: Blank Leave the field blank to indicate a field name. S for zoned decimal data. The maximum length allowed is 10 characters.00 Decimal Positions ___ Use _ Functions ___________________________ F3=Exit F11=Bottom F4=Prompt F12=Cancel F5=Refresh F24=More keys F10=Top An explanation of the different fields shown above follows: The fields marked with * are not commonly used.Prompt type . B for zoned binary data. Reference (*) Type R in this field to use the reference function to copy attributes of a previously defined named field to the field you are now defining. Name Type a record format.

the file TESTDATA will be created in YOURLIB.Functions++++++++++++++++++ *************** Beginning of data ************************* ************ 0000.. and choose option 14 (compile).A. . FIELD1 and FIELD2. Find TST1 . look into your spooled file (WRKSPLF) and identify the problem. .00 R RECFMT1 0002. ....00 FIELD1 10A 0003.00 FIELD2 5P 2 0004. Otherwise. Functions (*) Type in keyword entries valid for defining physical files in positions 45 through 80 of this field. . *LIBL.. FIELD1 is of character data type with length 10. Library . The member TESTDATA that was just created contains only the definition of the data file and hence our the next step is to actually create the file... Type UPDDTA on any command line and press <F4>. .Use (*) Type B or leave the field blank to indicate a field used for both input and output. For more details about exiting SEU refer to the section 'How to exit SEU'. . . __________ *LIBL_____ Name Name. From the 'Work with members using PDM' display... ..Name++++++RLen++TDpB. . . . The DDS source for TESTDATA is shown below. If the compilation is successful. position the cursor at member TESTDATA. The following screen shows up: Update Data with Temp Program (UPDDTA) Type choices. Data base file . . RECFMT1 is the record format name. use the command UPDDTA (Update Data Area).. Loading a data file To load a data file. . . . This can be done by compiling the member we have just created.. and FIELD2 is a packed decimal of length 5 with 2 decimal positions. ... __________________________________________________________ FMT PF ..T. *CURLIB .. . There are two fields in the data file.01 0001.00 K FIELD1 0005. .00 ****************** End of data **************************************** F3=Exit F10=Top F4=Prompt F11=Bottom F5=Refresh F24=More keys Press <F3>and hit <Enter>to save the member TESTDATA. The last line of the member declares FIELD1 to be the key field... press Enter. . .

. . Choosing the first option brings the following screen: . . . For example. . Starting SDA The first steps in creating a set of screens for a program are the same as those for creating a program source member. . Screen Design Using SDA To aid in the creation of user interfaces on the AS/400. To stop the process of loading the data file. or test a design. . *FIRST______ Name. *CURLIB Name. . Data base file . . and press <Enter>. . . . issue the command STRSDA (for STaRt SDA) from a command line. . . These screens may then be called from an application program. . see the manual for the language of the application source. . . .Member . defining input and output fields and special text attributes. . . . This system allows a programmer to "paint" screens and menus used by a program from within a simple editor. . . Member . A menu of options will appear which allow you to create a screen. *LIBL. This section will only cover those aspects of screen design not related to interfacing with applications. *FIRST Bottom F3=Exit display F4=Prompt F5=Refresh F12=Cancel F13=How to use this Enter the values for different fields and press Enter>. press Enter. For information on this area. . . . . . To create the screen design member. Library . . . press <F3>and press < Enter>. create a menu. . TESTDATA__ YOURLIB__ *FIRST____ Name Name. . . . . *FIRST Bottom F3=Exit F4=Prompt display F24=More keys F5=Refresh F12=Cancel F13=How to use this Supply the values for the data base file to be loaded and the library it is contained in. . . A source physical file must be created (or one already in existence may be used) and a member must be created in the PF-SRC to hold the screens. . to populate our file TESTDATA we would fill in the values as shown: Update Data with Temp Program (UPDDTA) Type choices. . . . . the operating system includes a utility called SDA (Screen Design Aid). allowing the program to have all the features of the AS/400 user interface without direct programming of the appearance of the interface.

. . __________ . . a single screen design member could contain any number of screens. Finally. *CURLIB Name. . Library . . Design option . .Design Screens Type choices. . . . create object Record . . *LIBL. F4 for Record list Name Name Name. . . . . . F4 for Member list DSPF. the screen should look like this: Design Screens Type choices. . . . . SCREEN1___ __________ SRCFILE___ YOURLIB___ SCRNMBR___ __________ Name. . . . . Since each member can have several records. with each one given a distinct record name. F4 for Member list DSPF. . . F4 for Record list Name Name Name. Also. *LIBL. . 5 1=Select file keywords 2=Select record keywords 3=Select subfile keywords 4=Select subfile control 5=Define screen image (fields) 6=Save DDS source. . . . Library . Additional records . . . . . . . . . . and a member specified. . . _ 1=Select 2=Select 3=Select 4=Select file keywords record keywords subfile keywords subfile control keywords 5=Define screen image (fields) 6=Save DDS source. ____ ______ F12=Cancel Name. . It will default to the proper type for SDA. . . . . it will be created. __________ . . . Member . . . . . __________ Work Screen) . . create object Record . . F3=Exit F4=Prompt . . . . . . press Enter. . . *LIBL_____ . Design option . . (to be displayed on Source file . . Source type . . . . press Enter. Blank for default Since no screen design exists yet. . . . . . . Blank for default keywords F12=Cancel The "SOURCE TYPE" field may be left blank. Once the information is entered. . . . a source file must be provided. *CURLIB Name. . . Additional records (to be displayed on Work Screen) Source file . Source type . QDDSSRC___ . . Member . a record name must be given. If the member does not yet exist. it is necessary to first create one using the "5" option on the "Design option line". . . F3=Exit F4=Prompt .

F4=Prompt Press <F4> to have the Work with Fields display appear. copy. . To add a floating point field. Press <F11>to switch back and forth between the list of selected data base fields and the list of not selected database fields. add a numeric field followed by E (single-precision) or D (double-precision) and press Enter. or B (both) for alphabetic fields. The ruler does not interfere with your data. You indicate the length of a field by the number of characters following +. F14=Ruler Press <F14>to place a vertical and horizontal ruler on the Work Screen where you position the cursor. type + followed by I (input). Press <F14>to remove the ruler. or 9 (both) for numeric fields and press Enter. 6 (output). or by the length specified in brackets after the first character. Defining fields on the ruler may cause unpredictable results. and remove fields. F10=Database Press <F10> to have the Select Data Base Files display appear. O (output). F11=Switch Press <F11>to display a list of selected database fields on the bottom row of the Work Screen. F12=Cancel Press <F12>to save your work and continue to the Design Screens display. Adding Fields To add a user-defined field. place fields you have selected from a database. This is simply a blank "pasteboard" on which you may place text and fields. You can also perform additional operations. F17=Print Press <F17> to Print the current contents of the Work Screen. F6=Condition Press <F6> to have the Condition Work Screen display appear. You can use uppercase or lowercase letters. F15=Subfile Prompt Press <F15>to Display a prompt on the bottom row of the Work Screen that allows you to change the subfile line (SFLLIN) and subfile page (SFLPAG) sizes that were in effect for the current record being defined. shift. Pressing <Enter> will bring up the main SDA display. and add or remove attributes and colors. On the Work Screen you can add fields and constants. Using The Work Screen Use the Work Screen to design the display you are creating. move.These options will start SDA on a screen named SCREEN1 in the member SCRNMBR of file SRCFILE in library YOURLIB. <F1> is active on all displays but does not appear in the function key area. or followed by 3 (input). such as requesting extended field definition. F3=Exit Press <F3> to have the Design Screens display appear. You can use the following function keys on the Work Screen: F1=Help Press <F1> to show the same information as the help key.

Use a double quotation mark to end one constant and start a new constant while taking up only one position.999d or +9(5. Press < F12>to return to the Work Screen. the Define Message Constant display appears. input field with two decimal positions (set by an edit word). To add a MSGCON (MeSsaGe CONstant) field. type + followed by M. +3. both (input and output). To add system date or time fields. floating-point field with three significant digits and two decimal positions. Surround a character string with single quotation marks to define a single constant. +66. floating-point field with five significant digits and three decimal positions. You cannot use a DBCS insert key on the Work Screen.3)D Double-precision. input. 'xxx YYY zzz' Combines three constant fields into one field. type *DATE or *TIME.The following examples illustrate user-defined fields: +BBB or +b(3) Three-character. appear on the bottom row of the Work Screen. Surround several constants with single quotation marks to redefine them as one constant. +99. alphabetic. When you press Enter. The fields begin in the position where you type &. if you are in multiple mode. and the column heading position and pressing Enter. +MMM or +(M3) The Define Message Constant display appears. Adding Constants To add a new constant or change an existing constant: y y y y y y y y Type a constant.2) Four-character.33E or +3(3. both (input and output) field. Type constants with single quotation marks to define separate constants for each character string (word) that is followed by a blank. SDA will replace each pair with a shift in and a shift out pair when you press <Enter>. You can then type DBCS data between the delimiters. numeric. Use the at sign (@) in pairs to delimit a DBCS (Double Byte Character Set) constant.2)e Single-precision. The following examples illustrate constant fields: 'xxx"YYY' Defines two constant fields.66 or +6(4. You move fields from the bottom line to your display by typing & followed by the field number. To work with a MSGCON field. A blank character ends the constant. type ? in front of the field. Adding Fields from a Data Base File The fields you select from a database file. The following examples illustrate moving fields to your display: .

Copying. Left-aligns column heading f or an alphabetic field and right -aligns column heading for a numeric fields. &nR Places field. Adds a column heading to the left of the field. == . Moving.Single Field Mode Mode &&n &L &R &C Symbol Multiple Field Meaning Field Places field. and Shifting Fields Reposition fields on the Work Screen by typing one of the following and pressing <Enter>: -. &P Adding or Removing Attributes and Colors To add or remove display attributes or colors on the Work Screen. pressing < Enter>.in the position preceding the field (the attribute byte of the field) and type = where you want the field to appear. type one of following commands (in uppercase or lowercase) in the position preceding the field (the attribute byte of the field): Command Add Remove H R S B N U -H -R -S -B -N -U -A Attribute High intensity Reverse image Column separators Blink Nondisplay Underscore Remove all attributes Command Add Remov e CB CG CP CR CT CW -CB -CG -CP -CR -CT -CW -CA Color Blue Green Pink Red Turquoise White Remove all colors You can carry out the above operations by typing * in the position preceding the field (the attribute byte of the field). -. and working with the field keyword displays that appear. &nL Places field. &nC Places field. Adds a column above the field. &nP Places the column heading only. Does not add column heading. = Type . Adds a column heading to the right of the field.

and type == where you want a copy of the group of fields to appear. You can rename the field by changing the name on the last row. file.in the position preceding the field (the attribute byte of the field) and type == where you want a copy of the field to appear. Removing Fields Remove fields from the Work Screen by typing one of the following and pressing <Enter>DO NOT use the <Delete>key to delete items on the work screen: Blanks Type a blank in the position preceding the field (the attribute byte of the field). D Type D in the position preceding the field (the attribute byte of the field). You can change the message number. type . to shift the field left or right as far as the signs extend. Display MSGCON field definition Type ? in the position preceding the field to show the Define Message Constant display.in any position after the last field. Subfile Field Definition You can define fields for a subfile similar to nonsubfile fields with the following considerations: . Date and time keywords Type *DATE or *TIME to define special constants on the display where the system date and time will be automatically substituted. Display field length and description Type ? in the position preceding the field to display field length and text or column heading description on the last row of the Work Screen. == Type . -. >>> Type <<< in the position preceding the field (the attribute byte of the field).Type .in any position preceding the field. -. or type >>> after the field (over the first attribute byte). Additional Features Extended field definition Type * in the position preceding the field (the attribute byte of the field) to add field-level attributes and keywords. and library. and over the entire field. <<<.

Note that it isn't necessary to save a file after every RECORD created. . . . . . Compiling And Testing Screens Once the screen design is complete and <F3>is pressed. . . (CRTDSPF) Display file . . Y SRCFILE___ YOURLIB___ SCRNMBR___ Y Y SCRNFIL___ YOURLIB_ __ Y 20 Y QBATCH____ QGPL______ Y=Yes Name Name. .Create Display File Type choices. *LIBL . 30 Y=Yes Name Name. . . . . This can be accomplished using the "Test Display Files" option from the initial SDA menu. . . Library . . . . . . . . . . Job description . . . . . Replace existing member . F3=Exit F12=Cancel . . Several screens from a single member can be created before compilation. . . . . . . . . . . . . Using the "6" option for a screen produces the following display: Save DDS . Library . . . It may be advantageous to test screen designs before using them with programs. .. . . Source file .y y y You can modify fields on the first record of the subfile. . . . . Submit create job in batch . . <F15>is allowed only for subfile records. the file must be compiled before exiting SDA. . . . . . . . . . .. . . To modify the values of the SFLPAG (number of records on the display) and SFLLIN (number of spaces between fields). . press < F15>to display the subfile prompt line.. Any field that you define for the subfile will appear the number of times specified by the SFLPAG keyword. . . . . Create file if DDS message severity (GENLVL) is less than . *LIBL .. . . . . . . . . . . . . These options will compile all the screen records in member SCRNMBR of file SRCFILE in library YOURLIB to a *FILE object called SCRNFIL in YOURLIB. . display listing . . . PDM returns to the "Design Screens" menu shown above. . . . . . . . .. . . . Choosing the "6" option on the Design Option line saves the source file for the screen and compiles it into a screen file which may be used by a program. . . . . . . . IF THIS OPTION IS NOT CHOSEN AFTER THE SCREEN DESIGN IS COMPLETE. . Y=Yes Y=Yes 0. That file may then be used by user programs. . However. .. If create fails. . . . Library . F4 for list Y=Yes Y=Yes F4 for prompt Name Name. 20. . . Anything you type is assumed to be a definition of the first record. THE MODIFICATIONS WILL NOT BE SAVED. . The screen test program will request the name of a screen and display file (created using the compilation procedure above. . . . 10 . . . . . Replace existing file . Save generated DDS source . . . . Member . . *LIBL . SDA displays the screen with the values supplied. . . . . . . . Create display file .) followed by a prompt screen for values for the output fields. . press Enter. .

*SRCMBRTXT_____________________________ Additional Parameters Compiler options . . > TEST______ Name. > SRCFILE___ Name . . . editing. F3=Exit F4=Prompt display F24=More keys F5=Refresh *DEBUG____ *SOURCE___ *EXTENDED__ 2046____ F12=Cancel *LIST. To specify these options at compilation time. . first prompt on the compile option on the Work with Members Using PDM display (or on the CRT___PGM command for the language of the source file) by pressing < F4>(PROMPT) with the "14" (COMPILE) option on the options line of the file you wish to compile. . . . > YOURLIB___ Name. . . . . . . . . . *CHECK. . since the debugger does not list source lines as the program executes. . .. . . These will. Program . . This will show the initial options screen for the compiler. 256 -32767 F13=How to use this The above example is from a Pascal source member. Source member . . *ANSI83. . *CURLIB . as the compiler adds its own line numbers to the source which will be necessary in referencing specific lines while using the debugger.. + for more values Language level . other languages will have similar prompt displays. . . . This source output should be printed before starting the debugger. . Library . . .Debugging Programs on the AS/400 In addition to the utilities provided for creating. . which reveals the following screen: Create Pascal Program (CRTPASPGM) Type choices. . . > YOURLIB___ Name. *SYSTEM String temporary threshold . . . . To enter the compiler options. the source program must be compiled with the *DEBUG and *SOURCE options. press Enter. *PGM . . Text 'description' . . . respectively. . . . . *CURLIB . . *EXTENDED. . . include debugging information in the executable program (so the debugger has access to variable and routine names) and produce a source output listing from the compiler. . . this tool allows the user to view and change the values of variables and step through the program by using breakpoints which interrupt program execution and return control to the debugger. and compiling programs. Library . . . . . . . . . . . the AS/400 provides a facility to aid in the debugging of programs as they are running. . *NOLIST. . *LIBL. . . . . . Called the EPM (Extended Program Model) debugger. However. Source file . Starting the debugger Before using the debugger. . The source output is also useful as a hardcopy reference while the program is executing. . > TEST______ Name . it is necessary to prompt for more options by pressing <F10>.

You may specify 1 to 10 statement numbers where the breakpoint should occur. The command ADDBKP is used to set breakpoints. Display the program variables with DSPPGMVAR command: . The simplest form of ADDBKP takes the following form: where n1. ===> call YOURLIB/TEST You will notice that the program stops execution when the breakpoint is reached. Phase 2 (Add Breakpoints) A Breakpoint is a place in a program where the system stops the processing of that program and gives control to the display station user or to a specified program. From the 'Display Break Point' screen. 2. 3.. 4. the next step is to run the program using the CALL command. n10) Phase 3 (Calling the Program) Once the breakpoints are set. After the member has been compiled (assuming there are no errors in compilation. that you intend to debug.. This will take you to the command entry screen.. you can check the values of the program variables as explained below: y y Press <F10>(command entry) on the 'Display Breakpoint' screen. Pressing <Enter>once all options are entered will submit the compilation.) the source listing should be printed and used with the next steps. Using the debugger The process of Debugging essentially consists of four phases: 1. n10 are the statement numbers where the breakpoint is to occur.. For example. ===> addbkp stmt(n1 n2 . The program breaks before processing a statement specified as a breakpoint. ' addbkp stmt(10 20 30) ' will set the breakpoints at statements 10. 20 and 30. n2 .Placing the *DEBUG and *SOURCE options on the "Compiler options" lines will cause the compiler to produce a source listing and place it in the output queue and will include debugging information in the output program. Start the Debugger Add breakpoints Call the program to be debugged and End the Debugger These phases are discussed in detail below: Phase 1 (Start the Debugger) The command to start the debugger is: ===> strdbg YOURLIB/TEST where TEST is the program in library YOURLIB.

Terminal Setup PC-VT 9. the blocks of 4 characters at the bottom of the screen. Confirm that your copy of PC-VT is V9. you can check for as many variables as you want to from the command entry screen. 7. before you issue any other command. 'Go to SETUP B'. 1. The command to do it is: ===> enddbg APPENDIX A . Select option 5. Next set the data bits to 8 and the stop bits to 2. Ending the Debugger Once you are done with debugging. Press <Enter>to resume execution of the program. save the changes you have made to the SETUP so that you will not have to repeat this setup the next time you use PC-VT.===> dsppgmvar VARNAME where VARNAME is the variable name you intend to display. it is very important that you end the Debugger. You should now change the feature switches.VT-100 to PS/2 (PC Support) Keyboard Mapping . y y Using the above command. 3. Select Data/Parity Bits. Start PC-VT and immediately go into the setup by pressing CTRL-F1. 4.0 Terminal Setup Instruction The following should assist you in setting up PC-VT V9. Finally. You should next set the modem speed to 9600. APPENDIX B . Select Modem Speed. 9. Versions prior to V9.0 for use with the IBM AS/400 via a port selector connection. This may be done with menu option P. or will terminate.0. This may be done by placing the cursor above each feature switch you wish to change and pressing the 6 key to toggle the switch to the correct value. 2. This may be done with menu option 7. 8. This may be confirmed by starting PC-VT and noting the version number on the initial screen or by entering the setup A screen. This may be done by pressing the S key. The program will stop at the next breakpoint if any. Feature switch settings: 1 2101 2 0X11 3 0000 4 1110 5 0001 6 0110 7 1X10 8 000X 9 XXXX 0 XXXX 6.0 will not support the cursor keys during an AS/400 session. To exit the command entry press <F3>. so that they match those given below. Control is transferred back to the breakpoint. You may use the <ESC>key to exit the setup mode and return to the emulator mode from which you may access the port selector. 5.

<Alt><Pt Scn><ESC>s System Request APPENDIX C . This facility is self-paced so the user can work the modules when it is convenient. so the next time he/she is using education. Special Char <ESC><CTRL>w Indicator Toggle <ESC><CTRL>a Refresh screen <Left Ctrl><ESC>r or <CTRL>r Reset term. which gives feedback on how much information the user retained from that module. This facility is set up for the user to work through any topic he/she is interested in. the system will automatically return the user to the place where they left off. using the bookmark utility to keep track of where the user has left off. Getting Started .PS/2 Key Nam Micro -Term Key Sequence Typical use <F1><ESC>1 Help <F2><ESC>2 Switch View <F3><ESC>3 Exit <F4><ESC>4 Prompt <F5><ESC>5 Refresh Screen <F6><ESC>6 <F7><ESC>7 Roll Down <F8><ESC>8 Roll Up <F9><ESC>9 Get Previous Cmd <F10><ESC>0 Move to top <F11><ESC> List Toggle <F12><ESC>+ Cancel <F13><ESC>! or <ESC><SHIFT>1 User support <F14><ESC>@ or <ESC><SHIFT>2 <F15><ESC># or <ESC><SHIFT>3 <F16><ESC>$ or <ESC><SHIFT>4 Main menu <F17><ESC>% or <ESC><SHIFT>5 <F18><ESC>+ or <ESC><SHIFT>6 <F19><ESC>& or < ESC><SHIFT>7 Scroll left <F20><ESC>* or <ESC><SHIFT>8 Scroll right <F21><ESC>( or <ESC><SHIFT>9 <F22><ESC>) or <ESC><SHIFT>0 <F23><ESC>_ or <ESC><SHIFT> Scrl Option <F24><ESC>= or <ESC><SHIFT>= Scrl Menu <DEL><DEL> Delete chara cter <Shift><Insert><CTRL>d Duplicate <Enter><RETURN> Send screen <Backspace><ESC>i <Right Ctrl><LINEFEED> or <CTRL>j Field exit <Home><ESC>H <Insert><ESC><DEL> Insert mode <Page up><ESC>u <Page down><E SC>d <Shift><Pt Scn><CTRL>p Print Screen <Tab><TAB> Next field <Shift><Tab><ESC><TAB> Previous field <ESC><ESC>a or <CTRL>a Attention <Alt><F7><ESC>(grave accent) Ins.Using On-line Education (EDU) Introduction Online education is a facility provided by IBM to assist the user in learning about the AS/400. There is a quiz at the end of most modules. err.

To assign it to a printer. To see a list of all started printers. 7. At the Printer to use prompt. obtain a screen print of the screen that tells you how many you answered correctly on the first try. Press the <Reset>(at the bottom left hand corner of the keyboard). This will give you a list of all started printers and from here you can select one by typing a 1 on . which tells you that it has been sent to the default printer device. change. 5. To check your screen print type WRKSPLF (work with your spool files). Next. There are several courses in online education but the most useful ones in terms of using the AS/400 are: o Tutorial Support System o Facilities and Implementation o Application Design and Development Tools Type 1 to select the desired course <Enter>. Select 5. You can select all modules or one of the listed categories. type a 2. To exit in the middle of a module press <F3> where this option is available. or a combination of both. and press <Enter>. To Obtain a Screen Print Press the <SHIFT>and PRINT SCREEN key (towards the upper right hand corner of your keyboard) at the same time. If you forget to get a screen print. 6. Select course <Enter> 3. Your most recent screen print will be located at the bottom of the list and it will be titled QSYSPRT.1. This will change the status from not assigned to a printer. to clear this message and continue your session. This can consist of questions from the module or examples that you walk through. The COMS 175---Command Language audience path is customized for the CS175 class. Type 1 to select one of them <Enter>. Select 4 to select an audience path for the course <Enter>. to assigned to a printer. exiting and setting a bookmark. Exit online education by pressing a series of <F3>keys until you have reached a command line. From any command line type ==>STREDU <Enter> STREDU is an abbreviation for Start Education. For the CS175 class. you can either select 1 to start the first module in the selected audience path of the course or 3 to select any module < Enter>within the selected course. To display a description about a course select 8 in front of that particular course. When the screen has been captured you will see a message at the bottom of your screen. when you are finished with the quiz. there is a quiz. 2. 4. This will give you a choice of exiting the module. At the end of most modules. exiting and marking it complete or go to a topic/subtropic menu for the module. you need to go through the quiz again to get to that screen. type the name of the printer you would like to send your printout to and press <Enter>. Follow the directions and read each screen carefully. press <F4>on this line.

3. Display message to see if completed successfully . Go to step III. In PDM: <F6> . BAS. see the section "Printing Procedure" in this manual. Page to bottom of file. Create a source physical file (optional) . Work in program development manager  STRPDM  WRKLIBPDM  WRKOBJPDM  WRKMBRPDM 3. 2. 5. etc. 1. Start source entry utility . Since there may be multiple ways to complete a task.if so create or attain them.create a member. 2. Compile the source member to attain object and compiled. If program gives a run-time error.DSPMSG Check spool file to see if any Fatal errors or warnings. o CALL library/programname o Option 16 from a WRKOBJPDM screen. If there are errors or fatal errors go to to step III and correct. Correct error. o Option 14 from the PDM lines.CRTSRCPF 3.if so create or attain. Create a library (optional) . Log in.where ___ can be CBL. Look for error and statement number. 4. Cross reference statement number with source line number with spool file WRKSPLF 3. 1. PAS. 2. APPENDIX D . If there are any warnings determine if they are important and if deemed so go to step III and correct. o Does program need other programs . Setup area for source 1. Move cursor to error description . 0. Choose option 5 . spool file.hit <F1> (help) 1. Execute the program. Check for dependencies. 4. 0. You will return to the screen where you pressed <F4>. Wait for compilation to complete.DISPLAY. Press <Enter>again to accept this printer..STRSEU 2. various ways of doing essentially the same thing are shown under each outline heading.How to program on an AS/400 The following outline details the basic steps of program development on the AS/400. 4. o CRT___PGM . Type source into physical file member. Note if there are any warnings or errors or fatal errors. o Does program need data files . some more appropriate than others depending on the situation. C.the line before the desired printer. For more information on printing..CRTLIB 2. PAS.. WRKSPLF 1. . Press <Enter> to select this printer.

After you have completed this form send it in the campus mail to: AS/400 Staff Computer Services Box 45 Today's Date: Your Name: Your Phone No. Be sure to print your name and address below if you would like a reply. subject matter.06 Copyright Minnesota State University. Reader's Comments Use this form to tell us what you think about this manual. appearance) or make suggestions for improvement.Log off. Mankato © 1992. or if you want to express your opinion about it (such as organization. this is the form to use. If you have found errors in it.1995 Last modified: Thu Sep 18 00:28:14 CDT 2003 Jeffrey Hundstad .: Your Address: Your Comments: Version 2.

Master your semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master your semester with Scribd & The New York Times

Cancel anytime.