bdittmar
17th June 2011, 17:50
Hello,

while using prog.name$ in a userexit the following error occurs:

ptisfc001ue0(1829): Fatal Error: Macro recursion / Preprocessor stack overflow (While expanding macro 'prog.name$')

Has anybody used this ?
How to avoid ?

I want to check the if the activ session is valid by:


if prog.name$ = tisfc0408m000 then
start.session(0, "dhsfc0408m0bd", "zoom.pdno", "")
endif



Regards

ulrich.fuchs
17th June 2011, 18:06
Please don't start a session from the user exit - everything within the user exit is called from within a transaction, so starting a session/requiring user input etc. is something that should not happen.

This said, getting the session name that's calling the user exit can be done with:

domain tcmcs.str16 sessname
get.var (pid, "prog.name$", sessname)
if sessname = "..." then....


best regards
Uli

mark_h
17th June 2011, 19:31
Hello,

while using prog.name$ in a userexit the following error occurs:

ptisfc001ue0(1829): Fatal Error: Macro recursion / Preprocessor stack overflow (While expanding macro 'prog.name$')

Has anybody used this ?
How to avoid ?

I want to check the if the activ session is valid by:


if prog.name$ = tisfc0408m000 then
start.session(0, "dhsfc0408m0bd", "zoom.pdno", "")
endif



Regards

Is it a type or should you have quotes (") around tisfc0408m000?

bdittmar
17th June 2011, 19:46
Is it a type or should you have quotes (") around tisfc0408m000?

Hello Mark,

sorry, it's a typo, should be "tisfc0408m000".

Regards

bdittmar
19th June 2011, 10:56
Please don't start a session from the user exit - everything within the user exit is called from within a transaction, so starting a session/requiring user input etc. is something that should not happen.

This said, getting the session name that's calling the user exit can be done with:

domain tcmcs.str16 sessname
get.var (pid, "prog.name$", sessname)
if sessname = "..." then....


best regards
Uli

Hello Uli,
i do a lot of bussinesslogic at the UE yet.
But this session must be called only if the UE calling session is a special one.
The called session runs automaticly in the background and no user dialog is done.
I agree, no user dialog should be done in the UE.
Afaik, there is no other place to do this logic.

get.var() does the trick, sometimes you're blind as a bat ;-)

Regards