Dan Packer
Member
I'm trying to call some functions in code that was written by a different developer. The code in question uses a &GLOBAL-DEFINE constant to refer to a super procedure that handles debugging.
The code is basically as follows:
When I execute the calling procedure - I get the message "Could not evaluate the expression describing the context of external function 'rundebug'. (2767).
The constant &RUNDEBUG seems to be causing the problem. It's defined elsewhere in the other developer's code as &GLOBAL-DEFINE RUNDEBUG setDebugging(""). The procedure setDebugging is defined in a different procedure.
I have tried:
1. Adding the procedure that contains "setDebugging" as a super procedure in the calling procedure.
2. Manually defining the procedure in the calling procedure.
I'm out of ideas ... can anyone point me in the right direction?
Thanks,
-Dan
The code is basically as follows:
Code:
/* Calling procedure */
DEFINE VARIABLE vh1 AS HANDLE.
RUN /home/danp/code/proc1.p PERSISTENT SET vh1.
SESSION:ADD-SUPER-PROCEDURE(vh1).
RUN p-procedure IN vh1.
/* Super Procedure proc1.p */
PROCEDURE p-procedure:
DEFINE INPUT PARAMETER pc1 AS CHARACTER NO-UNDO.
{&RUNDEBUG}
/* Do a bunch of stuff */
RETURN.
END PROCEDURE.
When I execute the calling procedure - I get the message "Could not evaluate the expression describing the context of external function 'rundebug'. (2767).
The constant &RUNDEBUG seems to be causing the problem. It's defined elsewhere in the other developer's code as &GLOBAL-DEFINE RUNDEBUG setDebugging(""). The procedure setDebugging is defined in a different procedure.
I have tried:
1. Adding the procedure that contains "setDebugging" as a super procedure in the calling procedure.
2. Manually defining the procedure in the calling procedure.
I'm out of ideas ... can anyone point me in the right direction?
Thanks,
-Dan
Last edited by a moderator: