我正在使用8.5.7 2017.06版本编写IBM BPM Coach,并创建了一个类似于以下内容的事件处理程序:
\\ Hide the dialog
${MyDialog}.setVisible(false);
\\ Execute the service
${MyService}.execue();
然而,当事件发生时,什么都没有执行?
答案 0 :(得分:1)
当我们创建在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();
因此,//
成为行注释的开头,基本上会注释掉行的其余部分。解决方案是不使用评论或使用/*
和*/
评论括号。
答案 1 :(得分:0)
事件处理程序编辑器误导性地表明它是完整的多行JS代码。正如您所看到的,此代码被评估为单行代码。它看起来像BPM编辑器的缺陷。如果事件编辑器可以正确地将\n
个字符注入到BPM UI(SPARK工具包)使用的new Function(expressionString)
进一步传递的表达式,则单行注释可以正常工作。另请注意,在事件处理程序代码中使用回车符也会被错误处理,此时需要将\\n
放入已执行代码中\n
。请参阅my findings here。