|
Steve, I know F12 is the standard - the problem is the existing programs don't have that functionality, if I add it, then every other program that calls it would also have to be changed. Here is the code in my program: D UDS D LdaEND 1 1 D Ldaabkt 1 42 D Ldasls 40 57 D Ldaacct 34 158 D* D @abkt s 42 D @sls s 19 D @rep s 37 D @acct s 126 C getparms BEGSR C* C abktparm tag C call 'AR1595' C if ldaEND = 'R' C leavesr C endif C* C eval @abkt = ldaabkt C* C slmnparm tag C call 'SE0120' C if ldaEND = 'R' C goto abktparm C endif C* C eval @sls = ldasls C eval %subst(@sls:19:1) = 'x' C* C CRepParm tag C call 'SE0124' C parm @rep C if ldaEND = 'R' C goto slmnparm C endif C* C eval %subst(@rep:37:1) = 'x' C* C acctparm tag C call 'SE0005' C if ldaEND = 'R' C goto CRepParm C endif C* C eval @acct = ldaacct C eval %subst(@acct:126:1) = 'x' C* C EndSR This is what the CL was doing... /* SELECT SALESMEN */ CALL PGM(SE0120) IF COND(%SST(*LDA 1 1) = 'R') THEN(GOTO + CMDLBL(END)) CHGVAR VAR(&SLS) VALUE(%SST(*LDA 40 18)) CHGVAR VAR(%SST(&SLS 19 1)) VALUE('x') /* SELECT CREDIT REP */ CALL PGM(SE0124) PARM(&REP) IF COND(%SST(*LDA 1 1) = 'R') THEN(GOTO + CMDLBL(END)) CHGVAR VAR(%SST(&REP 37 1)) VALUE('x') etc... Marla > -----Original Message----- > Sent: Thursday, June 30, 2005 10:05 AM > To: 'rpg400-l@xxxxxxxxxxxx' > Subject: LDA with various pgms > > Hi, > > I am trying to add better functionality to a report selection program. We > currently have a lot of programs that allow the selection of criteria for > reports. These programs are used in a lot of places so I can't change them. > Each program uses the *LDA to pass the selection criteria back and forth with > a CL program (which then takes the data from the LDA and puts it into a > field). Right now, if someone presses F3 it will exit out of the whole > selection process. The CL will be calling about 6 programs> in a row. F3 > ends the whole thing. I want to be able to give the users the ability to > press F3 and just have it go back to the previous selection screen, this way > they won't have to start at the beginning unless they want to. > > I changed the logic to have each program called in an RPG program which would > then put the data into a field, which would then be passed to the next > program (which will create the work file). My problem is that after each > call I am not seeing the data that is updated in the *LDA. Do I need to do > "IN *LDA" after each call? Is there a way to access the data after the > return from each call? > > Thanks for any help! > > Marla Snow >
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.