Error Message (AREV Specific)
At 16 AUG 2000 08:55:38AM Lee Fong Lun wrote:
I am using Advanced Revelation verion 3. I was running a program and an error message ERRMSG27.4 came out. I was trying to find the cause of the message and unable to find out what causes it. What is this message means ?? What is the problem ?? I hope I can get some help here. Thank you.
At 16 AUG 2000 10:04AM [url=http://www.sprezzatura.com" onMouseOver=window.status=Click here to visit our web site?';return(true)]The Sprezzatura Group[/url] wrote:
This means that there are too many programs on the program stack. Try to use less {} references in your code as each dictionary item counts as a program.
World Leaders in all things RevSoft
At 18 AUG 2000 01:37AM Lee Fong Lun wrote:
Thanks for the reply. But what is a program stack ?? Is it when I run a program, the program will be placed in the stack ??
I have Advaned Revelation version 3 installed in a Novell server. And I run programs form a few workstations. It that mean all the programs that I run from different workstations are placed in the same program stack ?? Although they are running the same program ??
At 18 AUG 2000 09:19AM Don Miller - C3 Inc. wrote:
Lee ..
It doesn't matter what network you're using. Each instance of the program maintains its own local program stack in memory. It works roughly as follows:
1. Every Call (direct or indirect) inside a program uses an entry in the program stack. The current program is suspended, it's variables, etc. are saved and control transfers to the call. It doesn't matter whether it is a subroutine or a function. The problem can be aggrevated in indirect dictionary symbolics. So, for example if your program uses tempfield={SYMBOLIC_FIELD}, a stack entry will be used. If inside {SYMBOLIC_FIELD} you do something like:
a={Symbolic_1}b={Symbolic_2}c=XLATE("filename",{SOMEFIELD},"FIELDNAME",'X')note that this uses 2 stack entries + 1 for the XLATE ......@ams=somecalcthen the call inside your program to {SYMBOLIC_FIELD} will use a lot more program stack space than you might think. This can be exacerbated if this kind of thing is being done inside a called subroutine that is not declared as expendable. The stack variables will stay around until the main program terminates.
HTH
Don Miller
C3 Inc.