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



Hi,
First I must say that I often search and read these forums. Thank you all
for your help.

Here's something I would appreciate your help with.

>From what I've been reading... RPG ILE does not support recursivity.
That is an RPG program calling itself either directly or indirectly.

And that is true because I have a situation where I tried it and I received
the RNX888 RPGPGM1 was called recursively.

Where I get confused is another recursivity test that I have done and IT
WORKED!

I wrote a program with ACTGRP(*NEW)
Here's the code

H ACTGRP(*NEW)
D @Var1ds         DS
D  @Var1arr                     10a   dim(10)
D @Var1Ptr        s               *   Inz(%Addr(@Var1ds))
D @Var2           s                   Based(@Var2Ptr) Like(@Var1ds)
D @Var2Ptr        s               *
C     *Entry        Plist
C                   Parm                    @Var2Ptr
C                   If        %Parms = 0
C                   Eval      @Var1Arr(2)='Hello'
C                   Call      'A1'
C                   Parm                    @Var1Ptr
C                   Else
C                   Eval      @Var1ds = @Var2
C                   EndIf
C                   Eval      *InLr = *ON
C                   Return

This is working.
Here's a screen shot of the program stack

Job:   ADUBREUIB      User:   ADUBREUIL      Number:
511186


Thread:
00000064



Program
Rqs    or          ---Activation
Group---
Lvl    Procedure   Number
Name
       QCMD        0000000001
*DFTACTGRP
  1    QCMD        0000000001
*DFTACTGRP
     < RNP_PEP_A1  0000015122
15122
       A1          0000015122
15122
     < RNP_PEP_A1  0000015400
15400
       A1          0000015400
15400
       QTEVIREF    0000000001
*DFTACTGRP
       _C_pep      0000014635
QTEDBGAG
       main        0000014635
QTEDBGAG
       qtescren    0000014635
QTEDBGAG
     < gramSource  0000014635
QTEDBGAG

More...

Can someone tell me why recursivity some times works and some times it
doesn't?
What are the conditions that stops it from working and how can I get around
them?

Regards,
Andre

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:

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.