我正在使用 8.5.7 2017.06 版本编写 IBM BPM Coach,并正在创建一个如下所示的事件处理程序:
\\ Hide the dialog
${MyDialog}.setVisible(false);
\\ Execute the service
${MyService}.execue();
但是,当事件发生时,什么都不执行?
我正在使用 8.5.7 2017.06 版本编写 IBM BPM Coach,并正在创建一个如下所示的事件处理程序:
\\ Hide the dialog
${MyDialog}.setVisible(false);
\\ Execute the service
${MyService}.execue();
但是,当事件发生时,什么都不执行?
当我们创建在 Coach 中运行的脚本时,即使 Process Designer 条目显示多行内容辅助,当脚本被保存并随后执行时,代码将作为单行“串在一起”。所以代码:
// Hide the dialog
${MyDialog}.setVisible(false);
// Execute the service
${MyService}.execute();
变成:
// Hide the dialog ${MyDialog}.setVisible(false); // Execute the service ${MyService}.execute();
因此,//
成为一行注释的开头,基本上注释掉了该行的其余部分。解决方案是不使用注释或使用/*
和*/
注释括号。
事件处理程序编辑器误导性地暗示它是完整的多行 JS 代码。正如您所观察到的,此代码被评估为单行代码。在我看来,它就像 BPM 编辑器缺陷。如果事件编辑器可以正确地将字符注入\n
到传递给new Function(expressionString)
BPM UI(SPARK 工具包)使用的表达式中,那么单行注释就可以正常工作。另请注意,在事件处理程序代码中使用回车符也是错误处理的,此时需要在\\n
已\n
执行的代码中放置。在这里查看我的发现。