You are on page 1of 59

Frequently asked Questions in AS/400

1. Define a shared access path? To share the open data path by various programs in a same job. 2. What is the difference between array and a multiple occurrence data structure? The values stored in array don’t vary. In the other hand, we can store the Different values in same variables at various stages. 3. What is *INZSR used for? It is special type of RPG/400 subroutine, which is executed automatically at beginning of the program. It is a good place to code initializes the variables. 4. How can you execute a command from within an RPG program without calling a CLP program? By calling QCMDEXC application program interface we can execute a CL command with in an RPG program. 5. What is the purpose of the "N" in the following calculation specification? C KEY CHAIN FILE N 99 If you specify 'N' in 53rd position, the record will not be locked if you try to read the locked record. It is a way of avoiding the record lock. 6. Which of the following operations does NOT zero the field FLDA defined as 4,0? C C C C C C C C MOVE Z-ADD Z-ADD MOVE SUB MOVE CLEAR MOVE *ZEROS *ZEROS 0 *ALL'0' FLDA '0000' FLDA *BLANKS FLDA FLDA FLDA FLDA FLDA FLDA FLDA

The last instruction does NOT zero the field FLDA. 7. How can you check for a records existence without causing and I/O (CHAIN/READ)? With the help of File Information Data Structure, we can check existence of records in a physical file. The code is described below: In File description continuation line (IPFK), KINFDS RCDS IRCDS DS I *RECORD #RCDS with the above code we can check the existence of records in a file without causing I/O operation. 8. Define what a data area is along with a brief example of what it may be used for? Data area is a storage area to store limited information. Example: a new and unique customer number is generated whenever a new customer is added to customer master file. Data area keeps track of last record added and add 1 to it. Through program we can access new customer number. 9. Define what a data queue is along with a brief example of what it may be used for? Data queues provides communication between programs by calling API's QSNDDTAQ and QRCVDTAQ along with parameters like data queue name, library in which data queue exists, Frequently Asked Questions in AS/400 Page 1

variable to store the number of characters to be sent, variable to store the information to be sent. We can send the same data queue to the many programs. 10.What is the purpose of the following? I 'CLOSED' C STAT01 I 'OPEN' C STAT02 It is a type of initializing the variables in I-spec. and these are further used in C-spec. 11.What is the difference between UDATE and the system date? UDATE supports two-digit year. The format is *MDY (MMDDYY). *DATE (system date) supports four digit year. The format is *MDYY (MMDDYYYY). 12.List some of the commonly used commands for debugging STRDBG(for batch jobs), STRISDB. 13.Define the RCVF command? RCVF command used to receive the records either from the data base file or device file. 14.Define the purpose of the %SST function? To extract the information from the specified string. 15.Define the purpose of the *CAT function? To concatenate the two strings into a one string. 16.Define the purpose of the *BCAT function? To concatenate the two strings by placing a single blank in a resultant. 17.Describe the difference between the DOWxx and DOUxx operations? DOWxx : If the condition becomes true, then only the group of instructions allowed executing. DOUxx : Irrespective of condition, it will execute at least one time. 18.Define the purpose of the LEAVE operation? If you specify LEAVE, the control transfers to the statement below the ENDDO. 19.Define the purpose of the ITER operation? If you specify the ITER, the groups of statements are allowed to execute repeatedly. 20.List the steps/commands necessary to accomplish the following: a. Copy data from the file ORDHDR into file ORDHIST b. The file ORDHIST may or may not exist c. If the file ORDHDR does exist, it may or may not contain data d. The file ORDHIST may or may not contain data, if the file does contain data the old data should be erased a. CPYF FILE(ORDHDR) b. CPYF FILE (ORDHDR) c. CPYF FILE (ORDHDR) d. CPYF FILE (ORDHDR) 21.What is the purpose of the following? FORDHDR1 IF E ORDHDRF K Commands: TOFILE(ORDHIST) TOFILE (ORDHIST) TOFILE (ORDHIST) TOFILE (ORDHIST)

CRTFILE (*YES) *ADD *REPLACE

DISK KRENAMEORDHDRF1

In order to rename the record format of a data base file in a program, we can use the above steps. Purpose of renaming is: If the record format name is similar in two files and if both are used in a same program, the program will not compile. Hence we have to rename either of the file. Frequently Asked Questions in AS/400 Page 2

22.What is the purpose of the following C/COPY QRPGSRC,ORDERR During the compilation the source code of ORDERR copy existing program. Where as /COPY is compiler directive statement. 23.What is the purpose of the following FORDHDR1 CF E WORKSTN $2SFN SFILE FMT2 book is copied into the

The above line indicates that, $2SFN is a relative record number and FMT2 is name of the subfile record format. 24.What is the purpose of the following I UDS I 1 60ORDER# I 7 90LINE# The purpose is to define the variables in I-Spec and these are further used in C-spec. Where as ‘U’ indicates data area data structure? The above code is used to update the data area value through the program. The letter "U" indicates that the defined data structure is a data area data structure. 25.What is the purpose of the following? A CSRLOC (F1ROW F1COL)

Using this record level keyword, you can specify cursor location on an output operation to the record format you are defining. The program sends output after setting the cursor location. 26.What is the difference between SFLCLR and SFLINZ? SFLCLR : It clears the subfile. SFLINZ : First it clears the subfile and initiliazing the numeric variables with zeros and alphanumeric variables with characters. 27.Define the purpose/use for SFLRNA? Using this, we can make specified subfile record format inactive. 28.Define what the operation will do, the purpose of the result field and the purpose of *IN66? HI LO EQ C CALL 'CVTDAT' DTPRM 66 The above statement causes, call the program and pass the parameter. 29.Define each of the following operation codes a. READ To read the records sequentially. b. READE To read the equal key records c. READP To read the previous records d. READC To read the records from the workstation file (Subfile). e. REDEP To read the equal key previous records. 30.Define the purpose of the following code (If you know, how would this be written in RPG ILE) HI LO EQ C *IN66 DOUEQ *OFF C KEY1 CHAIN FILEA 90 66 C 66 CALL PGM1 PRM Frequently Asked Questions in AS/400 Page 3

C

ENDDO

Whenever the indicator *IN66 becomes *OFF, the control transfers after ENDDO statement. Otherwise, it reads the records from the data base file based on indicator specified on HI position. If the specified indicator on LO position becomes *OFF, then only CALL statement will execute. 31.How do you set the keywords SFLSIZ and SFLPAG if you want the subfile to dynamically expand? SFLSIZ > SFLPAG. 32.When would you use or not use this approach? It is the most desirable method in building a real time applications. We can use at all the times. 33.How can you detect and handle a record lock situation? If you try to read the locked record, we can get system defined message i. e. , the program will ended abnormally. With the help of File Information Data Structure we can handle record lock situation. Generally it will happen, when the same file of type " U" used in different programs. 34.How can you detect overflow for a print program that prints multiple lines per cycle? You specify the indicators OA through OG and OV in 33 - 34 columns in a printer file. indicator automatically set on whenever overflow occurs on a type of page. This

35.How would you design the process for a nightly, high volume check producing process that needs to select only records that are flagged to be processed? With the help of OPNQRYF Clp command, we can select the records from the data base file. The process involves following steps: Steps: 1. 2. 3. 4. 5. OVRDBF with SHARE (*YES) OPNQRYF CALL the program DLTOVR CLOF

36.How would you join 3 separate fields, a first name, middle initial and last name together as 1 field with proper spacing? You can describe in either RPG and/or RPG ILE (Integrated Language Environment) MOVE 'Dr. ' MOVE 'JOHN' MOVE 'WATSON' LNAME CAT MNAME: 1 CAT LNAME:1 DSPLY VAR2 MOVE *ON FNAME 3 MNAME 4 6 VAR1 VAR2 *INLR uses is the

FNAME VAR1

8 15

37. When PGMA calls PGMB for the first time PGMB executes the *INZSR. PGMB the RETRN operation to return to PGMA. When PGMA call PGMB the second time *INZSR executed? If you specify RETRN in called program, the *INZSR will not execute again.

38. Show 2 ways to convert a date from YYMMDD to MMDDYY (MULT operation not acceptable) 1) CVTDAT DATE() RTNVAR( ) FROMFMT( ) TOFMT( ) Source code is required to convert from one date format to another date format. The source code in CLP is given below: PGM Frequently Asked Questions in AS/400 Page 4

DCL DCL DCL DCL CHGVAR CHGVAR CHGVAR SNDMSG ENDPGM

VAR(&VAR1) VAR(&RCVD) VAR(&VAR2) VAR(&VAR3) VAR(&VAR2) VAR(&VAR3) VAR(&RCVD) MSG(&RCVD)

LENGTH(6) TYPE(*CHAR) VALUE('YYMMDD') LENGTH(6) TYPE(*CHAR) LENGTH(4) TYPE(*CHAR) LENGTH(2) TYPE(*CHAR) VALUE(%SST(&VAR1 3 4)) VALUE(%SST(&VAR1 1 2)) VALUE(&VAR2 *CAT &VAR3) TOUSR(*USRPRF)

39. Determine the value of the result field a. b. c. d. C Cost = $110. 00 Tax = 20% MarkUp= 05% Sale = 10% Eval

TotalCost = ((Cost * MarkUp) * Tax)) - Sale = 1. 0$ 40. Define the purpose of Factor 1 the Operation Code and *IN15 in following code HI LO EQ C *YMD Test(D) yymmddDate 15 If the factor 1 value matches with factor2 value, the indicator specified in EQ comes *ON. 41. Describe the function of SETLL operation in RPG language? The SETLL operation positions a file at the next record with a key or relative record number that is greater than or equal to key or relative record number specified in factor1. 42. Describe the function of SETGT operation in RPG language? The SETGT operation positions a file at the next record with a key or relative record number that is greater than key or relative record number specified in factor 1. 43. What is the purpose of Level Check parameter in a Physical file? Specifies whether the level identifiers of the record formats in the physical file are checked when the file is opened by the program. 44. Define a Job Queue? Job queues are queues of batch jobs waiting to be processed. 45. Define a Output Queue? Output queues are queues of jobs waiting to be printed. 46. What is the function of CPYSPLF command? It copies the spooled file to the data base file. 47. What is the function of CPYF command? To copy the data from the one file to another. 48. What is the function of CRTDUPOBJ command? To create the replica from the original object. 49. Define Subsystem? Subsystem is nothing but it provides specialized environment to complete the execution of jobs. 50. What are different types of Substems? Frequently Asked Questions in AS/400 Page 5

QBATCH, QINTER, QSPL, QCMN, QCTL, QBASE. 51. Define a Batch Job? * A user request the job. * The job is created (job name is assigned, job attributes are allocated) * The job is placed on a job queue * The sub system QBATCH takes the job from job queue and starts it. * Output generated by the batch job is placed on an output queue. * The spool sub system prints the output on the output queue. 52. Describe about Query/400? Query/400 is a licensed program that uses a query to analyze and select the information contained in the data base files and create a query report. A query report can be: * displayed on a workstation (screen) * printed * stored in another database file. 53. What is the CLP command to access a Query/400? WRKQRY 54. Purpose of Overrides? The basic purpose of Overrides is to temporarily change the attributes of a file. So you don't have to create permanent files for every combination of attributes your application might need. Overrides gives you the flexibility to use existing model files and dynamically change their attributes. 55. Define Data Structure? Data structures are specified in the Input specifications of an RPG/400 program to define an area in storage and layouts of related sub fields. 56. What is the purpose of Data structure? * Divide a field in to sub fields * Change the format of a field * Group non-contiguous data in a contiguous format * Define an area of storage in more than one format * Define Multiple occurrences of data structures. 57. List and explain the different type of data structures? * Data area data structure When the data area is defined in an RPG/400 program as a data area data structure, its data is implicitly retrieved for processing and written back at the end of the program. In the data area data structure, letter "U" must be entered to define the data structure as a data area data structure. * File information data structure A file information data structure provides exception/error information that may be occurred when processing a file during program execution. This type of data structure contains pre defined sub fields that identify * The name of the file for which the error occurred * The record processed when the error occurred * The operation being processed when the error occurred * The status code number * The RPG/400 routine in which the error occurred. Exception errors may be controlled by testing for an error code in the *STATUS field which is included in a file information data structure. Specifically, keywords including *FILE, *RECORD, *OPCODE, *STATUS, *ROUTINE provide the previously named information. * Program status data structure Frequently Asked Questions in AS/400 Page 6

Program status data structure however identity exception/errors that are generated in the program by RPG/400 operations and not by a file. Note that any code greater than 00099 is flagged as an exception/error. Four keywords - *STATUS, *ROUTINE, *PROGRAM, *PARMS are supported by a program status data structure. 58. What is the purpose of DYNSLT keyword? This is a file level keyword used in a logical file. If you specify this in a file level, the system doesn't perform record selection until the program reads file. Then on the Select/Omit criteria, it selects the records from the specified file. 59. What is the difference between access path and Dynamic select? Dynamic select occurs whenever the program reads file. But access path occurs before the file is read (but not necessarily). Because access path maintenance performed on the file. 60. Why would you prefer OPNQRYF than logical file? The main difference is : Logical file creates permanent object on the system. temporary access path. OPNQRYF creates

