From within an internal procedure: A handle to the procedure file mentioned, explicitly or implicitly, by the original RUN statement that invoked (perhaps through a chain of super procedures) the current internal procedure.From within a user‑defined function: A handle to the procedure file mentioned, explicitly or implicitly, by the original function invocation that invoked (perhaps through a chain of super versions of functions) the current user‑defined function.
TARGET-PROCEDURE :attribute :methodThe TARGET-PROCEDURE handle supports all the attributes of the procedure object handle. For a list of these attributes, see the reference entry for the Procedure object handle in this section.The TARGET-PROCEDURE handle supports all the methods of the procedure object handle. For a list of these methods, see the reference entry for the Procedure object handle in this section.ExamplesThe following scenarios illustrate using TARGET-PROCEDURE without procedure overriding, with procedure overriding, and with super and non‑super RUNs:
![]()
Within proc1 (and any proc1 that runs as a result its original RUN statement), the value of TARGET-PROCEDURE is B.
![]()
Within any version of proc1 that runs as a result of the original RUN statement, the value of TARGET-PROCEDURE is A.
4. X says “RUN proc1 in A,” which runs B’s proc1 (since A has no proc1 and B is a super procedure of A).
![]()
Within any version of proc1 that runs as a result of its original RUN statement, the value of TARGET-PROCEDURE is A.The following scenario shows how the value of TARGET-PROCEDURE changes when a non‑super RUN occurs:
Note: At this point, within any version of proc1 that runs as a result of its original RUN statement, the value of TARGET-PROCEDURE is A.
Note: This is a non‑super RUN.
![]()
Within any proc2 that runs as a result of its original RUN statement, the value of TARGET-PROCEDURE is B.For a sample program that uses TARGET-PROCEDURE, see the reference entry for the RUN SUPER statement.
![]()
The value of TARGET-PROCEDURE becomes THIS-PROCEDURE in the following places:
![]()
Within a user‑defined function that is not a super version of another user‑defined function.
© 2012 Progress Software Corporation and/or its subsidiaries or affiliates. |