我正在尝试在apphost上运行一个程序,该程序在localhost上设置。
**'testProc'未找到。 (293)
DEFINE VARIABLE hndle AS HANDLE NO-UNDO.
DEFINE VARIABLE tmp AS CHARACTER NO-UNDO.
CREATE SERVER hndle.
PROCEDURE testProc:
DEFINE OUTPUT PARAMETER o_tmp AS CHARACTER INITIAL "HELLO".
END PROCEDURE.
hndle:CONNECT ("-AppService AppServiceName-H localhost").
RUN testProc ON hndle(OUTPUT tmp).
hndle:DISCONNECT ().
DELETE OBJECT hndle.
您无法在应用程序服务器上运行内部过程。您必须将代码放入其自己的.p文件中并在appserver上运行该文件。 .p必须也可以在appserver的Propath中使用。
您正在尝试运行内部过程'testProc',而不是过程文件'testProc.p'。它们必须是两个单独的文件。在您的appserver上创建一个'testProc.p'文件,并将您的逻辑放入其中:
DEFINE OUTPUT PARAMETER o_tmp AS CHARACTER INITIAL "HELLO".
在单独的文件中,输入调用testProc.p的代码:
DEFINE VARIABLE hndle AS HANDLE NO-UNDO.
DEFINE VARIABLE tmp AS CHARACTER NO-UNDO.
CREATE SERVER hndle.
hndle:CONNECT ("-AppService AppServiceName -H localhost").
RUN testProc.p ON hndle(OUTPUT tmp).
hndle:DISCONNECT ().
DELETE OBJECT hndle.
MESSAGE tmp VIEW-AS ALERT-BOX INFORMATION.
请注意,您的调用程序正在运行testProc.p,而不是testProc。运行此代码,您应该收到一条弹出消息“HELLO”。