61. When would you prefer logical file than OPNQRYF? The physical file you are working with very large, creating and using a logical file will allow an application to perform faster than using an open query file. Since access paths created by open query files are temporary, applications that use an access path frequently will be more efficient using a logical file, since the access path will not have to be rebuilt every time the file is open. 62. What the purpose of the keywords FIFO, LIFO, FCFO? These keywords are used at file level. The purpose of each one is described below: FIFO: The duplicate key records will retrieved in first in first out order. LIFO: The duplicate key records will retrieved in last in first out order. FCFO: The duplicate key records will retrieved in first changed first out order. 63. What is the difference between regular logical file and join logical file? Regular logical file contains more than one record format. Record format name in regular logical file should be same based on the physical file. Join logical file contains only one record format. Record format name in join logical file should be different. Through logical file we can made changes in physical file. Through join logical file we can't made changes in physical file. 64. Distinguish between logical file and physical file? Physical file contains only one record format. Logical file contains more than one record format. Physical file contains actual data. Logical file doesn't contains data but it provides view from the physical file. 65. What is field reference file? Field reference file is a file, which contains field definitions and descriptions, and it doesn't have member. Physical contains data derived by the field reference file. 66. What is the necessary keyword used in a physical file to refer field definitions from the field reference file? REF which is a file level keyword is necessary to define at file level in a physical file. The syntax is as follows: REF(library name/name of the field reference file) 67. What is the purpose of reorganizing the physical file i. e. , RGZPFM? Even if you delete the records in a physical file through the program, still the space used by the deleted records not used by the other purpose. Hence using RGZPFM command we can compress the deleted records space. Frequently Asked Questions in AS/400 Page 7

68. What is the purpose of CHGPF (Change physical file) command? CHGPF command is used to change the attributes of a physical file. Attributes like * Maximum number of members * Member size * Level check enforced * Open data path is shared 69. What is purpose of declarative statement DEFN? Depends on the factor 1 value it will do two things: * If the factor1is *LIKE then DEFN opcode defines the new field based on the attributes old field. * If the factor 1 is *NAMVAR then DEFN opcodes defines the field as a data area. 70. What is the purpose of SFLNXTCHG keyword in a subfile? Which is a subfile record format keyword. If you perform read on the subfile, the internal indicator MDT (modified data tag) is automatically set off by the system. If you again perform read on the same records, records won't be read. Because internal indicator MDT would be off. Hence you should be explicitly set on the MDT by SFLNXTCHG keyword.

71. What is the difference between Array and Table? Array: Array is stored any where in the body of the input records. Table: Table is stored at the begining of the input records. Array: We can access all the elements in array by specifying the array name. Table: Only one table element can be accessed at a time. Array: Array can be searched randomly. Table: Table can be searched consecutively. 72. What are the different types of access paths maintained on the file? Immediate: All the access paths (open and close) associated with a file will be updated whenever changes made to a file. Rebuild- only open access paths will update whenever changes made to the file. Rebuild takes place whenever remaining access paths will be open. Delay : Rebuild will not takes place. 73. How can you identify End of file in CLP program? With the help of MONMSG MSGID(CPF0864) we can identify end of file in clp program. 74. What is the difference between production library and test library ? In debug mode, the files exists in production library not allowed to update. In the other hand, the files exists in test library allowed to update.

75.

What is message subfile? Message subfile is special file contains multiple messages taken from program message queue and placed in message sub file for display on the screen.

76. What are necessary keywords to code message subfile? SFLMSGRCD, SFLMSGKEY, SFLPGMQ 77. What is the difference between SETON LR and RETRN? If you specify SETON LR, all the files used in program will be closed. If you specify RETRN, all the files used in program will remain open. 78. When will you use OPEN and CLOSE opcodes in RPG program? Frequently Asked Questions in AS/400 Page 8

If you specify the letter "U" at columns 73 - 74 in a file description specification indicating that user control on a file. Hence we have to explicitly open and close the file in a program. 79. What is difference between fully procedural file and primary file? In primary file the records will be read and processed from begining to end. This order is not changed. In fully procedural file the records will be read and processed in any order. The logic flow is controlled by the opcodes in RPG program. 80. What is the difference between externally described file and program described file? The field definitions and descriptions are defined out side of the program in a externally described file. The field definitions and descriptions are defined in side the program in a program described file. 81. How many primary files allowed in a program? Only one primary file is allowed in program. 82. How many secondary files allowed in a program? More than one secondary files are allowed in a program. 83. What is the purpose of RTVMBRD command? In order to access the information related to member, we can RTVMBRD command. 84. Define an Interactive Job? * A user requests a job. * Job is created and job name, job attributes are assigned. * Job is placed on a job queue. * The sub system QINTER takes the job from the job queue and starts processing. * The output generated by the interactive job is placed on the output queue * The spool sub system QSPL prints the output. 85. How can you check the existence of object in a system? With the help of CHKOBJ clp command, we can find existence of object on the system. The usage of command in clp is as follows: CHKOBJ OBJ(JBA001DT) OBJTYPE(*DTAARA) MONMSG MSGID(CPF9801) EXEC(DO) CRTDTAARA DTAARA(QGPL/JBA001DT) TYPE(*CHAR) LEN(6) + VALUE('010196') TEXT('The last day that had job acct.+ data extracted') ENDDO RTVDTAARA DTAARA(JBA001DT *ALL) RTNVAR (&FROMDATE) The execution of above steps is listed below: steps 1: First it checks the data area object on the system. 2: If the data area object not found, the MONMSG command executes with the help of message identifier, next we can dynamically create the data area. 3. If the data area object found, control transfers to statement below ENDDO. It is always good CLP programming approach to check the object before you rename, delete the objects on the system. 86. What is the purpose of FRCDTA (Force Data) keyword? Use this record-level keyword to immediately display a record format, without waiting for the next input or output/input operation. 87. What is the purpose of SFLFOLD and SFLDROP keywords? SFLFOLD: To fold the second line of multiple line subfile. Frequently Asked Questions in AS/400 Page 9

SFLDROP: To drop the second line of multiple line subfile. 88. What is the function of DSPATR (display attributes) keyword? Use this field level keyword in display file to specify one or more display attributes for the field you are defining. You can specify the DSPATR keyword more than once for the same field, and you can specify more than one attribute for the same keyword. The following are valid attributes: For All Fields Display Attribute BL HI RI CS ND PC UL

Meaning Blinking field High Intensity Reverse Image Column separator Non Display Position cursor Underline

For Input-Capable Fields Only PR MDT OID SP 89. Protect contents of field from input keying Set modified data tag when displayed Operator identification Select by light pen

What is the purpose of PUTOVR (Put with explicit override) keyword? Use this record-level keyword to permit the override of either display file attributes or data contents of specific fields within a record displayed on the work station device. What is the purpose of OVRDTA (Override Data) keyword? Use this field level keyword with PUTOVR keyword to override the existing the data contents of a field already on the display. What is the maximum number of record formats in DSPF? 1024 (One thousand and twenty four) What is the maximum number of fields under a record format of physical file? 8000 (eight thousand) What is the maximum number of parameters allowed in RPG? 255 (Two hundred and fifty five) What is the maximum number of parameters allowed in CLP? 43 (Forty three) What is the maximum number of subroutines allowed in RPG? 254 (Two hundred and fifty four) What is the maximum number of files allowed in RPG? 50 (Fifty including eight printer file) What is maximum number of Arrays allowed in RPG? 250 (Two hundred and Fifty ) Where can you specify an indicator in LOKUP operation? In 'EQ' position. Page 10

90.

91. 92. 93. 94. 95. 96. 97. 98.

Frequently Asked Questions in AS/400

99. What is a Member? It is a subset of data records of a physical file. 100. What is a Physical file? Physical file nothing but a table contains a only one record format in which we can describe the field definitions and descriptions. 101. What is a Logical file? It is nothing but a logical view provided by the physical file. 102. What is Join Logical file? Join logical file joins more than one file. (thirty two). The maximum of number of files allowed to join is 32

103. What are the necessary keywords for the Join Logical file? JDFTVAL, JFILE, JOIN, JFLD, JREF. 104. What is a Non-join logical file? It only provides logical view based on the physical file. This is also called as regular logical file.

105. What is the necessary keyword for Non-join logical file? PFILE (which is record level keyword) 106. 107. 108. How many levels are there in a Physical file? Four levels. They are File level, Record level, Field level, Key field level. What is the use of UNIQUE keyword and what level it is defined? It will avoid to enter duplicate key values. We have to define it in a file level. At what level S,O are defined and what they will do? S, O are to defined at key field level. The purpose Select/Omit logic is depends on the criteria (condition) given at the key field level (At function entry) it selects and omits the records. The S/O is allowed in Logical file only. What is the difference between Packed decimal and Zoned decimal? Packed decimal : One digit occupies 1 byte. Zoned decimal : One digit occupies 2 bytes. What is default data type (if you define decimals '0') in Physical file? Packed decimal What is default data type for the fields(sub fields) defined in data structures in RPG? Zoned decimal

109.

110. 111.

112. What is the use of JDFTVAL in join logical file? If you specify JDFTVAL at file level, even the primary file record does not match with secondary file record, the join takes place. 113. 114. 115. Is it possible to create a physical file without DDS? Yes. With the help of CRTPF we can achieve this. But we have to give record length. What is a Keyed physical file? Defining a field as a key in physical file. Hence we can access records through the key field.

What is a composite key? Defining more than one key as a key field in physical file. Page 11

Frequently Asked Questions in AS/400

116.

What is arrival sequence? The records will be accessed the way in which records are added to physical file.

117. What is the maximum number of key fields allowed defining in a physical file? 120 118. What is acronym of RPG? Report Program Generator 119. What is the native language of AS/400? RPG/400 120. Why RPG/400 is famous? * Easy to code and analyze. * Supports externally described files. 121. How many specifications are there in RPG/400? What are they? There are seven specifications are exits in RPG/400. They are listed below: * * * * * * * 122. Header Specification File Description specification Extension specification Line counter specification Input specification Calculation specification Output specification

When do you use F-spec. continuation line ? * In order to refer the named record format as a subfile record format in the program. * In order to rename the record format of a database file in a program. * In order to define a named data structure as a file information data structure. What are the various types of device files? Display files, printer files, discket files, tape files etc. ,

123.

124. When do you explicitly open files and close files in an RPG program? If you specify the letter ' U ' at column 73-74, you need to be open and close files explicitly in a RPG program. 125. 126. 127. 128. How do you know that records are locked? By using a command WRKOBJLCK. What is the purpose of Indicators in RPG? In order to control the logic flow, we can use indicators in RPG. How do you read data area in an RPG program? With the help of 'IN' opcode, we can access the data area record in to the program. What are the different types of Data Areas? The different types of Data Areas are general data area, local data area, group data area, pip (program initialization parameter data area) data area. *General Data Area - It can be created by user implicitely or explicitly It can be referred by any other jobs. It can be associated with a library. It can be created, deleted by the user. Page 12

Frequently Asked Questions in AS/400

* Local Data Area

- It can not be referred by any other job. It is automatically created and deleted by the system. It is not associated with any library.

*Group Data Area *Pip Data Area 129. 130. 131.

- It is automatically created and deleted by the system We can access the group data area value through clp. It is meant for group jobs. - It is meant for pre start jobs.

What are various techniques to pass parameters from one program to another? PLIST, CALL, TFRCTL Which single RPG opcode performs both SETLL and READE? CHAIN What is term CUA , SAA? Common User Access System Application Architecture Why is AS/400 called Object Oriented Machine? Everything on the AS/400 System that can be stored and retrieved is contained in the object. What is the version of OS/400 that we have? V4R2 (Version 4. 0 Release 2. 0)

132. 133.

134. What is DDM ? Distribution Data Management is a function of the OS/400 that allows an application program or user on one system to use database files stored on remote system. 135. What is an Object? An object is any thing that exists in and occupies space in storage and on which operation can be performed. 136. How are the objects stored on AS/400? All objects are stored on AS/400 in a single level storage. In this method all objects are referenced by one virtual address which is translated in to a physical address whether it is an auxiliary storage or main memory. 137. 138. 139. What is a Library in AS/400? A library in AS/400 is an object that serve(acts) as a repository for other objects. Name few IBM supplied libraries? QGPL, QTEMP, QSYS, QUSRTOOL, QCBL, QRPG What is library list ? A list that indicates libraries used for the process and the order in which it has to be searched System identifies it in *LIBL. How many libraries can be there in library list ? Total 40 (15 system and 25 application) What is Folder? A Folder is a named object that is used as a directory for documents and other folders. Folders can be filed with in another folder. What is Spool file, Why is it required? A file that holds output data to be processed, such as information waiting to be printed. Page 13

140. 141.

142.

Frequently Asked Questions in AS/400

143.

What is Job, What are the attributes of a Job? A Job is a basic unit of work on AS/400. The attributes are: Job Number Unique system generated sequential number Job Name Any user defined name (Max 10 char) User Name Who initiated the job. What is Job description? A Job description defines an environment in which a batch job or an interactive job to be executed. What is the difference between Interactive & Batch Job? Interactive Job: A Job started for a person who signon to a workstation. Batch Job : A predefined group of processing actions submitted to the system to be performed. What is Group Job? A Group Job is attached to one workstation and a user. There should be an initial group job and it can be branched to many other group jobs. The group jobs can have different library lists and different output, message queues. Group Job is useful in enhancing the programmers productivity. It is as though logging into the same user-id many times. What are the two main attributes, which govern the execution of a job? Run time priority and Time slice What is Sub-System? Sub-Systems are specific user defined partitions of the CPU where various jobs may be executed. One subsystem can have more than one active job at a time. What is a Device file? A device file contains the description of how data is to be presented to a program from a device or vice versa. Device file can be Printer, Disk, Tape and Remote system. What is an ICF file? A device file that allows a program on the system to communicate with program in other system. What is a message file? It is a file which contains the messages of an application. For example all RPG/400 messages are stored in a file, all COBOL/400 messages are stored in a file. What is a job log? A record of request submitted to system be a job. The message related to the requests, and action performed by the system on the log. The system program maintains it. What is the purpose of OPNQRYF (Open Query File)? OPNQRYF is used to select certain records of the database file based on the QRYSLT (Query select ) condition. How to create files dynamically without DDS? Through OPNQRYF What command must be executed before executing OPNQRYF command? OVRDBF (Override Data base file) What is Data Area? Data area is an object used to hold data for access by any job running on the system. A data area can be locked to a single user, thus preventing other users from processing at the same time. What are the types of data areas? Page 14

