As with local persistent procedures, a remote persistent procedure context remains active within an server session until it is deleted using the
DELETE OBJECT or
DELETE PROCEDURE statement. All remote persistent procedures are also deleted when the client application disconnects from the PAS for OpenEdge instance where the procedure is active (see
Disconnecting from a PAS for OpenEdge instance). You can thus delete a remote persistent procedure from an ABL client session by:
Disconnecting the server by using the
DISCONNECT( ) method on the corresponding server handle. This deletes all remote persistent procedures in the server session.
If the delete occurs in the context of another remote procedure request to the server, the deletion is pending until the request completes and returns to the client. When the remote persistent procedure is finally deleted, both its proxy procedure handle on the client and its remote procedure handle in the server session are deleted together.