如何通过app服务器连接获取调用程序的名称?

时间:2015-03-17 22:03:51

标签: progress-4gl openedge

我有一个名为Test.p的程序。该程序通过appserver调用另一个程序ServerTest.p

ServerTest.p中,我想知道调用的程序的名称(在本例中为Test.p)。我尝试使用program-name()函数,但它只为我提供了当前appserver的堆栈跟踪。

如何找出名为ServerTest.p的程序?

2 个答案:

答案 0 :(得分:0)

一个简单而基本的解决方案是使用输入参数。

<强> ServerTest.p

DEFINE INPUT  PARAMETER wpic-name AS CHARACTER  NO-UNDO.

/* wpic-name = "Test.p" */

<强> Test.p

RUN ServerTest.p(INPUT "Test.p").

答案 1 :(得分:0)

您可以使用SOURCE-PROCEDURE:FILE-NAME。所以在你的情况下你可以使用

    if SOURCE-PROCEDURE:FILE-NAME EQ "Test.p" or 
       SOURCE-PROCEDURE:FILE-NAME EQ Test.r"  then
    do: