【问题标题】:Lotus Notes @formula language: Order of Actions wrong?Lotus Notes @formula 语言:操作顺序错误?
【发布时间】:2013-02-14 15:20:59
【问题描述】:

我用以下两个命令定义了一个动作:

@Prompt([...]; "1");
@Command([ToolsRunMacro];"(AGENT)");
@Prompt([...]; "2");
@If(@GetProfileField("PrivateProfile";"LENGTH";@UserName))>0;@PostedCommand([Compose];"FORM");"");
@Prompt([...]; "3");

但我发现使用@Prompt 命令时,首先会显示每个@Promptmessages (1-3),然后之后运行AGENT。但是当AGENT 操作LENGTH 字段时,@IF 语句会比较一个“过时”的值。

也许每条语句都是一次执行的?如果是:如何防止代理出现这种行为?

我将不胜感激!

【问题讨论】:

    标签: formula lotus-domino agent


    【解决方案1】:

    [ToolsRunMacro] 命令将始终在所有 @Functions 先执行后运行。没有办法改变这一点。

    您可以在信息中心文档中获得哪些命令会立即执行,哪些命令会在最后执行的其他函数之后执行。

    http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/topic/com.ibm.designer.domino.main.doc/H_COMMAND.html

    在您的代码中还需要注意的是,配置文件文档已被缓存。因此,您可能不会在所有情况下都立即看到对文档所做的任何更改。

    【讨论】:

    • 感谢您的快速回复。在@IF 语句之前,您是否有任何提示如何让代理运行?
    • 我自己发现的。只需将ToolsRunMacro 替换为RunAgent。谢谢你的帮助!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多