144. 145.

146.

147. 148. 149.

150. 151.

152.

153.

154. 155. 156.

157.

Frequently Asked Questions in AS/400

User defined Data Area, Local Data Area (LDA), Group Data Area (GDA), Program Initialization Parameter (PIP) Data Area. 158. What is LDA? LDA is created by the system for each job in the system, including auto-start jobs, jobs started on the system by a reader, and subsystem monitor jobs. 159. 160. What is the type, length of a LDA? *CHAR, 1024 bytes What is GDA? The system creates a GDA when an interactive job becomes group jobs. for group. How to create a user defined (general) data area? Using CRTDTAARA command What are the different ways to input data into data area? CHGDTAARA (using CL) Using OUT opcode in RPG How to retrieve data from data area? Using RTVDTAARA command in CL. Using IN opcode in RPG What are the valid user defined data area types? CHAR, NUMERIC and LOGICAL How can a data area be locked after being updated? Using OUT *LOCK What is the use of Data Queues? Data queue is a type of system object that you can create. program communication. How to create a data queues? Using CRTDTAQ command. What are the valid data types in Data Queue? Char, Numeric, and Logical What are the two types of read performed on data queues? Read with lock, and read without lock. How do you use DEBUG utility? STRDBG program-name UPDPROD(*YES) Data Queues are used in Program to Only one GDA can exists

161. 162.

163.

164. 165. 166.

167. 168. 169. 170. 171.

What is an authorization list? A lists of two or more user Ids & their authorities for system resources. The system identifies it an object type *AUTL 172. 173. How do you grant authority? Using GRTOBJAUT command What are the types of object authorities? *USE, *CHANGE, *ADD, *DLT, *READ, *UPD, *ALL, *EXCLUDE, *OBJEXIST, *OBJMGT, *OBJOPR Page 15

Frequently Asked Questions in AS/400

174. 175.

How do you put jobs in batch mode? SBMJOB What is the use of OVRDBF ? You can use the Override with Database file (OVRDBF) command to replace the database file named in a CL program or to change certain parameters of the existing database file. What is the use of OVRPRTF ? Override with Printer file (OVRPRTF) command is used to override certain parameters of the printer files used in the program or to replace the printer file.

176.

177. How to change file attributes such as size, file wait time, record wait time etc. , permanently? Using CHGPF command 178. What is the use purpose of CRTCMD? To create user defined command. 179. 180. 181. 182. 183. What is class of service ? A set of link and node characteristics associated with a session. How to see active jobs of the system. Using WRKACTJOB command How do you detect unused spool storage? Using Reclaim Spool Storage. What are the functions of Remote Job Entry (RJE) ? Allows user of AS/400 system to submit jobs and receive jobs from a host system. What is the function of RJE Conversion Utility? It converts compressed data written to an AS/400 database file to decompressed data written to another AS/400 database, diskette, or device file. What process the command SBMRJEJOB does? Sends RJE input stream to host system What is journaling & Commitment Control? Journaling is a function which records the changes in a file in a journal. These record images are used to recover the changes in the file should the system ends abnormally. Commitment control is a function that allows you to define and process a number of changes to database files as a single unit (transaction). What is the purpose of STRCMTCTL command? Starts commitment control for files that are being journalled. What are the system objects required for journalling? Journal receiver, journal and PFs to be journalled. What are the different definition levels in Data Description Specifications? File level, Record level, Field level, Join level, Keyfield level, Select/Omit level. What the difference between Source Physical File and Physical File? A Source Physical File contains the source for the various objects created this file has specific structure. A Physical File contains data, and the record format can be different for different physical files. Page 16

184. 185.

186. 187. 188. 189.

Frequently Asked Questions in AS/400

190. 191. 192. 193. 194. 195. 196. 197. 199. 200. 201.

What is an access path? The order in which the database fields are organized for processing in the program. What are all the different types of access path? Arrival sequence access path. Keyed sequence access path. What is the default value for the number of increment for the physical file? Three When does the DFT keyword in PF be used? To specify the default value it a field. What is Multi-format logical file? Logical which uses fields from two or more physical files. What is the Select and Omit criteria in logical file? This is used to specify rules for the Selection/Omission of records from a Physical File. Can fields be concatenated INa logical file level? Yes. by using CONCAT keyword When would the ALL keyword be used? Use with Select or Omit, to select/omit records. What are the different types of keywords in display files? File level, Record format level, Field level What is the maximum number of records you can specify in a display file? 1024 How can a screen field that has changed since the last output operation be detected ? Attach the MDT (modified data tag) attribute to the field, to detect whether field has been changed as a result of user input.

202. What would be the effect on the field where reverse image, underline and highlight display attributes were active? The result is same as if you had specified ND. 203. What is the use of DSPATR(MDT) keyword? Sets on the modified Data Tag of the field. The Data Tag detect whether the field has been changed as a result of user input.

204. If DSPATR(PC) and CSRLOC were specified for a format, which keyword would have priority? CSRLOC gains priority. 205. 206. Can error messages as a result of a COMP, RANGE or VALUES keyword be overridden? Yes, through CHKMSGID keyword. What the purpose of OVRDTA, OVRATA keywords? OVRDTA keyword (field or record level) can be used to override the existing data contents of a field or record already on the display. OVRATA keyword (field or record level) can be used to override the existing display attributes of a field or record already on the display. How can a message from a message file appear as a constant on the screen? By using MSGCON (message constant) keyword. Page 17

207.

Frequently Asked Questions in AS/400

208.

In conjunction with what other keyword must OVRDTA and OVRATA be used? PUTOVR keyword must used.

209. What is the purpose of the INDARA keyword? This File-level keyword is used to remove option and response indicators from the buffer and places them in 99-byte separate indicator area. 210. Explain the purpose of KEEP and ASSUME keywords? KEEP: Keep the display from being deleted when the display file is closed. ASSUME: It is used to specify that the OS/400 program is to assume that this record is already shown on the display when this file is opened. Explain the use of DFTWRT display keyword? No records will be displayed until there is any I/O operation. What is the purpose of FRCDTA keyword ? Immediately display a record format without waiting for the next I/O operation. What keyword must be used with PROTECT keyword? OVERLAY What is Subfile? Subfile is group of records of same record format and can be read from or write to the display in a single operation. What are all the contents of subfile? Subfile Record Format, Subfile Control Record Format, Relative Record Number, Subfile Record Number, Associated Subfile Keywords. What are the two record formats a subfile contain ? Subfile record forma (SFL), and subfile control record forma (SFLCTL). What is SFLPAG and SFLSIZ ? SFLPAG : it is an attribute which specifies the number of records that can be displayed in a screen. SFLSIZ : it is an attribute which specifies the number of records can be stored in subfile.

211. 212. 213. 214.

215.

216. 217.

218. What is the maximum number of subfiles that can be specified in a display file, 512 219. Maximum number of subfiles that can Defined in a RPG program for one display file is 24 220. Maximum number of subfiles that can be active for a single file is? 12 221. 222. Can more than one subfile record be displayed on one line? Yes, by using SFLLIN keyword. How do you specify the number of records to roll in a subfile? Use SFLROLVAL keyword in DDS along with number, which specifies the number of records to scroll at a time. How will you display a particular page in subfile? Move a valid relative record number (RRN) in the field specified using SFLRCDNBR keyword in DDS. Page 18

223.

Frequently Asked Questions in AS/400

224. 225.

How to pick up the changed records every time in a subfile after the first change made? Seton SFLNXTCHG keyword indicator and update the subfile record. What is the use of SFLEND keyword? By specifying this keyword, the Bottom/More message could be displayed at end of screen. in a

226. How to toggle between single line and Multi - line display of a particular record subfile? Using SFLDROP keyword. 227.

Explain the difference between defining Subfile and Message-subfile? Subfile record is defined by SFL keyword, where as Message subfile is defined by SFLMSG keyword. What are the different types of variables available in CL? DEC, CHAR, LGL How do you pass parameters in CL? Using PARM keyword. What is difference between CAT, TCAT, BCAT? CAT Concatenate two variables or constants into one continuous string. BCAT Truncates all trailing blanks in the first character string, one blank is inserted, then the two character strings are concatenated. TCAT Truncates all trailing blanks in the first character string, the two character strings are concatenated. What are the different types of messages in CL? Immediate message, Break message, Program message, User message How to trap errors in CL? By using Monitor Message Command (MONMSG) What is the maximum length of a variable name in CL? Maximum 11 characters (including '&') What are the limitations of CL (compare to RPG) ? you can not use CL program to ADD or UPDATE records in database files. Use Printer or ICF files. Use Program described files. Use the concept of subfile (to display more than one record), but a single output message subfile is a special type of subfile that is supported well in CL. Use subroutines. You cannot declare more than one object (file) in a CL programme. What is the use of Header Specification in RPG/400? It identifies by H in column 6, provides informaion about generating and running programs. When will DUMP and DEBUG opcodes be ignored? If blank is specified in position 15 of H specs. Specify different indicators used in RPG? Overflow indicators Record Identifying Indicators Field Indicators Page 19

228. 229. 230.

231. 232. 233. 234.

235. 236. 237.

Frequently Asked Questions in AS/400

Resulting Indicators Control Level Indicators 237. What are Control level indicators? L1 to L9 used to identify certain fields on control fields and then used to condition which operations are to be processed at detail or total calculation or output time. What is the use of E specification in RPG? Extension Specs describes all record address files, arrays and tables.

238.

239. What is the use of L specs in RPG? Line counter specification can be used to describe printer file to indicate the length of the form and number of lines per page. 240. 241. 242. 243. 244. 245. 246. 247. In which specification the report layout can be defined? O Specification. How many files can be defined in F specs? 50 How many printer files can be defined in F specs ? 8 Give three main purposes of File specification ? To define files, to describe the files, to assign the files to specified devices. How do you specify page overflow indicator for printer files in RPG? Specify an indicator in position 33-34 of F specification. What is a Primary File? It is used in RPG Program Cycle to automatically read records in a cycle. Can a indexed file be accessed in arrival sequence in RPG program? Yes. What is a Program Described file in RPG? The field name and length of the fields are defined with in the RPG program.

248. What is externally described file ? All information about the fields is specified in DDS and the RPG program can use them with in the program. 249. Can you specify a display file to be used in the following modes Input, Output, or Combined modes ? Yes. 250. What is match field indicator? Matching record indicator is seton when all the matching fields in the record of a secondary file matches with all the matching fields of a record in a primary file. 251. 252. What is the length of a variable in RPG? 6 Characters. When is a TAG statement used in RPG? It is used as Label. Page 20

Frequently Asked Questions in AS/400

253. 254. 255. 256.

What opcode could be used to test an alphanumeric field for all numeric values? TESTN What opcode will be used to test the zone of a character field? TESTZ How to read database records without locking them? Put 'N' in position 53 of C specs. What does CHECK opcode is used? The check operation verifies that each character in the base string (factor 2) is among the character indicated in the comparator string (factor 1). What does 'SR' in columns 7-8 of C specs mean? Calculation operation is a part of RPG subroutine. What is SCAN and XLATE? SCAN operation scans a character string (base string) contained in factor 2 for a substring (compare string ) contained in factor 1. XLATE operation translates characters in source string (factor 2 ) to the from and to strings (factor 1 ) and put into the result field. How do you use commitment control in RPG program ? Using COMIT operation. Makes all changes to the files that have been specified in output operation since the previous COMIT or the begining of operations under commitment control(if there has been no previous COMIT or ROLBK operation). How do you use exceptional write in C specs? Using EXCPT opcode. What does the opcode FREE do? The FREE operation removes a program from the list of activated programs, frees static storage and ensures program initialization (first cycle processing) the next time program is called. It does not close file or unlock data area. What does opcode POST do? Puts information in INFDS. What is the maximum number of elements in an array? 9999 Can we define Multi-dimensional arrays in RPG? No. What is XFOOT opcode? Adds all the elements in a numeric array, and places the sum in the result field. How can we sort an array? By using SORTA opcode. How can the user implicitly open and close the files in RPG program ? Enter UC in position 71-72 of F specs. Use OPEN and CLOSE opcodes in RPG program to open and close files.

257. 258.

259.

260. 261.

262. 263. 264. 265. 266. 267.

268 How many parameters can be defined in a RPG program. ? 255 Frequently Asked Questions in AS/400 Page 21

269. What is File Information Data Structure? File Information Data structure (INFDS) can be defined for each file to make file exception/error information available to the program. A file information data structure contains predefined subfields that identify: the name of the file for which the exception/error occurred. the record being processed when the exception/error occurred or the record that caused the exception/error. The last operation being processed when the exception/error occurred. The status code. The RPG routine in which the exception/error occurred. 270. What is Program Status Data Structure? A Program status DS can defined to make program exception/error information available to an RPG program. DS is defined as program status DS by an S in position 18 of the DS statement. *STATUS contains status code. *ROUTINE : contains name of routine in which the exception/error occurred *PARMS : contains the number parameters passed to this program from the calling program. 271. 272. 273. What is the maximum number of times Multiple Occurrences DS can occur in a program? 9999 What are all the compiler directive statements? /TITLE, /SPACE, /EJECT, /COPY What is SAA? Systems Application Architecture (SAA) is a collection of selected software interfaces, conventions, and protocols that will provide a consistent framework across the System/370, AS/400 and PS/2.

