×

Good News Everybody!

The new search engine is LIVE!

Please report any problems to david (at) midrange.com.




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 thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2026 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.