|
He's trying to use this procedure. It appears that this procedure is an external module. See the Export keyword on the PSPECS. > > H NOMAIN > > /COPY QPROTOSRC,EDITOOLTST > > PCTSTJSTTST B export > > DCTSTJSTTST PI 118 opdesc > > D CSTZIP 70 OPTIONS(*VARSIZE) > > D CITY 35 > > D STE 2 > > D ZIP 9 > > D Pass 1 > > D ERR 1 > > > *---------------------------------------------------------------- > > D X S 2 0 > > D Y S 2 0 > > D LEN S 5I 0 INZ > > D FLDLEN S +1 LIKE(CSTZIP) > > > *---------------------------------------------------------------- > > C* ........................ > > C IF CSTZIP = *BLANKS > > C EVAL ERR = *ON > > C ELSE > > C* > > C EVAL ERR = *OFF > > C clear FLDLEN > > C MOVEL CSTZIP FLDLEN > > C X'00' CHECKR FLDLEN LEN > > C ' ' CHECKR FLDLEN:len LEN > 25 > > C* ........................ > > C* *load city/state/zip > > C* ........................ > > C* *if city is not blanks.... > > C clear city > > C clear ste > > C clear zip > > C* look for city/state delimited by ",".. > > C ',' scan fldlen x > > 27 > > C if *in27 = *on > > C eval %subst(city:1:x-1) = > > %subst(fldlen:1:x-1) > > C else > > C ' ' scan fldlen x > > 27 > > C if *in27 = *on > > C eval %subst(city:1:x-1) = > > %subst(fldlen:1:x-1) > > C endif > > C endif > > C eval x = x+1 > > C* look for non-blank..for state > > C if x + 2 < LEN > > C eval Y = 2 > > C else > > C eval y = len - x + 1 > > C endif > > C* > > C dow x < LEN > > C if %subst(fldlen:x:1) <> ' ' > > C eval %subst(ste:1:2) = > %subst(fldlen:x:2) > > C eval x = x+2 > > C leave > > C endif > > C* > > C eval x = x+1 > > C if x + 2 < LEN > > C eval Y = 2 > > C else > > C eval y = len - x + 1 > > C endif > > C* > > C enddo > > C* > > C* look for non-blank..zip code > > C if x + 9 < LEN > > C eval Y = 9 > > C else > > C eval y = len - x + 1 > > C endif > > C* > > C if y > 9 > > C eval y = 9 > > C endif > > C* > > C dow x < len > > C* > > C if %subst(fldlen:x:1) <> ' ' AND > > C %subst(fldlen:x:1) <> '.' > > C eval %subst(zip:1:y) = > %subst(fldlen:x:y) > > C* > > C '-' SCAN ZIP POS > 2 0 > > 20 > > C IF *IN20 = *ON > > C EVAL Y = Y - POS + 1 > > C EVAL X = X + POS > > C if y > 9 > > C EVAL y = 9 > > C endif > > C EVAL %SUBST(ZIP:POS:Y) = > %SUBST(FLDlen:X:Y) > > C ENDIF > > C* > > C leave > > C endif > > C* > > C eval x = x+1 > > C if x + 9 <= LEN > > C eval Y = 9 > > C else > > C eval y = len - x + 1 > > C endif > > C* > > C enddo > > C ENDIF > > C select > > C when pass = '2' > > C return ste > > C when pass = '3' > > C return zip > > C other > > C return CITY > > C endsl > > C* > > PCTSTJSTTST E Michael Schutte Work 614-492-7419 email michael_schutte@xxxxxxxxxxxx "Wilt, Charles" <CWilt@xxxxxxxxxx om> To Sent by: "RPG programming on the AS400 / rpg400-l-bounces@ iSeries" <rpg400-l@xxxxxxxxxxxx> midrange.com cc Subject 04/07/2006 10:51 RE: Calling RPGLE module. AM Please respond to RPG programming on the AS400 / iSeries <rpg400-l@midrang e.com> Jake, You don't need a binding directory if 1) You're not calling procedures from external modules/*SRVPGMs Or 2) You specify what to bind in on the CRTPGM command. HTH, Charles Wilt -- iSeries Systems Administrator / Developer Mitsubishi Electric Automotive America ph: 513-573-4343 fax: 513-398-1121 > -----Original Message----- > From: rpg400-l-bounces@xxxxxxxxxxxx > [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Jake M > Sent: Friday, April 07, 2006 10:21 AM > To: RPG programming on the AS400 / iSeries > Subject: Re: Calling RPGLE module. > > Michael, > Yes, that is all the source code. So, I need to add.. > > H DftActGrp(*NO) > H BndDir('BNDDIR') > > to the beginning of my CALLCTST.RPGLE, right? But I am not > using any binding > directories in this at all. Do I still need to include those > two lines? > Thanks again for all your help. > > Jake. > > On 4/7/06, Michael_Schutte@xxxxxxxxxxxx <Michael_Schutte@xxxxxxxxxxxx> > wrote: > > > > <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< > > /COPY QPROTOSRC,EDITOOLTST > > * > > D CSTZIP S 70 > > D CITY S 35 > > D STE S 2 > > D ZIP S 9 > > D ERR S 1 > > D pass S 1 > > D RESULT S 118 > > > > * > > * > > * > > /FREE > > CSTZIP = 'SCHULENBURG, TX'; > > > > RESULT = CTSTJSTTST(CSTZIP:CITY:STE:ZIP:pass:err); > > > > *inlr = *on; > > /END-FREE > > <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< > > > > > > Is this all of your source? If so, in order to get this to > compile you > > need to add the HSPECS that I sent in another email. When using > > prototypes, DftActGrp cannot be *YES, so in the HSPECS you > can change it > > to > > *NO > > > > <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< > > H DftActGrp(*NO) > > H BndDir('BNDDIR') > > > > /COPY QPROTOSRC,EDITOOLTST > > * > > D CSTZIP S 70 > > D CITY S 35 > > D STE S 2 > > D ZIP S 9 > > D ERR S 1 > > D pass S 1 > > D RESULT S 118 > > > > * > > * > > * > > /FREE > > CSTZIP = 'SCHULENBURG, TX'; > > > > RESULT = CTSTJSTTST(CSTZIP:CITY:STE:ZIP:pass:err); > > > > *inlr = *on; > > /END-FREE > > > > <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< > > Michael Schutte > > Work 614-492-7419 > > email michael_schutte@xxxxxxxxxxxx > > > > > > > > "Jake M" > > <jakeroc@xxxxxxxx > > m> > To > > Sent by: "RPG programming on > the AS400 / > > rpg400-l-bounces@ iSeries" > <rpg400-l@xxxxxxxxxxxx> > > midrange.com > cc > > > > > Subject > > 04/07/2006 09:52 Re: Calling RPGLE module. > > AM > > > > > > Please respond to > > RPG programming > > on the AS400 / > > iSeries > > <rpg400-l@midrang > > e.com> > > > > > > > > > > > > > > Michael, > > This is how I am calling it..still not able to compile. I > bet I am doing > > something outrageously stupid(out of ignorance > ofcourse....). I appreciate > > all the help. > > CALLCTST.RPGLE(my program...does not compile) > > > > > ************************************************************** > ******************************************* > > > > /COPY QPROTOSRC,EDITOOLTST > > * > > D CSTZIP S 70 > > D CITY S 35 > > D STE S 2 > > D ZIP S 9 > > D ERR S 1 > > D pass S 1 > > D RESULT S 118 > > > > * > > * > > * > > /FREE > > CSTZIP = 'SCHULENBURG, TX'; > > > > RESULT = CTSTJSTTST(CSTZIP:CITY:STE:ZIP:pass:err); > > > > *inlr = *on; > > /END-FREE > > > > > ************************************************************** > ********************************************* > > > > EDITOOLTST > > > > > ************************************************************** > ********************************************* > > > > D ctstjsttst PR 118 opdesc > > D ctyzip 70 options(*varsize) > > D city 35 > > D ste 2 > > D zip 9 > > D pass 1 > > D err 1 > > > > > ************************************************************** > ********************************************** > > > > CTSTJSTTST.RPGLE(module...compiles fine). > > > > > ************************************************************** > ********************************************** > > > > H NOMAIN > > /COPY QPROTOSRC,EDITOOLTST > > PCTSTJSTTST B export > > DCTSTJSTTST PI 118 opdesc > > D CSTZIP 70 OPTIONS(*VARSIZE) > > D CITY 35 > > D STE 2 > > D ZIP 9 > > D Pass 1 > > D ERR 1 > > > *---------------------------------------------------------------- > > D X S 2 0 > > D Y S 2 0 > > D LEN S 5I 0 INZ > > D FLDLEN S +1 LIKE(CSTZIP) > > > *---------------------------------------------------------------- > > C* ........................ > > C IF CSTZIP = *BLANKS > > C EVAL ERR = *ON > > C ELSE > > C* > > C EVAL ERR = *OFF > > C clear FLDLEN > > C MOVEL CSTZIP FLDLEN > > C X'00' CHECKR FLDLEN LEN > > C ' ' CHECKR FLDLEN:len LEN > 25 > > C* ........................ > > C* *load city/state/zip > > C* ........................ > > C* *if city is not blanks.... > > C clear city > > C clear ste > > C clear zip > > C* look for city/state delimited by ",".. > > C ',' scan fldlen x > > 27 > > C if *in27 = *on > > C eval %subst(city:1:x-1) = > > %subst(fldlen:1:x-1) > > C else > > C ' ' scan fldlen x > > 27 > > C if *in27 = *on > > C eval %subst(city:1:x-1) = > > %subst(fldlen:1:x-1) > > C endif > > C endif > > C eval x = x+1 > > C* look for non-blank..for state > > C if x + 2 < LEN > > C eval Y = 2 > > C else > > C eval y = len - x + 1 > > C endif > > C* > > C dow x < LEN > > C if %subst(fldlen:x:1) <> ' ' > > C eval %subst(ste:1:2) = > %subst(fldlen:x:2) > > C eval x = x+2 > > C leave > > C endif > > C* > > C eval x = x+1 > > C if x + 2 < LEN > > C eval Y = 2 > > C else > > C eval y = len - x + 1 > > C endif > > C* > > C enddo > > C* > > C* look for non-blank..zip code > > C if x + 9 < LEN > > C eval Y = 9 > > C else > > C eval y = len - x + 1 > > C endif > > C* > > C if y > 9 > > C eval y = 9 > > C endif > > C* > > C dow x < len > > C* > > C if %subst(fldlen:x:1) <> ' ' AND > > C %subst(fldlen:x:1) <> '.' > > C eval %subst(zip:1:y) = > %subst(fldlen:x:y) > > C* > > C '-' SCAN ZIP POS > 2 0 > > 20 > > C IF *IN20 = *ON > > C EVAL Y = Y - POS + 1 > > C EVAL X = X + POS > > C if y > 9 > > C EVAL y = 9 > > C endif > > C EVAL %SUBST(ZIP:POS:Y) = > %SUBST(FLDlen:X:Y) > > C ENDIF > > C* > > C leave > > C endif > > C* > > C eval x = x+1 > > C if x + 9 <= LEN > > C eval Y = 9 > > C else > > C eval y = len - x + 1 > > C endif > > C* > > C enddo > > C ENDIF > > C select > > C when pass = '2' > > C return ste > > C when pass = '3' > > C return zip > > C other > > C return CITY > > C endsl > > C* > > PCTSTJSTTST E > > > > > ************************************************************** > ********************************************* > > > > > > > > Jake. > > > > On 4/7/06, Michael_Schutte@xxxxxxxxxxxx > <Michael_Schutte@xxxxxxxxxxxx> > > wrote: > > > > > > Jake, > > > > > > Do you have the Parms for this program in the DSPECS > using the PR and > > PI? > > > If so make sure that that the name on the PR & PI line > are the same as > > the > > > name of this SOURCE. > > > > > > Michael Schutte > > > Work 614-492-7419 > > > email michael_schutte@xxxxxxxxxxxx > > > > > > > > > > > > "Jake M" > > > <jakeroc@xxxxxxxx > > > m> > > To > > > Sent by: "RPG programming > on the AS400 / > > > rpg400-l-bounces@ iSeries" > <rpg400-l@xxxxxxxxxxxx> > > > midrange.com > > cc > > > > > > > > Subject > > > 04/07/2006 09:12 Re: Calling RPGLE module. > > > AM > > > > > > > > > Please respond to > > > RPG programming > > > on the AS400 / > > > iSeries > > > <rpg400-l@midrang > > > e.com> > > > > > > > > > > > > > > > > > > > > > Birgitta, > > > I used CRTBNDRPG command in RSE. The module CTSTJSTTST > compiles fine > > with > > > the command 'CRTRPGMOD'. But the compile for program > CALLCTST fails when > > I > > > use CRTBNDRPG. Thanks a bunch for enlightening me on the > compilation > > > theory. > > > I appreciate your help. > > > > > > Jake. > > > > > > > > > > > > On 4/7/06, HauserSSS <Hauser@xxxxxxxxxxxxxxx> wrote: > > > > > > > > Hi, > > > > > > > > how did you try to compile your program? > > > > With option 14 in PDM? > > > > > > > > An ILE compilation is always a two step calculation: > > > > 1. Compile all your modules (Option 15 --> CRTRPGMOD) > > > > 2. Create the program using the CL-Command CRTPGM and > by specifying > > all > > > > bound modules. > > > > > > > > (Even with option 14 CRTBNDRPG a two step compilation > is performed. > > > First > > > > the module gets compiled to the QTEMP library. After > the module gets > > > > converted into a program in your object library and the > module in the > > > > QTEMP > > > > gets deleted.) > > > > > > > > You also can add your modules (or service programs) to > an binding > > > > directory > > > > and specify the binding directory at compile time or > add it in the > > > > H-Specs: > > > > 1. Create Binding directory: CRTBNDDIR > > > > 2. Add Binding directory entries: ADDBNDDIRE > > > > > > > > 3. If you are using a binding directory, it's possible > to use Option > > 14 > > > to > > > > compile a program. You have to use an activation group > other than the > > > > default activation group and specify the binding > directory in the > > > compile > > > > command. > > > > Alternatively you can add the following H-Specs to your source: > > > > H/If Defined (*CRTBNDRPG) > > > > H DftActGrp(*NO) BndDir('MYBNDDIR') ActGrp(*New or *Caller or > > > > 'NAMEDACTGRP') > > > > H/EndIf > > > > > > > > 4. If you use the two step compilation the binding > directory can be > > > > specified in the CRTPGM-Command. > > > > > > > > Mit freundlichen Gru?en / Best regards > > > > > > > > Birgitta > > > > > > > > "Shoot for the moon, even if you miss, you'll land > among the stars." > > > > (Les Brown) > > > > > > > > -----Ursprungliche Nachricht----- > > > > Von: rpg400-l-bounces@xxxxxxxxxxxx > > > > [mailto:rpg400-l-bounces@xxxxxxxxxxxx]Im Auftrag von > Mike Troxclaire > > > > Gesendet: Donnerstag, 6. April 2006 23:34 > > > > An: rpg400-l@xxxxxxxxxxxx > > > > Betreff: RE:Calling RPGLE module. > > > > > > > > > > > > As a newbie I would love to know about it too. I was not able to > > compile > > > > the > > > > program?? > > > > > > > > Mike. > > > > > > > > > _________________________________________________________________ > > > > Express yourself instantly with MSN Messenger! Download > today - it's > > > FREE! > > > > http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/ > > > > > > > > -- > > > > This is the RPG programming on the AS400 / iSeries > (RPG400-L) mailing > > > list > > > > To post a message email: RPG400-L@xxxxxxxxxxxx > > > > To subscribe, unsubscribe, or change list options, > > > > visit: http://lists.midrange.com/mailman/listinfo/rpg400-l > > > > or email: RPG400-L-request@xxxxxxxxxxxx > > > > Before posting, please take a moment to review the archives > > > > at http://archive.midrange.com/rpg400-l. > > > > > > > > > > > > > > > > -- > > > > This is the RPG programming on the AS400 / iSeries > (RPG400-L) mailing > > > list > > > > To post a message email: RPG400-L@xxxxxxxxxxxx > > > > To subscribe, unsubscribe, or change list options, > > > > visit: http://lists.midrange.com/mailman/listinfo/rpg400-l > > > > or email: RPG400-L-request@xxxxxxxxxxxx > > > > Before posting, please take a moment to review the archives > > > > at http://archive.midrange.com/rpg400-l. > > > > > > > > > > > -- > > > This is the RPG programming on the AS400 / iSeries > (RPG400-L) mailing > > list > > > To post a message email: RPG400-L@xxxxxxxxxxxx > > > To subscribe, unsubscribe, or change list options, > > > visit: http://lists.midrange.com/mailman/listinfo/rpg400-l > > > or email: RPG400-L-request@xxxxxxxxxxxx > > > Before posting, please take a moment to review the archives > > > at http://archive.midrange.com/rpg400-l. > > > > > > > > > > > > -- > > > This is the RPG programming on the AS400 / iSeries > (RPG400-L) mailing > > list > > > To post a message email: RPG400-L@xxxxxxxxxxxx > > > To subscribe, unsubscribe, or change list options, > > > visit: http://lists.midrange.com/mailman/listinfo/rpg400-l > > > or email: RPG400-L-request@xxxxxxxxxxxx > > > Before posting, please take a moment to review the archives > > > at http://archive.midrange.com/rpg400-l. > > > > > > > > -- > > This is the RPG programming on the AS400 / iSeries > (RPG400-L) mailing list > > To post a message email: RPG400-L@xxxxxxxxxxxx > > To subscribe, unsubscribe, or change list options, > > visit: http://lists.midrange.com/mailman/listinfo/rpg400-l > > or email: RPG400-L-request@xxxxxxxxxxxx > > Before posting, please take a moment to review the archives > > at http://archive.midrange.com/rpg400-l. > > > > > > > > -- > > This is the RPG programming on the AS400 / iSeries > (RPG400-L) mailing list > > To post a message email: RPG400-L@xxxxxxxxxxxx > > To subscribe, unsubscribe, or change list options, > > visit: http://lists.midrange.com/mailman/listinfo/rpg400-l > > or email: RPG400-L-request@xxxxxxxxxxxx > > Before posting, please take a moment to review the archives > > at http://archive.midrange.com/rpg400-l. > > > > > -- > This is the RPG programming on the AS400 / iSeries (RPG400-L) > mailing list > To post a message email: RPG400-L@xxxxxxxxxxxx > To subscribe, unsubscribe, or change list options, > visit: http://lists.midrange.com/mailman/listinfo/rpg400-l > or email: RPG400-L-request@xxxxxxxxxxxx > Before posting, please take a moment to review the archives > at http://archive.midrange.com/rpg400-l. > > -- This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/mailman/listinfo/rpg400-l or email: RPG400-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at http://archive.midrange.com/rpg400-l.
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.