Top Banner
Week # 2 - Agenda Types of AS/400 Objects Qualified/Unqualified Names Object Management CL Syntax Library List User Jobs Spool Files and Printing PDM (Programming Development Manager) SEU (Source Entry Utility)
36

Week # 2 - Agenda

Jan 03, 2016

Download

Documents

Martin Blake

Week # 2 - Agenda. Types of AS/400 Objects Qualified/Unqualified Names Object Management CL Syntax Library List User Jobs Spool Files and Printing PDM (Programming Development Manager) SEU (Source Entry Utility). Week # 2 Types of AS/400 Objects. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Week # 2 - Agenda

Week # 2 - Agenda Types of AS/400 Objects Qualified/Unqualified Names Object Management CL Syntax Library List User Jobs Spool Files and Printing PDM (Programming Development Manager) SEU (Source Entry Utility)

Page 2: Week # 2 - Agenda

Week # 2Types of AS/400 Objects

All AS/400 objects are categorized by object type. An object’s type defines the object’s purpose and how it can be used on the system.

OS/400 provides more than 40 object types that encompass all applications and system resources, including programs, data, and hardware.

Page 3: Week # 2 - Agenda

Week # 2Types of AS/400 Objects (Continued)

Object type Object description Attribute (subtype)

*CMD Command --*FILE File PF -SRC (Source File) PF -DTA (Physical file)

LF (Logical file)DSPF (Display file)PRTF (Printer file)

*JOBD Job description --*LIB Library --*OUTQ Output queue --*PGM Program (executable) Source language

(e.g., CBL, CLP, RPG)*QRYDFN Query definition --*USRPRF User profile --

Page 4: Week # 2 - Agenda

Week # 2Types of AS/400 Objects (Continued)

When you create an object and give it a name, the system assigns the object type, as determined by the command you used.

Examples:

Command CRTUSRPRF (Create User Profile) generates the object type *USRPRF

Command CRTLIB (Create Library) generates the object type *LIB

Page 5: Week # 2 - Agenda

Week # 2Types of AS/400 Objects (Continued)

Some CL commands work with any type of object, but there are object types that have certain CL commands that can be used only for that type.

Examples:

DSPOBJD (Display Object Description) command works for objects of any type

DSPUSRPRF (Display User Profile) command works only for *USRPRF objects

Page 6: Week # 2 - Agenda

Week # 2 Types of AS/400 Objects (Continued)

When you create an object, it “goes into” a (User) library (unless the object created is, in fact, a library). This is not a physical collection of objects but a single-level directory to a group of related objects.

Page 7: Week # 2 - Agenda

Week # 2 Types of AS/400 Objects (Continued)

A library also provides a logical reference to objects by using address pointers.

The type and authorization level of each object is associated with the library entry for that object.

(Present whiteboard illustration now)

Page 8: Week # 2 - Agenda

Week # 2 Requesting an Object

When you request an object (by selecting a menu option or by entering a command), it usually is not necessary to specify the library name in which the object resides.

You specify an object name (up to10-characters without a library reference), and the system searches the job’s current library list to locate an object matching the specified name and type appropriate for the request.

Page 9: Week # 2 - Agenda

Week # 2 Requesting an Object (Continued)

Example: You want to use the CALL command to execute a program. The CALL command’s only required parameter is the name of the program; so if you want to run a program named ACTCUS (to list all active accounts in a customer file), you would enter the command

CALL ACTCUS

Page 10: Week # 2 - Agenda

Week # 2 Requesting an Object (Continued)

The only valid object type for a CALL command is *PGM, so if you include the object type in the library entry, the system can determine whether it’s type is appropriate for the requested operation without having to locate and load the actual object.

Page 11: Week # 2 - Agenda

Week # 2 Qualified/Unqualified Names

To run, for example, program ACTCUS in library TSTLIB1, proceed in two ways:

Change the library list, or Use a qualified name for the object

(the most direct because it includes a reference to a library + the 10-character object name), which would take the form –

CALL libref/objname

Page 12: Week # 2 - Agenda

Week # 2 Qualified/Unqualified Names (Continued)

In the form libref/objname, libref is an explicit library-object name; therefore, to execute program ATCUS in library TSTLIB1, specify the following CALL command:

CALL TSTLIB1/ACTCUSHere, the system searches only library

TSTLIB1 for program ACTCUS.

Page 13: Week # 2 - Agenda

Week # 2 Qualified/Unqualified Names (Continued)

The library specified in an explicit qualified name does not need to be in your library list, but you (the requester) must be authorized not only to use that library but also to use the object within the library. The first thing the system does is determine whether you have proper authority to the library you named.

When you use a simple unqualified name, the search for an object is limited to your library list. The system determined that were authorized to use the library-list libraries when your job began. (Attempting to add to your library list a library to which you are not authorized will cause an error.)

Page 14: Week # 2 - Agenda

Week # 2 Qualified/Unqualified Names (Continued)

If you are authorized to the library specified in an explicit qualified name but the system cannot find a matching object name of the appropriate type, or if you are not authorized to use the object, the system does not search beyond the specified library. Instead, the system returns a message such as “Object OBJNAME in library LIBNAME not found” or “Not authorized to object OBJNAME in library LIBNAME.”

Page 15: Week # 2 - Agenda

Week # 2 Qualified/Unqualified Names (Continued)

It might be necessary to use a qualified name if:

Objects with the same name and type exist in more than one library in your library list

You need an object that is not in any library in your library list

To use a qualified name, you need authority adequate for the intended use, both to the object and library.

Page 16: Week # 2 - Agenda

Object Management Definition > ‘An object is information

stored on the iSeries system that can be operated on by using commands & programs.

Some types are > Program, File, Folder & Library

Main characteristics are > Name, Library, Type, Attribute, Owner Name, Creator Name & Authorization

Page 17: Week # 2 - Agenda

Object Management(Continued)

Comparing types > Source Physical File vs Data File (wb)

Life Cycle of code from development to execution(wb)

Difference between a Member and an Object (i.e. Programs & Files) (wb)

Page 18: Week # 2 - Agenda

iSeries Libraries

Differences between System, Product and User libraries

A User library is an object that groups related objects of other types including programs and files

Current Library

Page 19: Week # 2 - Agenda

Library List A Library List (on the iSeries) is a ‘search

path’ that specifies the Current library and a group of System, Product and User libraries that a job uses when searching for required objects (from top to bottom). (dmo)

Qualified vs Unqualified jobs (wb) Job Description defines the default Library

List for User profiles (Parameter in the User profile) (wb)

Page 20: Week # 2 - Agenda

Library List(Continued) The QGPL and QTEMP should be

standard on all Library Lists (dmo) As of OS/400 release 5.1, the

maximum # of libraries allowed on the Library List has been increased to over 200 libraries.

The iSeries commands relating to the maintenance of the current Library List is temporary for that sign-on session. (wb)

Page 21: Week # 2 - Agenda

PDM(Programming Development Manager)

Walk thru of Options 1, 2 & 3

Page 22: Week # 2 - Agenda

SEU(Source Entry Utility)

CODE/400 Editor Source Entry Utility Editor (Create a sample DDS)

Page 23: Week # 2 - Agenda

CL Syntax

Command-name

(space) parameter

Page 24: Week # 2 - Agenda

CL Syntax

Do all commands have parameters?

Why should you always press F4 following a command instead of enter?

Page 25: Week # 2 - Agenda

Positional or Keyword?

By Keyword, both these are allowed

CRTLIB LIB(ACTLIB) TYPE(*TEST) TEXT(‘Accounting’)

CRTLIB TYPE(*TEST) TEXT(‘Accounting’) LIB(ACTLIB)

Page 26: Week # 2 - Agenda

Positional

Allowed: CRTLIB ACTLIB *TEST

Not Allowed CRTLIB *TEST ACTLIB

Page 27: Week # 2 - Agenda

Menu

Menus GO MAIN main menu (F16) GO MAJOR major commands menu (F4) GO VERB action menu GO SUBJECT objects menu GO CMDxxxx verb, noun, function

Page 28: Week # 2 - Agenda

4 Parts of a Library List

(or the 4 library list types) System (SYS) Product (PRD) Current (CUR) User (USR)

Page 29: Week # 2 - Agenda

Library List Commands

ADDLIBLE Adds an entry to a library list to the

USER portion of the library list RMVLIBLE

Removes an entry from the USER portion of the library list

EDTLIBL Adds/Deletes/Changes entries on the

USER portion of the library list

Page 30: Week # 2 - Agenda

Library List Commands

CHGCURLIB Changes the Current Library

CHGLIBL Changes the Current Library and

allows Add/Change/Delete to the USER portion of the library list.

All Library List commands are listed on the CMDLIBL menu.

Page 31: Week # 2 - Agenda

A Library Search

Direction of search

Part of Library List

Library Contains Object

Object Type

System QSYS QHLPSYS QUSRSYS

Current MYLIB

ACTCUS PROGA FILEB

*FILE *PGM *FILE

User ARLIB TSTLIB1

FILEM ACTCUS FILEX ACTCUS

*FILE *PGM *FILE *PGM

Page 32: Week # 2 - Agenda

Spooled Files

AS/400 objects that contain data for printing

Are stored in Output Queues To print a Spooled File, the file

must be moved to an Output Queue attached to a printer.

Page 33: Week # 2 - Agenda

How Do Spooled Files get Created?

Program/Command

Data ReportLayout

Job Output Queue

*FILE*FILE

Spooled File

QINTER

Page 34: Week # 2 - Agenda

CE233A01

SPLF#1

SPLF#2

PRT01

SPLF#3

SPLF#4

Change theSpooled Fileto OutQPRT01

Page 35: Week # 2 - Agenda

Work with Jobs Command To display information about your current

Interactive job, simply type: WRKJOB To display information about any other

job, use the Work With Job and enter the Job Name and User. Number is Optional.

To display your Batch Jobs, use the Work with Submitted Jobs Commands (WRKSBMJOB)

Page 36: Week # 2 - Agenda

WRKUSRJOB Shows you a list of all of the jobs that

you own on the system irregardless of the subsystem

Status Active = Job is currently running Outq = Job is finished Jobq = Job is waiting to process.

To delete a ‘run-away’ job, take option 4