I had ruestion in one of the interview.....
If 1 file has more than 1 member and i want to use the 2nd
member in the RPG pgm (in RPG400),how can I use this....
I know the possible answers i.e. useing API 'QCMDEXE' or
Before calling the pgm I can use OVRDBF for that member...
but I dont' want to use both the tips in above scenarion.
Does any body tell me how can i use this ....?
Answer Posted / ravi
Small correction
1)create a logical file on the P.F.,while creating mention
the DataMember name in the CRTLF command and use this
logical if u are not able to use ovrdbf in cl, Extmber in
RPG400/RPGIV and QCMDEXEC in RPG/RPGLE to Execute in OVRDBF.
ex: CRTLF FILE(FILEA) DTAMBRS((FILEA (MEM02)))
| Is This Answer Correct ? | 1 Yes | 0 No |
Post New Answer View All Answers
define the purpose of the *cat function?
what is the necessary keyword for non-join logical file?
To Add A File To The 'file Selection' Option Of A Query, The Function Key To Be Pressed Is?
what does vldcmdkey means?
what is the use of data structures?
I have created a command that display Source file and library. Now i want that when i enter library name and press f4 on Source file, pgm should display all the PF- SRC's in that Library. For F4 option i have used Choice program but since only limited paramters are passed in Choice pgm i am not able to paas library name and further can't call a pgm that will display list of Source files. Below is the Code snippet for CMD type object :- CMD PROMPT('Source Scan for HUB Standard') PARM KWD(SOURCE) TYPE(*CHAR) LEN(1) RSTD(*YES) + VALUES(N A) MIN(1) + CHOICE('N,A') PARM KWD(SRCFILE) TYPE(FILE) RSTD(*NO) + PROMPT('SOURCE FILE') FILE: QUAL TYPE(*NAME) LEN(10) RSTD(*NO) EXPR (*YES) + CHOICE(*PGM) + CHOICEPGM (XXXXXLIB/YYYPGM) QUAL TYPE(*NAME) LEN(10) DFT(*LIBL) + SPCVAL((*LIBL)) EXPR(*YES) PROMPT ('Library') Below is the Choice pgm:- PGM PARM(&PARM1 &PARM2) DCL VAR(&PARM1) TYPE(*CHAR) LEN (21) DCL VAR(&PARM2) TYPE(*CHAR) LEN (2000) IF COND(%SST(&PARM1 1 10) = 'CHOICE ' *AND + %SST(&PARM1 11 10) = 'SRCFILE ' *AND + (%SST(&PARM1 21 1) = 'C' *OR %SST (&PARM1 + 21 1) = 'P')) THEN (DO) /* (%SST(&PARM1 21 1) = 'C' *OR %SST (&PARM1 + */ CHGVAR VAR(&PARM2) VALUE('Name, F4 for List') ENDDO IF COND(%SST(&PARM1 1 10) = 'CHOICE ' *AND + %SST(&PARM1 11 10) = 'SRCFILE ' *AND + %SST(&PARM1 21 1) = 'P') THEN (DO) CHGVAR VAR(&PARM2) VALUE('Name, F4 for List') CALL PGM(GTSQL) PARM ('XXXXLIB') return ENDDO Thanks in Advance for looking into.
Service Program : S1 Modules in S1 : M1 M1 having two procedures : ADD, SUB Current Binder Language STRPGMEXP PGMLVL(*CURRENT) EXPORT SYMBOL("ADD") EXPORT SYMBOL("SUB") ENDPGMEXP Doubt: I need to add one new Module to the Service Program M2 having one procedure ‘MULT’ How to add this new module to the service program S1 ? If I need to recreate the service program again, Do I need to mention the Module M1 again while recreating along with new Module M2? There is no Binding Directory. Binder language structure will be like this STRPGMEXP PGMLVL(*CURRENT) EXPORT SYMBOL("ADD") EXPORT SYMBOL("SUB") EXPORT SYMBOL("MULT") ENDPGMEXP STRPGMEXP PGMLVL(*PREVIOUS) EXPORT SYMBOL("ADD") EXPORT SYMBOL("SUB") ENDPGMEXP
define the purpose of the iter operation?
what is the purpose of ovrdta (override data) keyword?
what does the ovrdbf command do?
the output from my cgi is correctly interpreted by ms internet explorer, whereas netscape navigator would display it as a plain text. What should I do to have also netscape interpreting the html output from my cgi?
A join logical file has how many record formats?
what is a non-join logical file?
how do handle file exception/error?
the maximum number of subfiles that can defined in a rpg program for one display file is ___ .