How can i check the object existance in RPG program without
using QCMDEXC command.
Answers were Sorted based on User's Feedback
Answer / syam
Without using QCMDEXC.
RPG Free format
/Free
MONITOR;
Open emp1;
ON-ERROR 1217;
Dsply ' File not found'
return;
ENDMON;
/END-FREE
| Is This Answer Correct ? | 13 Yes | 1 No |
Answer / keshar jain
In addition to above answers with MONITOR we can check for mesage CPF9801. It will give clear idea about object existence.
| Is This Answer Correct ? | 3 Yes | 0 No |
Answer / roshan.wankar
1. To check File object, you should defined file in User
open mode and by using %Open operation we can identify the
file object is present or not.
2. To check Program object,
Use MONITOR; opcode or in calling specify low indicator, if
Low indicator is On, means object is not present in library
list.
| Is This Answer Correct ? | 2 Yes | 0 No |
Answer / naveen chandra joshi
The question is:
How can i check the object existence in RPG program without
using QCMDEXC command?
Answers posted by AS/400 experts:- use Monitor On error; what if file is not in user opened mode and already declared & opened in F specs...this solution will not work in this case and program will throw error when it tries to open the file in F specs itself...(This we can solve using File Information DS)
User wants to know the object existence, it (object)can be file object, program object or any other type of object.
Generally we check object existence by using CHKOBJ command but user said not to use QCMDEXC API...
The solution is(by using QUSROBJD API):
*---------- Global variables: ----------------------*
D ObjNam s 10a
D ObjLib s 10a
D ObjTyp s 10a
*---------- Api error data structure: --------------*
D ApiError Ds
D AeBytPro 10i 0 Inz( %Size(ApiError))
D AeBytAvl 10i 0 Inz
D AeMsgId 7a
D 1a
D AeMsgDta 128a
*-- Retrieve object description: -----------------------*
D RtvObjD Pr ExtPgm('QUSROBJD')
D RoRcvVar 32767a Options(*VarSize )
D RoRcvVarLen 10i 0 Const
D RoFmtNam 8a Const
D RoObjNamQ 20a Const
D RoObjTyp 10a Const
D RoError 32767a Options(*VarSize)
C Eval ObjNam = '???'
C Eval ObjLib = '*LIBL'
C Eval ObjTyp = '*PGM'
*
C CallP RtvObjD( RoData
C : %Size( RoData )
C : 'OBJD0100'
C : ObjNam + ObjLib
C : ObjTyp
C : ApiError
C )
*
C If AeBytAvl > *Zero And
C AeMsgId = 'CPF9801'
*-- Object doesn't exist...
C EndIf
*
C Return
| Is This Answer Correct ? | 1 Yes | 3 No |
Answer / mithila
In RPG4, QusRtvObjd API can be used which has procedutrs
like ChkObj and ChkMbr. or a CL program can be called that
checks the existence of object and returns some indicator
to for found/not found.
| Is This Answer Correct ? | 3 Yes | 7 No |
where we give the MSGSFL in rpg400?
Hello, I want to extend a length of field in my Display file(Subfile). Please suggest the possible steps. Thanks
Can you copy the records created by the OPNQRYF to other files and how?
What are the types of identifiers?
Q1.How we can copy the data of file one session to another session? Q2.how we can execute a loop infinitely in AS/400 coding? Q3.In ALDON tool,multitask is posible on a perticular object by the user?
1.find most occurrences of a character. for exm: input:aaabbbbdddddyyy output: d 5 times how can i get that?
Hi all friend, Could Any body send me the code (with coding) of this senario because I have tried but I am stucking somewhere so Please reply ASAp with coding. senario:Q: I have to write the flat file(FLAT1) into the three different PFS (PF1,PF2 and PF3) with the respect of H line data, D line data and Z line data of flat file. where I have different data in flat file(FLAT1) which is mentioned below with data. H0929200909282009092820095529420003000073 D2222220006765555webservi001633.9909222009092820090924200951 8564380134049ROSNER TOYOTA OF FREDE FREDERICKSBURVA 224080000USA840840001633.99001633.99851856492689800208001915 511001633.990408490000000.0000000003446048 1,3 110793145 09070700351 372367 Rosner Motors D3333320006774444webservi000271.2409222009092820090924200951 8564380134049ROSNER TOYOTA OF FREDE FREDERICKSBURVA 224080000USA840840000271.24000271.24851856492689800208001835 511000271.240930680000000.0000000003450293 1 110793254 09072100079 373933 Rosner Motors Z0929200900000020001905.25 FLAT1 has the three pf data H line-represents the header pf data,D-Represent Details pf data,Z-Represents the trailer pf data Now I have to write H line data of flat file into Header pf (PF1),D line data of flat into datails pf(PF2) and Z line data of flat file into pf(PF3) with the spefic position(H,D and Z data of flat file into PF1, PF2 and PF3) of flat file.
How Commitment and Roll back control is used in as400, explain with real time senario ???
1.What is referential Integrity? 2.What is Foreign Key? 3.What is Transfer Control? 4.What is Free format?
i hav 2 logical files(L1,L2) both r derived from one physical file(P1). how can i use both the logical files in one RPG program? if yes what i have to d.
Can we trigger an rpg program which has user interaction with display file when updating a file using the command ADDPFTRG?
what is decimal data error? when it will come and how to achieve(rectify) this error please give me solution as well as code