Try OpenEdge Now
skip to main content
Application Migration and Development Guide
Application Development with PAS for OpenEdge : Programming the Progress Application Server for OpenEdge : Accessing the name of the current remote procedure
 

Accessing the name of the current remote procedure

A PAS for OpenEdge instance runs certain configuration procedures when a client runs external or internal procedures. PAS for OpenEdge event procedures are ABL procedures that you specify when you configure a PAS for OpenEdge instance; the procedures run typically before and after invoking remote procedures during the lifetime of a PAS for OpenEdge instance and its sessions.
One set of configuration procedures includes the Activate and Deactivate procedures. These procedures encapsulate logic that executes automatically for certain client requests (remote procedures) on a PAS for OpenEdge instance running in session-managed and unbound application model.
With the help of the read-only ProcedureName property on the Progress.Lang.OERequestInfo class, you can access the name of the internal or external procedure invoked by the ABL client. You can use the ProcedureName property to identify the client-invoked procedure in any procedure currently running on the PAS for OpenEdge instance, including configuration procedures, such as the Activate and Deactivate procedures. You can use the instance of OERequestInfo referenced by the CURRENT-REQUEST-INFO attribute on the PAS for OpenEdge instance's SESSION system handle. For more information on this attribute, see the Managing client context for session-free and unbound session-managed connections.
The ProcedureName property captures the name of the procedure along with the relative or absolute path as specified in the client code that runs the remote procedure. If no path is specified with the external procedure file name in the client's RUN statement, the property captures only the procedure file name.
The following table lists the procedure path or file name for various requests invoked by a client, and provides a description of each ProcedureName property setting as a result.
Table 13. RUN requests and ProcedureName property values
RUN request on the ABL client
Procedure path or file name
Description
RUN test/foo.p ON SERVER hdl.
test/foo.p
The procedure name includes the relative path. The test directory is in the OpenEdge working directory on the PAS for OpenEdge instance.
RUN C:/OpenEdge/WRK/test/foo.p ON SERVER hdl
C:/OpenEdge/WRK/test/​foo.p
The procedure name includes the absolute path.
RUN bar.p ON SERVER hdl
bar.p
No path is specified in the procedure name: bar.p is in the OpenEdge working directory on the PAS for OpenEdge instance.
Note: For execution of an internal procedure defined in a remote persistent, single-run, or singleton procedure, ProcedureName has the format External-Procedure-Name&Internal-Procedure-Name, where External-Procedure-Name is the name of the remote external procedure and Internal-Procedure-Name is the name of its executing internal procedure.
* Accessing a procedure name on PAS for OpenEdge