Presentation on theme: "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."— Presentation transcript:
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 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.
Week # 2 Types 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
Week # 2 Types 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
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.
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)
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.
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
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.
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
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/ACTCUS Here, the system searches only library TSTLIB1 for program ACTCUS.
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.)
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.”
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.
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
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 )
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
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 )
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 )
PDM (Programming Development Manager) Walk thru of Options 1, 2 & 3
SEU (Source Entry Utility) CODE/400 Editor Source Entry Utility Editor (Create a sample DDS)
CL Syntax Command-name (space) parameter
CL Syntax Do all commands have parameters? Why should you always press F4 following a command instead of enter?
Positional or Keyword? By Keyword, both these are allowed CRTLIB LIB(ACTLIB) TYPE(*TEST) TEXT(‘Accounting’) CRTLIB TYPE(*TEST) TEXT(‘Accounting’) LIB(ACTLIB)
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
4 Parts of a Library List (or the 4 library list types) System (SYS) Product (PRD) Current (CUR) User (USR)
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
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.
A Library Search
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.
How Do Spooled Files get Created? Program/ Command Data Report Layout Job Output Queue *FILE Spooled File QINTER
CE233A01 SPLF#1 SPLF#2 PRT01 SPLF#3 SPLF#4 Change the Spooled File to OutQ PRT01
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)
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