× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



I read it somewhere.  I'll have to find it again.  But it was something
like that to allow recursive calls.

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/12/2006 04:18          RE: Is SQL cursor open at the job   
             PM                        level?                              
                                                                           
                                                                           
             Please respond to                                             
              RPG programming                                              
              on the AS400 /                                               
                  iSeries                                                  
             <rpg400-l@midrang                                             
                  e.com>                                                   
                                                                           
                                                                           




I don't think that would work.

RPG Programs aren't recursive, so Lim is calling a procedure.  However,
ACTGRP(*NEW) only has an effect during the activation of a program or
service program.  Once he's in the program/service program procedure a
recursive call to the same procedure wouldn't start a new activation
group.


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
> Michael_Schutte@xxxxxxxxxxxx
> Sent: Wednesday, April 12, 2006 3:39 PM
> To: RPG programming on the AS400 / iSeries
> Subject: RE: Is SQL cursor open at the job level?
>
> Again,
>
> the ActGrp(*NEW) HSPEC is needed in the calling program.
>
> Michael Schutte
> Work 614-492-7419
> email  michael_schutte@xxxxxxxxxxxx
>
>
>
>
>              "Lim Hock-Chai"
>
>              <Lim.Hock-Chai@us
>
>              amobility.com>
>           To
>              Sent by:                  "RPG programming on
> the AS400 /
>              rpg400-l-bounces@         iSeries"
> <rpg400-l@xxxxxxxxxxxx>
>              midrange.com
>           cc
>
>
>
>      Subject
>              04/12/2006 03:22          RE: Is SQL cursor open
> at the job
>              PM                        level?
>
>
>
>
>
>              Please respond to
>
>               RPG programming
>
>               on the AS400 /
>
>                   iSeries
>
>              <rpg400-l@midrang
>
>                   e.com>
>
>
>
>
>
>
>
>
>
> I can't close the cursor, the parent thread still needs it.  See below
> for detail on what I'm doing:
>
> This is what I try to achieve:
> Example:
> 1) MYFILE has 2 fields: CHILD and PARENT.
> 2) If the data looks like below
> CHILD                    PARENT
> AAA                      BBB
> CCC                      AAA
> DDD                      BBB
> EEE                      JJJ
> 3) This procedure basically need to return all family member
> back to the
> caller.  If say the caller pass DDD, this procedure should return:
> DDDBBBAAACCC
>
> Below is what I got (Not able to test it because when it
> recursive calls
> the getFamilyMember, it gets the cursor already open error and the
> return result become incorrect:
>
> D getFamilyMember...
> D                 pr            90    varying
> D  piMember                      3    value
>
> D MYFILE        E DS
> D family          s             90    varying
>
>
> C                   eval      family = getFamilyMember('DDD')
>
> C                   eval      *inlr = *on
>  *************************************************************
> P getFamilyMember...
> P                 B                   export
> D                 pi            90    varying
> D  piMember                      3    value
>
> D prList          s             90    varying static
>
> C                   if        piMember = *blank
> C                   return    prList
> C                   endif
>
> C                   eval      prList = prList+piMember+';'
>
> C/exec sql
> C+ declare c1 scroll cursor for
> C+   select *
> C+     from MYFILE
> C+     where PARENT = :piMember or
> C+           CHILD  = :piMember
> C/end-exec
>
> C/exec sql
> C+ open C1
> C/end-exec
>
> C                   dou       sqlCod <> 0
> C/exec sql
> C+ fetch next
> C+   from C1
> C+   into :child,:parent
> C/end-exec
> C                   if        sqlCod <> 0
> C                   leave
> C                   endif
>
> C                   if        %scan(child :prList) = 0
> C                   callp     getfamilyMember(child)
> C                   endif
>
> C                   if        child <> parent and
> C                             %scan(parent :prList) = 0
> C                   callp     getfamilyMember(parent)
> C                   endif
>
> C                   enddo
>
> C/exec sql
> C+ close C1
> C/end-exec
>
> C                   return    prList
>
> P getFamilyMember...
> P                 E
>
>
>
> -----Original Message-----
> From: rpg400-l-bounces@xxxxxxxxxxxx
> [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Holden Tommy
> Sent: Wednesday, April 12, 2006 1:50 PM
> To: RPG programming on the AS400 / iSeries
> Subject: RE: Is SQL cursor open at the job level?
>
> OR....
>
> Compile to CLOSQLCSR(*ENDMOD)
>
> Or...
>
> c/exec sql
> C+ SET OPTION CLOSQLCSR=*ENDMOD
> c/end-exec
>
>
> Thanks,
> Tommy Holden
>
>
> -----Original Message-----
> From: rpg400-l-bounces@xxxxxxxxxxxx
> [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of
> Michael_Schutte@xxxxxxxxxxxx
> Sent: Wednesday, April 12, 2006 1:44 PM
> To: RPG programming on the AS400 / iSeries
> Subject: Re: Is SQL cursor open at the job level?
>
> Is this a SQL Procedure or RPG Procedure using SQL?
>
> If RPG, add the HSPEC
>
> H ActGrp(*NEW)... I believe?
>
> Michael Schutte
> Work 614-492-7419
> email  michael_schutte@xxxxxxxxxxxx
>
>
>
>
>              "Lim Hock-Chai"
>
>              <Lim.Hock-Chai@us
>
>              amobility.com>
> To
>              Sent by:                  "RPG programming on the AS400 /
>
>              rpg400-l-bounces@         iSeries"
> <rpg400-l@xxxxxxxxxxxx>
>
>              midrange.com
> cc
>
>
>
> Subject
>              04/12/2006 02:40          Is SQL cursor open at the job
>
>              PM                        level?
>
>
>
>
>
>              Please respond to
>
>               RPG programming
>
>               on the AS400 /
>
>                   iSeries
>
>              <rpg400-l@midrang
>
>                   e.com>
>
>
>
>
>
>
>
>
>
> I need to do recursive call on a procedure that declare and open sql
> cursor.  I'm getting a cursor already open error when recursively
> calling the procedure.  Is there a way a go around that?
>
>
> --
> 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-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.