从另一个文件调用过程

Calling a procedure from another file

我正在尝试调用另一个文件的过程。到目前为止我得到的结果是错误的:

test.p

DEFINE VARIABLE tmp AS CHARACTER.
      RUN sumWords.p(INPUT "Hello", INPUT "World", OUTPUT tmp).
DISPLAY tmp.

sumWords.p

 PROCEDURE sumWords:
        DEFINE INPUT PARAMETER i_firstWord AS CHARACTER.
        DEFINE INPUT PARAMETER i_secondWord AS CHARACTER.
        DEFINE OUTPUT PARAMETER o_returnWord AS INTEGER. 

        o_returnWord = i_firstWord + i_secondWord.
    END PROCEDURE.

test.p passed parameters to sumWords.p, which didn't expect any. (1005)

您在 "sumWords.p" 中创建了一个内部过程 "sumWords"。 sumWords.p 确实不期望参数。

要么更改 sumWords.p 并删除行 PROCEDURE sumWords:END PROCEDURE.

那样 sumWords.p 需要参数。

或更换来电者:

DEFINE VARIABLE hSumWords AS HANDLE NO-UNDO.

RUN sumWords.p PERSISTENT SET hSumWords. 

RUN sumWords IN hSumWords (INPUT "Hello", INPUT "World", OUTPUT tmp).

DELETE OBJECT hSumWords.