274. During execution, an RPG/400 program automatically follows a sequence of operations for each record that is processed. The built-in program cycle includes the following logical steps. 1. reading input (READ) 2. processing calculations (PROCESS) 3. writing output (WRITE) ****************************************************************************** 275. 276. 277. 278. 279. 280. What is the Function of PDM? Productivity tool for copying, deleting, scanning, changing & creating source files. What is the function of SEU ? A utility for editing programming language source code. What is the use of SDA ? Screen Design Aid is used to create display files interactively. What is a library in AS/400 ? Library in AS/400 is an object that serves as a repository for other objects. Name few IBM supplied libraries ? GPL, QTEMP, QUSRTOOL, QSYS, QRPG & QCBL. What is a library list ? Library list that indicates libraries used for the process and the order in which it has to be searched. System identifies it in *LIBL.

281. How many libraries can be there in a library list ? Total 40 (15 system and 25 application). Frequently Asked Questions in AS/400 Page 22

DDS - Data Description Specification. Source Physical File contains the source for the various objects created. This file has a specific structure. RPG, CLP, DSPF, PRTF, etc.

A-spec
282. 283. 284.

UNIQUE, PFILE, REFFLD What is the difference between Physical and Logical files ? Physical file contains data, where as Logical file serves as a access path to database. What does the keyword UNIQUE mean ? Records with duplicate key values are not allowed. What is FCFO, FIFO, LIFO in Database environment ? These are file level keywords which are used to access the records in the order FCFO : First Changed First Out FIFO : First In First Out LIFO : Last In Fist Out How many record formats can you have in a Physical file and in a Logical file ? Physical file can contain only one record format, Logical file can contain more than one record format. What is Multi-format logical file ? Logical which uses fields from two or more physical files. What is keyword PFILE specifies ? PFILE is used define the Physical file being referenced. What is a Join Logical File, Can it be used for Update ? Logical file that combines more than one physical file. Update is not possible through JLF. Is it possible to join the same file to itself ? Yes. What does SDA stands for ?

285.

286. 287.

288. 289. 290. 291. 292. 293.

Screen Design Aid.
What is the symbol used for defining a new field in SDA?

'+'.

What is the symbol used for shifting fields in SDA?

'<' , '>'.
What is the symbol used for copying & moving new field in SDA?

Copying : '-' & '=='. Moving : '-' & '='. '?' . *DATE, *TIME.

294.

What is the symbol used to get name & length of a field in SDA?

295.

How can a screen field that has changed since the last output operation be detected ? Attach the MDT attribute to the field, to detect whether field has been changed as a result of user input. 296. What would be the effect on the field where reverse image, underline and highlight display attributes are active ? The result is same as if you had specified ND. 297. What is the purpose of OVRDTA and OVRATA keywords ? OVRDTA keyword (field or record level) can be used to override the existing data contents of a field or record already on the display. Frequently Asked Questions in AS/400 Page 23

298. 299. 300.

301. 302. 303. 304. 305. 306. 307.

OVRATA keyword (field or record level) can be used to override the existing display attributes a field or record already on the display. What keyword must be used with PROTECT keyword ? OVERLAY What is RPG ? Report Program Generator. What are the different types of specification available in RPG/400 ? Control Spec.( H ) File Spec.( F ) Extension Spec.( E ) Line counter Spec.( L ) Input Spec.( I ) Calculation Spec.( C ) Output Spec.( O ) Is it necessary to define all formats ? Which are mandatory and which are Optional ? No, all are Optional. What is the use of E specification in RPG ? Extension Specs describes all record address files, arrays and tables. In which specification can a report layout be defined ? O Specification. How many files can be defined in F specs ? A maximum of 50 files. Can an indexed file be accessed in arrival seQuence in RPG program ? Yes. In which specification Data Structures can be defined? I - Spec. When is a TAG statement used in RPG ? It is used as a Label.

of

308. 309. 310. 311. 312. 313. 314.

What are the different Opcodes available in RPG for Database access ? READ, CHAIN, WRITE, UPDAT, DELET, SETLL, SETGT, READE, READP, REDPE, OPEN, CLOSE, FORCE, NEXT, UNLCK. How can database records be read without lock ? Put 'N' in position 53 of C specs. What does CHECK opcode do ? The check operation verifies that each character in the base string (factor 2) is among the ` character indicated in the comparator string(factor 1). In conjunction with which statements can ORxx and ANDxx conditions be used ? DOUxx, DOWxx, IFxx, and WHxx. What does opcode POST do ? Puts information in INFDS. Can you have multiple key lists for a single file ? Yes. What are the different types of arrays available in RPG ? Pre-execution time array. Compile time array. Execution time array. Can we define Multi-dimensional arrays in RPG ? No. What is XFOOT opcode ? Adds all the elements in a numeric array, and places the sum in the result field. During input operation which indicator position is seton if there is a record lock? LO indicator position is seton. What is the difference between *LIKE and *NAMVAR ? Page 24

315. 316. 317. 318.

Frequently Asked Questions in AS/400

*LIKE defines the variables as in database. *NAMVAR is used to define variables as data area. 319. Where will control be passed after the execution of the *PSSR subroutine if the factor2 of the ENDSR is blank ? Control will return to the next sequential instruction. 320. What is the maximum number of subfiles that can specified in a display file ? 512 The maximum number of subfiles that can defined in a RPG program for one display file is ___ . 24 321. The maximum number of subfiles that can be active for a single file is ____ . 12 322. What are the different opcodes used for file operation on a subfile in a RPG pgm? READ, READC, CHAIN,UPDAT and WRITE 323. How will you display a particular page in subfile ? Move a valid relative record number(RRN) in the field specified using SFLRCDNBR keyword in DDS. 324. Can a single screen format occupy a screen area above and below a subfile format ? Not possible. 325. What is SFLPAG and SFLSIZ ? SFLPAG : it is an attribute which specifies the number of records that can be displayed in a screen. SFLSIZ : it is an attribute which specifies the number of records can be stored in the subfile. 326. How to pick up the changed records every time in a subfile after the first change made ? Seton SFLNXTCHG keyword indicator and update the subfile record. 327. How do you specify the number of records to roll in a subfile ? Use SFLROLVAL keyword in DDS along with the number, which specifies the number of records to scroll at a time. 328. What are the three line types in RLU ? Report line, Filler line & Sample line. 329. What is the function of RLU ? To design & prototype a report. 330. What are the three types of keywords associated with printer file ? File level, Record level & Field level. 331. How do you combine two record formats in RLU ? Using CLC. 19. 332. What are the different commands used in RLU ? DR - Define Record, CLC - Change Line for Continuation, CLR - Change Line for Record, SD - Create Sample Data, VF - View Fields, NP - New Page, DC - Define Constants, DF - Define Fields, CF Centre Fields & SP - Space Fields evenly. 333. What is the command used to invoke RLU ? STRRLU. 334. What are different record spacing keywords in RLU ? SKIPA, SKIPB, SPACEA & SPACEB. 335. 336. Mandatory keywords of sub file SFL, SFLCTL, SFLDSP, SFLSIZ, SFLPAG are the mandatory key words Difference between SFLRCDNBR and SFLNXTCHG SFLRCDNBR will give the RRN of the First record displayed on the screen at a given time. Whenever a record is changed on display file. An MDT is set ON. If an indicator is associated with SLFNXTCHG and it is SETON then READC will read only the changed record. And if the indicator is not associated and it is seton it READC reads all the records from sub-file How can see logical file based on which physical file and vice versa DSPDBR How can u check no of records in a file Page 25

337. 338.

Frequently Asked Questions in AS/400

339. 340. 341.

DSPFD How do u compile RPGLE program Either thru 15 or crtrpgmod Is module executable No You need to create an RPG prog to run the module What is procedure? A procedure is the set of self-contained high level language statements that can perform a particular task and then returns to a caller What is service program? A Service Program is a collection of runnable procedures and available data items easily accessible by other ILE programs. In many respects it is similar to a subroutine library and procedure library. A service program differs from a program in two ways: It does not contain a program entry procedure. This means that you cannot call a service program using the CALL operation. A service program is bound into a program or other service programs using binding by reference What is LOKUP opcode? Look’s for a particular element of an array How many files, printer files you can describe in a RPG 50 files and 8 printers How do handle file exception/error *INFDS ,*PSSR defining it in F spec What is OPNQRYF, MONMSG commands It is Dynamically creation of access path, and it can have resultant fields i.e. if the expression is A = B + C then B and C are from the file while A is defined in OPNQRYF. We can divert the output of command to an OUTFILE. Command associated with OPNQRYF is CPYFRMQRYF to save the output permanently It is a CL command to monitor and error/exception message so that in case of an error a dump is avoided and the control is in program. It is also used to monitor user message.

342.

343. 344. 345. 346.

347. 348.

How do you set pointers to values 55 or next higher or greater? SETGT. How will I explicitly open a file in an RPG program? By defining UC in file condition and to opening the file mention OPEN opcode and closing the file by mentioning CLOSE in opcode of C spec. Distinguish between terminating a program through SETON LR and RETURN? LR closes all the files used in the program and RETURN is used to return the control to the parent program. How will you add a field to physical file already containing data? With CPYF command and *NOCHK & *DROP What are the uses of FACTOR1, FACTOR2 and RESULT field for the RPG operation code PARM? It is add value of FACTOR1 to FACTOR2 or compare the value of FACTOR 2 with FACTOR1. How will you find a string using PDM? By using FNDSTRPDM. How will you search an array? LOKUP Page 26

349.

350. 351.

352. 353.

Frequently Asked Questions in AS/400

354.

What are the different types of arrays? Preruntime gets populated at the time input. Runtime gets populated at the time execution. Compile time gets populated at the time of compilation. What is message file? It is file which contain messages created by the user through which a user can display own message while validating. What does DEFN do? It is used to define a field based on the value specified in FACTOR 1. What are two types of record are used in subfile? SUBFILE RECORD FORMAT and SUBFILE CONTROL RECORD FORMAT. What are DDS required for SUBFILE? SUBFILE DISPLAY (SFLDSP) SUBFILE DISPLAY CONTROL (SFLDSPCTL) SUBFILE CLEAR (SFLCLR) SUBFILE SIZE (SFLSIZE) SUBFILE PAGE (SFLPAGE). What is ELASTIC and NON ELASTIC SUBRILE? When subfile size is greater then subfile page size it is called elastic subfile and when subfile size is equal to subfile page size it is called non-elastic subfile. What is SFLINZ and SFLRNA? SFLINZ stands for subfile initialize. It initialized all the character field as blanks and numeric fields as zeros. SFLRNA stands for subfile record not active (It means records are there in the subfile but active). Can you display a empty subfile? Yes by using the keyword SFLINZ and SFLRNA. Why do we use READC? What is SFLNXTCHG? READC is to read those records which have changed in the subfile. If you validate a record in subfile on some condition all the invalid records can display in reverse image. The first which have changed and made valid and released still displaying in reverse image. The records have read even it has not been changed due to SFLNXTCHG. How do you read changed records backward in subfile? NOT POSSIBLE. How you will find an error which is not in the first page of the subfile without using ROLLDOWN key? By using keyword SFLRCDNBR. What is SFLROLVAL? By using this keyword you can tell system to roll on of records when the user presses ROLLDOWN key (For this you define a hidden of 4 byte). How you will know whether you are in SFLDROP or SFLFOLD mode? Bu using the keyword SFLMODE.

355.

356. 357. 358.

359.

360.

361. 362.

363. 364.

365.

366.

Frequently Asked Questions in AS/400

Page 27

367. 368. 369. 370. 371. 372. 373.

How you get the relative record in a subfile in which cursor is located? By using the keyword SFLCUSRRN (Subfile cursor relative record number). What is QCMDEXC? It is used to execute a single CL command within the RPG program. What is maximum size of data area? 9999. How to fire a JOB? SBMJOB. How many levels of security are there on AS/400? There are 10 to 50 level of security on AS/400. How to translate field values form lower case to Upper case? By using opcode XLATE. What are the maximum parameters can be passed from one RPG program to another RPG program? 255 How many maximum parameters can be passed from on RPG program to another CL program? 40 How many maximum arrays can be used in a single RPG program? 200. How many maximum loops can be used in a single RPG program? 100 How many maximum printer files can be used in a single RPG program? 8 What is the maximum length of an OCCUR? 9999. What is a subfile? Subfile is a group of records which can be used for (Displaying, Adding new record, Modifying the existing record, and Deleting the existing records). What is maximum size of a subfile? 9999. How do you write and read a value (similarly as EXFMT of RPG) using a display file in CL? SNDRCVF. How do you display a screen in CL? SNDF. How to check end of file in CL? Monitor the message ID (CPF0864). Can you update a file in CL? NO. Page 28

374.

375. 376. 377. 378. 379.

380. 381.

382. 383. 384.

Frequently Asked Questions in AS/400

385. 386. 387. 388. 389. 390.

Can you add a record to a physical file through CL? NO What opcode is used for submit job? Why it is used? SBMJOB opcode is used and it is used for background processing. How do you monitor message in CL? By using monitor message ID: (MONMSG MSGID (CPF0000) Except report design what else can be done by O spec? We can write a Physical File from O spec. What is the full for of CA and CF? Command Attention and Command Function. Difference between WRKUSRJOB and WRKACTJOB? All the jobs in WRKUSRJOB are seen including Active jobs where as in WRKACTJOB only active jobs are seen. What are the three levels of SDA? File level, Record level, Field level. What is *PSSR? It is a system subroutine which is executed by default when any error occurs in a program. Why do we define MOVE *ON *INLR? It frees the memory. All the fields and parameters in the memory will become blank. How do you shutdown your IBM server? PWRDWNSYS. If your workstation does not show login screen what might be the problem? Problem with some subsystem. You have given a job for printing and you are not getting the printout what might be the reason? Some more pending jobs might be there in Job Queue. There are multiple jobs for printing in job queue and you want to print a important document then what will you do? Change the priority or change the job queue name. How to see the CPU usage? WRKACTJOB or WRKSYSSTS Which Function key should be pressed to define hidden field while you are working with SDA? F4 Which function key should be pressed to watch all strings defined on the SDA screen? F20 While designing the screen using SDA, which function key should be pressed to get the field from the field reference file? F10 From work with member using PDM screen you have to modify existing member using SDA, which option do you select? Page 29

391. 392. 393. 394. 395. 396.

397.

398. 399.

400. 401.

402.

Frequently Asked Questions in AS/400

17 403. 404. Write system defined function used to place system name on the screen *SYSNAME While designing the screen, F3 function key is kept common for all record formats. On which level should it be defined? File Level Write down any two mandatory keywords used when defining a subfile? SFLDSP, SFLDSPCTL, SFLCTL, SFLSIZ, SFLPAG. While designing the screen user wants to add file level keywords, then which function key should be pressed? F14. SFLRCDNBR is a FIELD LEVEL keyword While designing the report using RLU, user wants to add record level keyword then which function key should be pressed? F18. If user wants to add one field on the report then which function key should be pressed? F11. SDA: After getting field reference from reference file selected files will appear at the bottom of the screen and then which command function will be used to get it on screen with its label to be left aligned? &3L If user wants to center the company name on his report then which line command will be used? CF. If user wants to change the length of the numeric field defined in report then which combination of keys will be used? F23 & F10. What is difference between SKIPB (2) & SPACEB (2). RLU: If user wants to define new numeric field on record format then which line command will be used? VF. Maximum report length is 132, if user is designing a report using RLU? FALSE (378 Max). To change constant field defined on RLU screen which field level keyword should be used? DFT RLU: Which field level keyword should be used to change any numeric field of length 8 to 99.99.9999 format? EDTWRD (‘ . . ‘) SPACE and SKIP are FIELD & RECORD LEVEL keywords.

405. 406.

407. 408.

409. 410.

411.

412.

413. 414.

415. 416.

417. 418.

Frequently Asked Questions in AS/400

Page 30

419. 420. 421. 422. 423. 424.

SEU shows prompt/syntax checking according to MEMBER TYPE. Using Query, its also possible to create level break reports. TRUE. Using DFU, user will be able to ___________ from Physical File? Add/Update/Selected or all fields. What is the difference between normal UPDDTA to PF and updating using DFU program? Both are same only difference is DFU allows you to add or change selected fields. What is Library? A library is a system object that serves as a directory to other objects or collection of object What is Library List? A job’s library list defines the path of libraries that the job follows when trying to locate programs, files or other As/400 objects. Difference between Source Physical File & Physical File? Source Physical File contains members who contain source statements & Physical File contains members, which contain data. Types of Libraries on As/400? There are 3 types of libraries on As/400 they are System (*sys), User (*test) & Product (*prod). Type of Source File & Physical File? Source File: - *PF/SRC Physical File: - *PF/DTA What’s the use of STRPDM? To work with Libraries, Objects, Members & User Options. In which Specs can PF be made internally? In I Specs. What is the format of As/400 Commands? Verb Object Qualifier Verb: - action Object: - on which action is performed Qualifier: - identifies your job What is externally described file? A file, which is created externally & described in the program, is called as external described file. What is Qualified & Unqualified path? Qualified path means mentioning object name along with library name while Unqualified path means directly writing the object name. Which path a good programmer should use? Unqualified path. How many types of files are available on As/400? There are 2 types of files on As/400 they are Databases files & Device files. What is Logical File? A Logical file is an Access path to the Physical File.

425.

426. 427.

428. 429. 430.

431. 432.

433. 434. 435.

Frequently Asked Questions in AS/400

Page 31

436. 437. 438. 439.

How can you specify no duplicate key? By defining the unique key. What is the command to know how many LF are related to a PF? DSPDBR (Display Database Relationship) What is the command to know key fields of file? DSPFD (F4) *ACCPTH(Access Path). What is a Join Logical File? A join Logical File can be built over the two PF’s, with the PF’s ‘joined’ by a common key value. It is available for read access. Can a Join Logical File be updated? No. What is the object type of PF, LF, Printer file & Display file? *File How many types of display are available on As/400 for user interaction? 4 Types they are Entry, Menu, Information & List Display. Which is the Primary Editor of As/400? Source Entry Utility (SEU). What are the basic features of SEU? Prompt depending upon type, shows right hand side date & left hand side the line number. What are the different methods to access SEU? Use the Start Source Entry Utility command (STRSEU) Option 8 from STRPGMMNU Through Program Development Manager (PDM) Which are the member types which SEU supports? RPG, CL, PF, LF, PRTF & DSPF. In which Specs Arrays, Tables & Constants are defined? In I Specs. What is a Spool File? Printed output items placed in an output queue are known as spooled files. How many Specs are there in RPG & Which are they? There are 7 Specs in RPG they are H, F, E, L, I, C & O. Difference between GOTO & EXSR? EXSR is a conditional branching while a GOTO is an unconditional branching. Difference between CA & CF? CA: - It does not retains the value into the buffer memory. CF: - It retains the value into the buffer memory. What does EXFMT does? Write & Read. What does the OVRDBF command do? It overrides the PF temporarily for a job. Page 32

440. 441. 442. 443. 444. 445.

446. 447. 448. 449. 450. 451.

452. 453.

Frequently Asked Questions in AS/400

454. 455. 456.

How does the RUNQRY show the output? RUNQRY shows the output always in RRN (Relative Record Number) & not in keyed sequence. How many printer files maximum can be used in single RPG program? 8 because of the overflow indicators OA-OG & OV. When you are defining a flat file in your program in F Specs which format will you specify? Flat File: - F (Fixed Length) Other File: - E (Externally Described) Difference between skip before & space before? Skip before leaves the specified no. of lines moving to the next page while Space before leaves the specified no. of lines on that page. Which indicator is used for Read? EQ (Equal to) Which are the figurative constants used in RPG? *ZERO,*BLANK, *ZEROS, *BLANKS, *HIVAL, *LOVAL, *OFF, *ON & *ALL. What is the syntax for PLIST? *ENTRY PLIST PARM What are indicators? Indicators are inbuilt class of variables for RPG. What is CAB? It compares Factor1 with Factor2 & if condition is true, control is transferred to label designated in the result field. The label specified must appear as the Factor1 of a TAG operation somewhere in the program. Which are the Relational Operators in RPG? GT, GE, LT, LE & EQ. In ‘O’ Specs what is the opcode for write? EXCPT. What is Subroutine in RPG? A subroutine is a group of statements in a program that can be processed several times in that program. Do we have to Execute the *INZSR compulsory? No, it is a system-defined subroutine it is executed automatically. What is the use of *PSSR in the program? Whenever there is any type error in the program the control straight away passes onto this subroutine. Types of Tables in RPG? There are 2 types of tables in RPG they are: Compile Time Tables Pre-Runtime Tables

457.

458. 459. 460.

461. 462.

463. 464. 465.

466. 467.

468.

469.

What does LOKUP does in Tables & Arrays? The LOKUP opcode searches the Factor1 entry in table or array.

Frequently Asked Questions in AS/400

Page 33

470. 471. 472.

File Access Opcodes? READ, SETLL, SETGT, READE, READP, READPE CHAIN, KLIST, KFLD, EXCPT & WRITE. What is RPG Fixed Logic Cycle? A logic the compiler supplies is called RPG Fixed Logic Cycle. Difference between Interactive & Batch Job? Batch job begins, runs & continues to execute instructions without human intervention or control while Interactive job are user driven. How can we run a Batch Job? SBMJOB Command. Difference between CALL & SBMJOB? CALL performs interactively job while SBMJOB performs batch job. Maximum number of Records in Display File? 1024 What does VLDCMDKEY means? Valid Command Key. What is the error if we don’t get login screen? There is some problem with subsystem. How to run other job when one job is active? Change the priority or rename the job. Use of Data Structures? • • • • Dividing a field into sub fields. Changing the format of a field. Grouping non-contiguous data in a contiguous format. Defining an area of storage in more than 1 format.

473. 474. 475. 476. 477. 478. 479.

480.

Types of Data Structures? a. b. c. d. e. File Information Data Structure. Program Status Data Structure. User Defined Data Structure. Multiple Occurrence Data Structure. Date Area Data Structure.

481.

What is Subfile? A Subfile is a temporary area in memory which records may written to & read from a display file device. Which is the subsystem that is always on till the main power switch is off? QCTL What is the command to shutdown the As/400 Server? PWRDWNSYS & Parameter *IMMED. How can we know the CPU utilization of the server? WRKACTJOB (Work with active job) WRKSYSSTS (Work with system status) Page 34

482. 483. 484.

Frequently Asked Questions in AS/400

485. 486. 487. 488. 489. 490.

Which are the libraries (system) always present in the library list? QTEMP & QGPL Which users are allowed to manipulate system libraries? QSECOFR & QSYSOPR Can the objects stored in the product library be modified? No. How many types of objects are there on As/400? 80 How is data stored in PF’s? In fixed length records. Give an example of DEFN opcode? *LIKE DEFN ENAME$ENAME (Now the $ENAME has all the attributes same like ENAME) What is DBMS? A DBMS is a software system that controls the creation, organization & modification of a database & access to the date stored within it. What is a Join Logical File? A Join Logical File combines information from two or more physical files into one record format. Join Logical Files have always one record format. Types of Object Locks & what they do? There are mainly 3 types of locks they are as follow: *EXCL : Only the routing step holding the lock can use the object *EXCLRD : Routing step can read/update the file other jobs can only read. *SHRUPD : All jobs can read/update the object. How do you place or remove locks on the objects? *AACOBJ & *DLCOBJ Some of the object types on which locks can be allocated? Data Area, Data Queue, File, Library, Message Queue, Menu &Program. What is the opcode to release all the locks on a particular PF? UNLCK What is a trigger? A trigger is an action that automatically occurs whenever a change Is made to a physical file. How many triggers can be associated with a single PF? 6 (max) How can we know the triggers associated with the PF? DSPFD with parameter TYPE (*TRG) How can we add & remove trigger to a PF? ADDPFTRG & RMVPFTRG F is the type of file desg. Used for externally described files given when file types are? I&U

491.

492.

493.

494. 495. 496. 497. 498. 499. 500. 501.

Frequently Asked Questions in AS/400

Page 35

502.

What is an Output Queue? They are the holding areas that store printed output generated from Batch programs or Interactive applications. What does print writer do? It is a system job that selects files from the output queue & prints Them on a printer. It provides the interface between output queue’s Spooled files & the printer. What are the 2 types of lines on O Specs? Record Identification Line & Field Identification Line. Can a Subroutine contain another Subroutine? No. Does the SETLL & SETGT retrieve the record? No, they simply position to the record. What is a table? A table is collection of data elements in one column, data elements Must be of same type and same length. What is a Compile Time Table? We can hard code data within the program is said to be Compile Time Table. What is a Run Time Table? Data from a separate disk file is loaded into a table each time the Program runs. Give the Table definition? TABMT 1 12 2 A Where1 = Number of entries per record 12 = Total number of entries 2 = Length of each entry A = Ascending Sequene If the data is likely to change over a period of time & Moreover data is large than which type of table is preferred? Compile Time Table. What is Alternate Table? RPG tables stores information in 1 column. To store information in multiple columns, it uses the concept of Alternate Table. What is an Array? Array is a collection of data, the data elements must be of same Length and same type. The Qualified name for an object ORDPF residing in a library TRAINING is? TRAINING/ORDPF The members in a Source Physical File contain? Source statements for a program. The members in LF contain? Access Path.

503.

504. 505. 506. 507.

508. 509. 510.

511.

512.

513. 514. 515. 516.

Frequently Asked Questions in AS/400

Page 36

517. 518. 519. 520. 521. 522. 523. 524. 525. 526.

The members in a PF contain data? (True/False) True What is the command to view the library list? DSPLIBL What is the command to create PF? CRTPF The LF is associated with how many PF’s? At least one PF at a time. The function key to start SEU session through program development manager is? F6 The Member type for an RPG & CL program which SEU supports is? RPG & CLP Printed output items placed in an output queue are known as? Spool Files. When a spooled file is created, it is placed into an? OUTQUEUE The command to display a list of spooled files? WRKSPLF Change in the externally described file does not require recompilation of the program? (True/False) False Command to display current library is? DSPCURLIB A PF can have how many record formats? Only one Which one of the following has the highest priority Library on top of the library list, Library QGPL, Library on the bottom of the library list & Current library? Current library Consider the following command: WRKOBJ OBJ (*ALLUSR/DBTMEF) Object DBTMEF in all libraries except system libraries. While designing the screen user wants to add file level keywords then which function key is pressed? F14 While designing the report using RLU user wants to add record level keywords which function key is pressed? F18 If user wants to add one field on the report then which function key is pressed? F11 If user wants to center the company name on his report then which command will be used? Page 37

527. 528. 529.

530. 531.

532.

533. 534.

Frequently Asked Questions in AS/400

CF (Center Field) 535. 536. 537. 538. 539. 540. SEU shows prompt/syntax checking according to? Member Type It is possible to run Query using RUNQRY command? YES Using Query it is possible to create level break report? YES Using DFU user can do which operation? Add, Update & Select fields What is the difference between UPDDTA to PF & updating using DFU? Both are same, only difference is DFU program allows you to add & update selected fields. Which function key should be pressed to define hidden field while you are working with SDA? F4 Which function key should be pressed to watch all string defined on SDA screen? F20 While designing the screen using SDA, which function key should be pressed to get the field from the FRF? F10. From WRKMBRPDM screen you have to modify existing member-using SDA which option do you select? 17. Write system defined function used to place system name on the screen? *SYSNAME While designing screen F3 function key is kept common for all record formats on which level should it be defined? File level Write down mandatory keywords used when defining a subfile? SFL, SFLDSP, SFLSIZ, SFLCTL & SFLPAG If user wants to change the length of the numeric field defined in the report then which combination of the keys will be used? F23 & F10 What is the difference between SKIPB (2) & SPACEB (2)? SKIPB (2) skips 1 page & on the next page after skipping 2 lines space print next while SPACEB (2) skips 2 lines space before printing. RLU: If user wants to define new numeric field on record format then which line command will be used? VF Maximum report length is 132, if user is designing a report using RLU? FALSE (Maximum is 378) To change constant field defined on RLU screen which field level keyword should be used? Page 38

541. 542.

543.

544. 545. 546. 547.

548.

549.

550. 551.

Frequently Asked Questions in AS/400

DFT (Default) 552. 553. 554. 555. 556. 557. 558. 559. 560. 561. 562. 563. 564. 565. 566. 567. Space & Skip are which level keywords? Field & Record A Join Logical File has how many Record formats? 1 A Multiple format Logical File is also known as? Union File How does Union file maintains Record formats? 1 Record format for each PF What is full form for DDS? Data Description Specification What are members? Members are separate entities within a database file & they are components of As/400 object. What if RPG, when & who invented it? Report Program Generator is IBM introduced a High Level Language in 1960. For, which purpose is H Specs used? Writing header information, date separator, currency symbol etc. What is the size of the filename in RPG? 8 Characters (Max.) Which are the different File Types in RPG? I (Input), O (Output), U (Update) & C (Combine). What are the different File Designation Types in RPG? P (Primary) & F (Fully Procedural) What’s the use of File Designation in RPG? It refers to the way program will access or retrieve the data from the file. What are the different File Format Types in RPG? F (Fixed Length) & E (Externally Described) What is the use of File Format in RPG? It tells to the program that the records are within the program (F) or outside the program (E). What is L Specs for? To tell length of page & number of lines to be printed on a page. What is I Specs for? To describe the records within Program described file, fields, constants, divide fields into sub fields & to form a group of fields. How many maximum spaces could be given in O Specs? 3 Which are Control Break Logic indicators? L1 – L9. Page 39

568. 569.

Frequently Asked Questions in AS/400

570. 571. 572. 573. 574. 575. 576. 577. 578. 579. 580. 581. 582. 583. 584. 585. 586. 587. 588.

What are Data Structures? Data Structures define an area of storage & layout of fields within the defined structure. Which are the four keywords supported by Program Status Data Structure? *STATUS, *PARM, *ROUTINE & *PROGRAM Which are the String Manipulation Opcodes? TESTN, SCAN, CHECK, CHECKR, SUBST & CAT DB2 is a type of Database? It is an Integrated RDBMS. An access path may be in which sequence? It can be in Arrival & Keyed sequence Records can be Read/Update/Deleted with which file? Simple Logical File & Physical File. Which type of object is used in DB2/400? *FILE What is SQL? SQL is an interface for programming language. File level entry for a PF can be? UNIQUE & FIFO Command to create FRF? CRTPF Join Logical File displays data from how many files? 2 or more PF’s A Query can be displayed without saving it? True Which are the Query selection criteria, which can be given in a Query? LIST To add a file to the ‘File Selection’ option of a Query, the function key to be pressed is? F9 A Query can be run in which mode? Batch & Interactive What does DFU program you to do on a record? Insert, Update Delete & File Enquiry. When are the Unique Constraints executed? During Insert. When are the Referential Constraints executed? Insert, Update & Delete. How many triggers can be associated with a file? 6(Maximum)

Frequently Asked Questions in AS/400

Page 40

589. 590. 591.

Why is the Declare cursor statement is used for? To define & name the cursor & specify rows to be fetched. What do we can do with the Embedded SQL statements? We can Insert/Update/Delete records, fetch records, fetch values from records into variables. What is the values SQLCOD when there is an error in fetching the records specified in the select statement? -ve value A file cannot have more than 1 unique key? False DLCOBJ command is mandatory for removing lock on any object? False What is a Journal? A Journal is an object used primarily to record changes to data in a PF. Which are the DB2 tools to protect Integrity of the database? Journaling & Commitment Control, Referential Integrity Embedded SQL & Object/Record Locks. A program variable coded in an Embedded SQL statement is referred to as? Host Variable Which of the CL command can be used to determine which logical files are dependent on a specific file? DSPDBR Which CL command is used to trap error messages during program execution? MONMSG Which CL command can be used at program execution to redirect the file named in an RPG program? OVRDBF What is the length of the variable in the given example? DCL VAR (&Name) TYPE (*Char)? Default 32 & for Decimal 15,5 Which of the following CL command us used to display a screen & wait for the user to press enter or a function key? SNDRCVF A CL program, EMPCL1 calls the RPG program EMP001 & the calls the RPG program EMP002.RPg program EMP001 & EMP002 were both written to process the file, In order to test changes in EMP001 a test file called TESTEMP is library TESTLIB needs to be used EMP002 should process EMPMAST as it normally would. Add the following CL statement directly before the call to EMP002 DLTOVR FILE (EMPMAST) What is command to convert the date format in CL? CVTDAT What is command to write or update to a database file in CL? No command

592. 593. 594. 595. 596. 597.

598. 599.

600.

601.

602.

603. 604.

Frequently Asked Questions in AS/400

Page 41

605. 606. 607. 608. 609.

What is the command for retrieving user profile attributes? RTVUSRPRF What is the command to display the Data Area “Name”? DSPDTAARA “Name” What is the command to submit the Batch Job? SBMJOB Submitting a job using numeric parameters, the length of the parameter should be? 15,5 What will be the attributes of the output report. OVRPRTF FILE (Output) SPLFNAME (Reports) OVRPRTF FILE (Output) COPIES (3) CALL PGM (Rpg001) Copies = 3 Command to retrieve attributes of a job? RTVJOBA Only 1 file can be declared in CL program? True Command in CL to copy a Query to a database file? CPYFRMQRYF Command CLOF stands for? Closes the database file. Command OPNQRYF stands for? Opens a database file to a set of database records that satisfies a database Query request. Command OVRDBF stands for? Override (replace) the file named in the program & Override certain parameters of a file that are used by the program. Can you debug RPG III program with STRDBG? YES & Vice versa NO Which of the following options describes the result of using the USROPN keyword? This file must be opened with an explicit OPEN operation prior to accessing this file. What is the type of the Array in the following code? D Arr S 30A Dim (30) PerRcd (1) CTADTA Compile Time Array Given the following code segment. D PGMNAME S 20A Inz (‘THX1138’) C CALL PGMNAME C PARM P1 5 The CALL to the program name stored in the PGMNAME field ends in an error, the program is not found. Which of the following methods will make externally describe file fields available to a program? Page 42

610. 611. 612. 613. 614. 615.

616. 617. 618.

619.

620.

Frequently Asked Questions in AS/400

A Data Structure definition specification that names the file on the EXTNAME keyword. 621. In the following code %SUBST is a Eval Result = %SUBST (Flda: Str: Len) Built in function What ILE RPG/400 code procedures the same results as the RPG/400 code shown below? C A Add B Sum1 Sum1 Mult X Rslt Rslt Div Tot Answ C Eval Answ = (A+B)*X/Tot The DATFMT keyword allows you to specify which of the following date format? *USA What is the command invoked when we give option 14 to RPGLE program? CRTBNDRPG What will happen, if we use STRISDB command for RPGLE program? Error: Program type not valid If we want to define a new variable $Aprid with same attributes as field Crpid, the RPGLE code look like this: D $Aprid S Like (Crprid) The keyword used to define number of entries per record for Tables/Arrays in RPGLE is? PerRcd (n) What will be the output of the following ILE code? D Loandate SD DATFMT (*USA) Inz (D’12 31 92’) UBDUR -30: *D Loandate Which will be the output of the following ILE Code? D Answer S T C T’12:00PM’ ADDDUR 12: *Hours Answer 00.00 AM Which of the following Specs. Is not used in ILE? E Specs. Which is the Built in function to convert numeric field to Alpha field? %EDITC, %EDITW, %CHAR If user wants to retrieve the time in microseconds, what Would be data type of the field? Z Subprocedures can use RPG cycle? False RPGLE supports which calls? Static & Bound State whether the following code is correct? @Arr is an array. No of elements = 5, & Length of each element = 3A. C Movel ‘ABC’ @Arr, X False Page 43

622.

623. 624. 625. 626.

627. 628.

629.

630. 631. 632.

633. 634. 635.

Frequently Asked Questions in AS/400

636. 637.

How many files can be opened in RPG IV program? No Limit For CHAIN, SETLL, SETGT, READE, READPE & READE where indicators are given & their success? Opcode Success Indicator CHAIN OFF HI READ, READE, READP, READPE OFF EQ SETLL ON EQ SETGT ON HI What does XFOOT, MOVEA & SORTA does? XFOOT: - Sums the elements of an array SORTA: - Sorts the array in ascending order but if while declaring the array Sequence is defined as D it arranges in descending order. MOVEA: - Transfers valued from Factor2 to the Result field of the Operation but one of them must be an array Advantages of ILE or RPG? 1) In RPG it is one step compilation (we will get *PGM object) while in ILE-RPG it is two step compilation (we have to create a *MODULE and then bind that module to a program. In RPG we cannot call a program i.e. recursive call is not supported. While in ILE RPG it is supported. Extended Factor 2 Length of Factor 1 & 2 is increased to 14 as well as Length of OP-CODE is 10 Free format is allowed Built-in-functions are available. In case of ILE we have the concept of ACTIVATION GROUP. In ILE EPM (Extended Program Model) is implemented while in RPG OPM (original program model) What is sub-file? It is group of records read from or written to display file in a column format. It is always a subset of records from physical file hence the name subfile. SFL and SFLCTL ? There are the two mandatory key words for subfile program /design. While SFL is used to define Subfile record format while SFLCTL is used to define Subfile Control Record format. And this two are the different parts of sub-file. What are the Sub file Types? There are three types of sub file Load All - In which all the records from the Physical file or at max. 9999 records are written to subfile. Here sub file size should 9999 or the number of records form PF which ever is less. In this case PAGEUP AND PAGEDOWN is taken care by system. SFLPAG should be less than SFLSIZ Single Page/non-elastic – In this case sub file size (SFLSIZ) must be equal to sub file page (SFLPAG). For example, if SFLSIZ = 10 and SFLPAG = 10, then 10 records from file are written to subfile. In this case PAG Expandable/elastic/growing – In this case SFLSIZ should be grater at least by 1 than SFLPAG.(this is applicable to Load all type also). For example, SFLSIZ = 10 and SFLPAG=9, then 10 records from written the sub file from physical file but only 9 are displayed on screen.

638.

639.

640.

641.

642.

643.

what is SFLDROP and SFLFOLD These are the two key-words used in sub-file for displaying additional information which cannot fit one line. SFLFOLD will give view in folded form and SFLDROP will give view in truncated form. Page 44

Frequently Asked Questions in AS/400

644.

What is SFLCSRRRN and SFLRCDNBR ? SFLCSRRRN will give the RRN of the record where the cursor is positioned. SFLRCDNBR will give the RRN of the First record displayed on the screen at a given time. What is SFLNXTCHG? Whenever a record is changed on display file. An MDT is set ON. If an indicator is associated with SLFNXTCHG and it is SETON then READC will read only the changed record. And if the indicator is not associated and it is seton it READC reads all the records from sub-file Reading records from a subfile using READC With the help of READC op-code we can read only changed records from subfile. Required key words for subfile. SFL, SFLCTL, SFLDSP, SFLSIZ, SFLPAG are the mandatory key words. SFLDSPCTL, SFLCLR, SFLINZ, SFLEND are the optional key words used in subfile. PLIST and KLIST PLIST is a list of parameter and KLIST is the list of KEY fields. Position to particular record? With help of op-code SETLL from RPG/RPGLE, it will position the record pointer just before the required record. Next READ will read that particular record. LR indicator and RETURN operation? LR indicator – It close all the open files, Frees the space and release ODP. RETURN – It dose not close files and dose not release the ODP and passes the control to the calling program / command prompt if the program is called from command prompt. Different operations on indicator? There are only two operations on indicator those are SETON and SETOFF. What is the operation / op-code to change in file? In RPG/RPGLE with the help of UPDAT / UPDATE op-code. How do I insert a record into a database file? In RPG / RPGLE with the help of WRITE op-code. In CL/CLLE we can not insert a record into database file. Two way of deleting records from file? one is DELETE and other with the help of O-Specs ADD/DEL specify DEL. How to define a subroutine ? with help of two op-code BEGSR(Begin subroutine) ENDSR (End subroutine) and between these two op-codes write the instruction. The whole construct is defined as subroutine. In case of Load all sub-file, if we type options and then PGDN,PGUP , will options be there on the display / in subfile. Yes. It will retain all the options entered in the previous page. How will you take care of multiple options in case sub-file? We will have to handle it within the program using a READC in a loop. If we type some options on screen out of which some are invalid and pressed enter, what should happen?

645.

646. 647.

648. 649.

650.

651. 652. 653.

654. 655.

656.

657. 658.

Frequently Asked Questions in AS/400

Page 45

It should process all the valid options before invalid options encounter. Once invalid options is encountered program should stop processing and display error message at the bottom of the scrreen. 659. How will you achieve POSITION TO in Load all subfile? While loading subfile move RRN, KEYVALUE in to a two dimensional array. When a key value is entered into POSITION TO field, having a LOOKUP into a array we can get a corresponding RRN. Assigning RRN value to SFLRCDNBR and then displaying the sub-file. What are the built in function in RPGLE ? %SIZE - Gives the size of the variable or literal %PARM – Gives the number of parameter passed to parameter %PADDR - Gives the address of the procedure %ADDR - Gives address of the variable %TRIM - Trims the right & left blanks of the string %TRIMR - Trims the right blanks of the string %TRIML - Trims the Left blanks of the string %REPLACE - Replaces the specified number of characters from the specified position. %SUBST - gives a sub string from a variable (%SUBST(X:Y:Z) %ELEM - Gives number of elements or occurrences %INDEX - Change the index of a table or multiple-occurrence data structure. %LEN – Returns the length of value from a field. %CHAR – Converts a Numeric filed to character. %EOF – End of File. %FOUND – If record is Found. How to print HEADER if O-specs are used in program ? With the help of op-code EXCEPT. How to define array in D spec. D ARR2 S 5 DIM(5) CTDATA PERRCD(1) It is a Compile time array. D ARR1 S 1 0 DIM(5) It is a Run time array D ARR1 S 40 DIM(7) FROMFILE(File name) PERRCD(1) It is Pre Run time array What is *PSSR and INFSR? It is an exception/error handling routine which is specified in F-Sepcs for a file. INFSR(*PSSR), INFSR is an information subroutine to specify the routine name in F-specs. How to go to *PSSR ? Whenever an exception/error occurs and *PSSR is declared in F-specs, it is automatically goes to *PSSR Can we call *PSSR if no exception occurs? What happen it is called ? Yes, Whether the statements specified are executed. What is INFDS? INFDS is a File Information Data Structure. 1 9 10 11 16 8 9 10 15 21 Character Character Character Zoned dec Character *FILE *STATUS *OPCODE The first 8 characters of the file Open indication (1 = open). End of file (1 = end of file) Status code. Operation code The first five posi Page 46

660.

661. 662.

663.

664.

665. 666.

Frequently Asked Questions in AS/400

22 - 29 Character 30 - 37 Character 667.

*ROUTINE

First 8 characters of the procedure RPG IV source listing line number

How to determine if the record is in used by another user ? We can determine weather a record is in use bye another user with the help of status code (*STATUS). If *STATUS = 01218 i.e. record already locked. How to write *PSSR ? It just similar to any other subroutine. *PSSR BEGSR ……………… ……………… ……………. ENDSR What is Procedure ? A procedure is the set of self contained high level language statements that can perform a particular task and then returns to a caller. How to define a procedure ? First we have define Procedure Prototype along with all parameter. And PR. D PROC1 PR Then define Procedure with Begin/End Procedure Name Begin/End P PROC1 B Export Then define Procedure Interface along with parameter and PI D PROC1 PI 5 0 D PARMA 5 0 D PARMB 5 0 Define all the parameters as a variable to the procedure D PARMA S 5 0 D PARMB S 5 0 In not returnable procedure, the procedure should end with C PROC1 E In returnable procedure, it should end with C RETURN PARMA + PARMB What is Procedure Prototype and Procedure Interface. Procedure Prototype In this section we specify the name of the procedure along with PR. D PROC1 PR Procedure Interface It is section where we define all the parameter which are receiving or returning some values. D PROC1 PI 5 0 D PARMA 5 0 D PARMB 5 0 How to define Global Parameter in ILE ? Declare a variable with key word EXPORT and while using this variable in anther program declare with IMPORT keyword. What is the disadvantage of using Global variable? We can not trace out at which point the value of variable is changed. What is Service Program? Page 47

668.

669.

670.

671.

672.

673. 674.

Frequently Asked Questions in AS/400

A Service Program is a collection of runnable procedures and available data items easily accessible by other ILE programs. In many respects it is similar to a subroutine library and procedure library. A service program differs from a program in two ways: It does not contain a program entry procedure. This means that you cannot call a service program using the CALL operation. A service program is bound into a program or other service programs using binding by reference. 675. 676. 677. 678. What is the structure of Service Program ? What is signature ? ????????????????????????????? What is *ISO date format? YYYY-MM-DD for other formats refer to IBM manual or ERIS document. If we tried to move year part of *ISO date into a field of length 3, what will happen ? Program crashes, as in case of *ISO format it required fields of 4,2,2. How to avoid using indicators in ILE ? By using the standard Built In Expressions like %FOUND,%EOF, NOT %EOF, %BOF, NOT %BOF… etc.

Display / Printer File
679. EDTCDE & EDTWRD EDTCDE & EDTWRD are key words used for formatting purpose. EDTCDE cannot be applied to Character filed. And EDTCDE has some Codes pre-defined for example, EDTCDE(Z) – for suppressing the leading zero Y – for date field. EDTWRD can be used to define user defined formatting for a fields. OVERLAY It allows a record format to be displayed on screen retaining the previous displayed record formats. What key word is used when screen is re-display? RSTDSP is a parameter to be specified at compile time for display file. Command Attention key and Command Function Key ? With the help of Command attention key we can pass only the indicator status to program not the data from screen. While command function key passes indicator status as well as a data from screen to program. How to validate input values in Display file ? with the help of Validity check key words VALUE, RANGE, COMP Disadvantage of using Validity Check keyword? How to overcome these disadvantages ? If invalid values are entered, The option filed is displayed in reverse image. System defined message is displayed which may not be user friendly. Keyboard is locked, we have to reset it. To overcome above disadvantage validations is done within program and user friendly/defined message is displayed. What are the important factors in Error message subfile ? We must define error message record format (SFLMSG). And a Program Queue. (PGMQ) and Record format is associated to a line number. How to define to define a Hidden filed in DSPF ? Define a filed in a DSPF of use HIDDEN.(H) Page 48

680.

681. 682.

683. 684.

685.

686.

Frequently Asked Questions in AS/400

687.

How To get the cursor position? With the help of RTNCSRLOC keyword, here we need to define a field to get row and column. Length of variable should be 5,0 fixed We can specify *FILED for filed *REC for Record on which a key is pressed.

SQL / 400 – Structured Query Language
688. What is the stored procedure and how do you define a stored procedure. A stored procedure is a program that can be called to perform operations that can include both host language statements and SQL statements. Procedures in SQL provide the same benefits as procedures in a hot language. That is, a common piece of code need only be written and maintained once and can be called from several programs. Stored procedures can be used in both distributed and non-distributed applicaitons. It is defined using DECLARE PROCEDURE statement, syntax is as below… EXEC SQL DELCARE P1 PROCEDURE (:PARM1 INOUT CHAR(10)) (EXTERNAL NAME MYLIB/PROC1 LANGUAGE RPGLE SIMPLE CALL WITH NULLS); END-SQL We can have parameters as IN , OUT , INOUT type. Language can be RPGLE, C, CL, etc.. MYLIB/PROC1 this PROC1 is a program written and compiled separately and it is of language which you are specifying in section LANGUAGE. 689. Writing an SQL statement from selecting records from TWO files using single statement and Nested select statement. Using Single statement. SELECT * FROM FILE1, FILE2 WHERE FILE1.FLD1 = FILE2.FLD1 Using Nested Select statement SELECT * FROM FILE1 WHERE FILE1.FLD1 EQ (SELECT FILE2.FLD1 FROM FILE2) 690. How do you achieve referential integrity? By adding Referential Integrity Constraints to a Physical file or Logical file. Constraints like PRIMARY KEY, FOREGIN KEY, DELETE RULE, UPDATE RULE. ETC. Commands are ADDPFCST for Physical file and ADDLFCST for Logical file. Type of constraints *REFCST - A referential constraint is being added *UNQCST - A unique constraint is being added. *PRIKEY - A primary key constraint is being added *CHKCST - A check constraint is being added Type of Delete rule (DLTRULE) *NOACTION – 1. Deleting a record in parent file is permitted (not restricted) if data for a non-null parent key does not match data for a foreign key. Deleting a record in a parent file is restricted (does not occur) if data for a non-null parent key matches data for a foreign key. *RESTRICT – Frequently Asked Questions in AS/400 Page 49

Deleting a record in a parent file is permitted if data for a non-null parent key does not match data for a foreign key. Deleting a record in a parent file is restricted if data for a non-null parent key matches data for a foreign key. *CASCADE – The cascade delete rule is used. Deleting a record in a parent file causes matching records in the dependent file to be deleted when data for a non-null parent key matches data for a foreign key. Type of Update rule (UPDRULE) *NOACTION – No Action *RESTRICT – Updating a record in a parent file is permitted if data for a non-null parent key does not match data for a foreign key. Updating a record in a parent file is restricted if data for a non-null parent key matches data for a foreign key. 691. Where Stored procedure lies in the system. If we want to have a look where the stored procedure, we can have a look through SQL. Select * from ????????????????????? Difference between View and Index ? View will not any data.. It only shows a data from table while Index has a Indexing Data for a sequence on which Index is created. View is similar to Logical file without having Key and Index is similar to Logical File having Key (as keyed logical file has access path data) Table is similar to PF. Can we have records (with fields from more than one file) from multiple files and Nested / sub query in SQL ? Yes, we can have record from multiple file with join condition and we also can have nested query or subquery like SELECT * FROM FILE1 WHERE FILE1.FLD1 IN (SELECT FILE2.FLD1 FROM FILE2) What is the sequence when using CURSOR? Define Cursor Declare Cursor Open Cursor Fetch record Processing Close Cursor Different type of Cursor? Two types of Cursor Simple / Serial Cursor A serial cursor is one defined without SCROLL key word For serial cursor each row is fetched only once per OPEN When it is opened it is positioned before the first row in the table. To use serial cursor we have to re-issue OPEN Scrollable Cursor which is defined with SCROLL key word. Cursor defined with SCROLL key word Rows of cursor can be fetched many times When it is opened it is positioned before the first row in the table. When the FETCH is issued , the cursor is positioned to the row of the table that is specified by the POSITION option. (FIRST, LAST, PREV, NEXT, RELATIVE) Frequently Asked Questions in AS/400 Page 50

692.

693.

694.

695.

696. 697.

How to call / invoke the stored procedure ? Using CALL command . What are the two important parameter while creating a SQLRPGLE program ? 1) CMTCTL - *NONE (Commitment Control) CLOSQLCR - *ENDMOD (End of Module) by default is *ENDACTGRP Can we update database file with the help SQL Cursor ? While declaring the cursor if we specify FOR READ then we cannot update but if we specify FOR UPDATE or nothing (by default is FOR UPDATE) then we can update database file. Does Opening of cursor locks records ? Yes, Records selected into cursor are locked when the cursor is opened. What will happen if we call stored procedure again and again ? It the creation of procedure is included in the called program, then we can have different set of output depending upon the parameter passed to it. And If creation is outside the called program then we will be available with only one set of output.

698.

699. 700.

Miscellaneous
701. What is Library? Library is an AS/400 object of type *LIB. It can contain all types of objects except another object of type *LIB What is Library List? It is sequence of objects of type *LIB, from which we would retrieve or save the required object. What is Sub-system in as/400? It is Run-time environment, which provides all the resources required for the execution of program along with necessary memory space required. What is Trigger? Trigger are the programs which are activated upon certain event. AS/400 triggers are file level triggers. ???????????????????/ needs to elaborated more….????????????????? What is difference between Interactive and Batch Job ? job where user interaction is present is called an interactive job. A job where user interaction is not required is called a batch job. What is library list ? list that indicate libraries used for the process and the order in which it has to be searched. For example to find an object system will search in the in the ascending order of libraries mention in library list. What is JOBQ and PRINTQ ? Jobs go into the job queue in order to run in a subsystem. Print queue where the printer files (report) reside and wait for their turn to get printed. How to handle run time error in CL Program ? By using command MONMSG with suitable message identifier What is Data area and how it is used in RPG program ? Data area is a type of an object which is used for storing data. It is defined using opcode *NAMVAR. The data is read by "IN" and written by "OUT" opcode. Page 51

702. 703.

704.

705.

706.

707.

708. 709.

Frequently Asked Questions in AS/400

710.

Which program RPG or CL is efficent to update a transaction onto a database file and why ? CL program cannot update/write onto a data base file and hence, choice is RPG program. How QTEMP is different from other libraries ? It is associated to each job (Other Jobs can't access the other's QTEMP). QTEMP is created when the Job is started and deleted when Job is closed. What is OVRDBF and where it is used ? OVRDBF is a command to temprorarly over ride the parameters of a Data base file. It is used in association with OPNQRYF, to use different file with same record format in a program. What kind of job is it --- you have signed on AS400 and then typed Call XYZ and pgm XYZ is an RPG program which simply reads a database file and generates report. It is not a job. What is single level storage ? Main storage and disk stroage appears contiguous. An object is stored and retrieved via a deviceindependent addressing mechanism. What is the difference between OPNQRYF & Logical file ? OPNQRYF is temporary Logical file. OPNQRYF is used for dynamic selection, situation where frequency to run the programs is less & very large number of records are present in data base file. Why can't a database file be used in place of data area ? Using database file will reduce the performance of application. What does STRSRVJOB command used for ? It is used to debug the batch programs or debug the interactive program of another job. What is difference between Physical file and Logical File ? Physical file contain data where as logical file serve as access path. How many record formats can you have in a Physical & Logical file? Physical file can contain only one record format where as Logical file can have more than one record format. Which is the better option to write a transaction (order header and detail transaction) using two physical files or one join logical file(on those two physical files) in a program and why ? Using two physical files is the better option because records can't be written through join logical file. Can we have a multi record format join and non join logical file based on one physical file ? We can only have Join logical file based on one physical file. What is difference between Journaling and commitment control ? Journaling record all transactions and is used for restoring or reverting back the transactions onto the database file for a particular time span. Committment control ensures that a transaction is updated successfully onto the data base (all relevant files). What is difference between Multi record format Join and Non- Join logical file ? Multi record format logical file contain more than one record format( based on one or more physical file) With join logical file only read operation can be done whereas in non-join logical file all operations can be done. What is the difference between triggers and referential integrity ? Page 52

711.

712.

713.

714.

715.

716. 717. 718. 719.

720.

721.

722.

723.

724.

Frequently Asked Questions in AS/400

Triggers are programs (which carry out a particular business function) invoked either before or after manipulation of the records in a database. Referential integrity maintain the integrity of a database using key fields. 725. 726. 727. 728. Can a file be journaled without using it under commitment control ? Yes Can a file be used under commitment control without being jorunaled ? No What is difference between module and program ? Module is a non-runnable object where as program is runnable. What is difference between ILE RPG and RPG/400 ? Difference is in program development (specification), program creation (create module, bind module to create program), program running (activation group, resource sharing). What are different types of Arrays and what is the difference between them ? There are 3 types of arrays Compile time, Pre-Run time and Run time. Compile time array gets value at the time of compilation of the source of a program. Pre-run time array gets value from a file at the beginning of a program execution (before any statement of a program is executed). Run time array gets value during the program execution. What is a data structure ? What are its uses ? A data structure is a variable field which is partitioned by defining variable fields (call as Sub fields). Various uses are converting character value into numeric, splitting date field into day, month and year, combining various key fields to make one key field and so on. What is Multi occurence data structure ? It is an array of a Data structure. Can an indexed file (File with key fields) be accessed in arrival sequence in an RPG program ? Yes, don't specify "K" in F specification in the program for this file. What is the difference between *LIKE and *NAMVAR opcode? *LIKE defines program variable same as that of another pre defined variable. *NAMVAR is used to define variable as Data area. What is the difference between SKIPA & SPACEA ? In a printer file the printing control goes to the line (of the page) mention in SKIPB where as it leaves number of lines mention in SPACEB How to handle run time error in RPG Program ? by using indicator on statement, subroutine *PSSR How will you display a particular page (or record) in a Sub file? Move a valid relative record number(RRN) in the field specified using SFLRCDNBR keyword in DDS What is difference between Command Function and Command Attention key? Command function key returns variable value along with response indicator (associated with CF key) where as Command attention returns only the response indicator value. What are different type of Sub files ? There are three types of Subfile (1) Load all Subfile (Page Size = 9999) (2) Extendable Sub file (Sub file size > Sub file page), (3) Load by Page (Sub file size = Sub file page) What is SFLNXTCHG keyword used for ? Page 53

729.

730.

731. 732. 733.

734.

735. 736. 737.

738.

739.

Frequently Asked Questions in AS/400

To read the change records for 2nd, 3rd,...times from sub file after reading them once. 740. 741. What is SFLROLVAL keyword used for ? It specify the number of records to roll in a subfile. What is difference between keyword SFLCSRRRN & RTNCSRLOC ? RTNCSRLOC returns the location of cursor into the variable (associated with this keyword) and SFLCSRRRN returns the relative record number where the cursor is positioned.

What's the difference between CHAIN and SETLL? Is there a performance advantage? There are two important differences between CHAIN and SETLL. 1. The CHAIN operation applies a record lock to files that are open or update. The SETLL operation does not apply the lock. 2. The CHAIN operation copies the record's data to the input buffer for the program. The SETLL operation does not. AN/OR lines (positions 7 and 8 of | Maximum of 7 per operation. calculation specifications) Arrays and tables | Maximum of 200 per program. | Array/table input record length | Maximum length is 80. for compile time Character field length | Maximum length is 256. Control fields (position 59 and 60 | Maximum length is 256. of input specifications) length | Data structure length | Maximum of 9999. Data structure occurrences (number | Maximum of 9999 per data of) | structure. Edit Word | Maximum length of 24 for literals | or 115 for named constants. Elements in an array/table | Maximum of 9999 per array/table. (positions 36 through 39 of | extension specifications) | File | Maximum of 50 per program. Levels of nesting in structured | Maximum of 100. groups | Look-ahead | Can be specified only once for a file. Can be specified only for primary and secondary files. Named Constant | Maximum length of 256 for character named constant, 512 for hexadecimal named constant, and | | | 30 digits with 9 decimal | | | positions for numeric named | | | constant. | Overflow indicator | Only 1 unique overflow indicator | | can be specified per printer | | file. | Parameters | Maximum of 255 | Primary file (P in position 16 of | Maximum of 1 per program. | | file description specifications) | | Printer file (PRINTER in positions | Maximum of 8 per program. | Frequently Asked Questions in AS/400

Page 54

| 40 through 46 of file description | | | | | | specifications) | Printing lines per page | Minimum of 2; maximum of 112. Program status data structure | Only 1 allowed per program. Record address file (R in position | Only 1 allowed per program. | | Maximum length is 9999. (1) |

| | |

| 16 of file description | specifications) | | Record length for program

| described file (positions 24 Some ILE RPG Features:

Syntax: All non-external data definitions can now be specified in a D-specifications that are new to ILE RPG. In addition you can define "named constants" that greatly simplify coding in the C-spec's. Also C-spec formats have changed slightly to provide for variable names of up to 10 characters (up from 6 in RPG/400) and longer operation codes. New Operations: Several have been added. One that I like is EVAL which allows you to evaluate a mathematical expression similar to Cobol and other mathematical programming languages such as Basic, FORTRAN, PL/1, etc. Modularity: This is a big plus. You can now write modules (non-executable) in several languages and bind them together into a single ILE program. Thus you can use the best language (ILE C, ILE Cobol, ILE RPG, ILE CLP) for a process or use existing modules to write a program. You can also write callable procedures or procedures that function like built-in functions. More: There is of course much more that is new in ILE RPG. For performance reasons, you should have a good understanding of ILE. Bryan Meyers has written several very good articles in NEWS/400 that can help you avoid some ILE traps. He is also one of the moderators | | | through 27 of file description |

| specifications) | | Structured groups (see levels of | | | | | nesting) | Subroutines | Maximum of 254 per program. Tables (see arrays) | (1)Any device record size restraints override this value. Download - Program Source right click save as msdsbmjob.cl

Submit Jobs -

Helps you manage your applications. It allows the user to control which printer the reports will be printed on and how many copies will be printed. Just before a job is submitted, a prompt will ask the user "outq" & "Copies". The benefit, it allows the user to control their jobs. If you do not give the end user control, they will buy a PC and get the control required. The data processing department does not own the computer, they just provide a service to the rest of the company. Lighten up, quit hiding the power of the AS400, and share it. After installing you should execute UPDDTA AMUS00 and add users authority to programmers so they can run interactive & control the jobq and priority.
Frequently Asked Questions in AS/400 Page 55

SBMJOBS Submit Job Example The command to submit a job is SBMJOBS. Put this command in you CLP programs instead of IBM's SBMJOB. SBMJOBS JOBNAM(MSD04) COMMAND('DSPLIB LIB(MSD04) OUTPUT(*PRINT)') You can prompt SBMJOBS just like you would SBMJOB. When the above command is executed, the following will be displayed.
Report: Submit Job www.5-10.com 8/12/00 08:43:30 Outq.................. STEVE Copies................ 1 Hold Y/N.............. N (Hold and not print until released) Save Y/N.............. N (Save after printing) Print Text............ *NONE Out Schedule Priority. 5 (1-9) Job: Hold on Job Queue y/N. N (Run at night) Schedule Date......... *CURRENT (*current, *mon...) F4=Calendar Schedule Time......... *CURRENT (1300 is 1:00pm, *current) Job Date.............. *SCHEDULE (No slashes, *schedule) F4=Calendar Job Priority.......... 5 (1-9) Jobq.................. *JOBD For user.............. *CURRENT (*current) Current Library....... *CURRENT Job Description....... *USRPRF Job Name.............. TEST CPI................... Command............... DSPLIB LIB(MSD04) OUTPUT(*PRINT) F1=Help F3=Cancel,

OUTQ Output queue to put your report. Available outq's are COPIES Number of copies all reports will print 1 - 99 are valid entries HOLD Hold report Y/N Y - Hold the report on the out queue N - Print the report SAVE Save Y/N Y = Save the report after printing. N = delete the report from the out queue after printing OUTPTY Report outq schedule priority 1 - 9, 1 will schedule before 9 JOBHLD Run at night N = Submits to normal jobq. Y = Submits to NITES jobq. This allows users to run jobs after the nightly billing has finished. The NITES queue will be on hold during the day. It is released by your billing job. Then it is reholds after all jobs in the NITES queue is complete. You will need to create the NITES Queue, and put the following commands at the end of your nightly billing job. RLSJOBQ JOBQ(NITES) SBMJOB CMD(HLDJOBQ JOBQ(NITES)) JOB(HLDJOBQ) JOBQ(NITES) JOBPTY(9) SCHMDY Schedule Date Use this field to specify when a job is to run. Example, you want to run something on Sunday when the system is not busy. *Current - eligible to run on today
Frequently Asked Questions in AS/400 Page 56

010194 - eligible to run on 01/01/94 *mon *tue *wed *thu *fri *sat *sun Becomes eligible to run next Monday, Tuesday, Wednesday, Thursday, Friday, Saturday or Sunday. F4 will not work unless you have down loaded the calendar program. Use it to Popup a calendar and select the date you wish the job to run on.
Saturday August 12, 2000 Sun Mon Tue Wed Thr Fri Sat 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Select 8/12/2000 F1=Help F3=Exit Rollup/down

SCHTIM Schedule time The time of the day the job becomes eligible to run. The time is military, hour, minute, second. *current - Immediately eligible to run. 062993 - Eligible June 29th, 1993 to run. JOBDATE Job Date Most reports print the job date in the report heading Change this date if you want a specific date to print. *SCHEDULE The date the job started running. *CURRENT The date the job was submitted. RPG uses the job date as the UDATE & *DATE. F4 will not work unless you have down loaded the calendar program. Use it to Popup a calendar and select the date you wish the job to run on. JOBPTY Job schedule Priority Valid range from 1 to 9, 1=high, 5=normal, 9=low priority. Only authorized users can change this field. If you have the menu system, go to user update and change the "Submit Job Change Priority" field. If you do not have the menu system, you can UPDDTA AMUS00 and add users that you want to have this authority, JOBQ Job Queue Key in the job queue name. Only authorized users can change this field. If you have the menu system, go to user update and change the "Submit Job Change Priority" field. If you do not have the menu system, you can UPDDTA AMUS00 and add users that you want to have this authority, CURLIB Current Library The current library is always at the top of your library list. The current library is restored when the job terminates. Programmers are the only users would need to change this field. Only authorized users can change this field. If you have the menu system, go to user update and change the "Submit Job Change Priority" field. If you do not have the menu system, you can UPDDTA AMUS00 and add users that you want to have this authority. CPI Character per inch No longer used F24 Run Interactive Only authorized users see this message. It allows programmers to debug batch jobs interactively. If you have the menu system, go to user update and change the "Submit
Frequently Asked Questions in AS/400 Page 57

Job Run Interactive" field. If you do not have the menu system, you can UPDDTA AMUS00 and add users that you want to have this authority. How it works The submitted job is ran under a shell (control program). The shell overrides the printer file & calls then executes your command. Limitations Overides in to printer files in your commands must say SECURE(*YES). Parameters are not passed well. Information that needs passed should be put in the local data area. Example:
Cl prompting program. chgvar %sst(*lda 101 6) &date RPG print program. I UDS I 101 1060DATE

PCVTSAVPF AS/400 Command
Introduction
The PCVTSAVPF and PCVTPFSAV commands together provide a simple low-level way of transferring all types of objects between two ISeries (AS/400, AS400) systems using intermediate save files and physical files. This is one of the commands in our ISeries utilities library (click this URL for full contact and pricing details). This assumes the following steps: 1) Save object(s) on 1st ISeries to save file using SAVOBJ command 2) Convert save file to physical file also on 1st ISeries using PCVTSAVPF command 3) Transmit the physical file to a 2nd ISeries e.g. via DDM or FTP 4) Convert the physical file on the 2nd ISeries back to a save file using the PCVTPFSAV command 5) Restore the object(s) from the save file onto the 2nd ISeries using the RSTOBJ command

Examples
PCVTSAVPF FROMFILE(TFRLIB/TFRSAV1) TOFILE(TFRLIB/TFRPF1) MBR(*FIRST) Command above converts the contents of the save file TFRSAV1 in library TFRLIB to a physical file TFRPF1 in the same library.

Restrictions
1) The physical file must have a record length of exactly 528 bytes if the corresponding PCVTPFSAV command is to process correctly. In other words, use the CRTPF command with a RCDLEN(528) parameter to create the TOFILE physical file for the PCVTSAVPF command. Frequently Asked Questions in AS/400 Page 58

IBM rebranded the AS/400 - some users called it AS400 - to ISeries several years ago. All 3 names - ISeries, AS/400, AS400 - refer to exactly the same system.

Frequently Asked Questions in AS/400

Page 59