Menu

#1037 Внешнее хранилище данных, не работают условия

v4.2
closed-fixed
mexanix
None
9
2015-05-08
2015-05-06
vromav
No

Синтаксис условий следующий:
[имяАтрибута] оператор значение
Квадратные скобки у имени атрибута обязательны. Оператором может быть:
<, >, <=, >=, !=, ==, like
Поддерживаются объединения условий в скобки, а также AND и OR.
Пример:
[ID] == 29 AND [name] like 'test'
При этом, в форме конфигурации должна быть выбрана комплексная переменная, атрибуты которой участвуют в условии.

Много провозился с условиями, но так они и не заработали.

В задачу передал комплексную переменную "Заявка". В конфигурации добавил формальный входной параметр "Заявка" пользовательского типа. Добавил атрибут, в котором выбрал параметр "Заявка".

В условии написал

[id]=='28'

т.е. пока просто задал конкретный id равный 28 (Заявка.id - имеет тип Строка, поэтому использовал кавычки в условии)

Бот выполняет задачу, в storage ничего не обновляется. В логах ошибка:

00:10:04,597 ERROR [ru.runa.wfe.office.storage.ConditionProcessor] (pool-21-thread-1) : javax.script.ScriptException: sun.org.mozilla.javascript.internal.EcmaError: ReferenceError: "id" is not defined. (<Unknown source="">#1) in <Unknown source=""> at line number 1
at com.sun.script.javascript.RhinoScriptEngine.eval(RhinoScriptEngine.java:220) [rt.jar:1.7.0_01]
at com.sun.script.javascript.RhinoScriptEngine.eval(RhinoScriptEngine.java:236) [rt.jar:1.7.0_01]
at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:264) [rt.jar:1.7.0_01]

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [rt.jar:1.7.0_01]
at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_01]
Caused by: sun.org.mozilla.javascript.internal.EcmaError: ReferenceError: "id" is not defined. (<Unknown source="">#1)
at sun.org.mozilla.javascript.internal.ScriptRuntime.constructError(ScriptRuntime.java:3773) [rt.jar:1.7.0_01]

Условия в SELECT тоже не заработали.

Аттачу процесс, ботсатнцию, storage. Просьба поправить конфигурацию, если оно все таки работает.

Да, и почему хоть в логах и есть ошибка, бот выполнил задачу, и процесс завершился, а не остановился?

4 Attachments

Discussion

  • vromav

    vromav - 2015-05-08
    • status: open --> closed-fixed
     
  • vromav

    vromav - 2015-05-08

    Коммит r6274 исправляет проблему,

    но также потребовалось добавить пробелов в условие, изменил "[id]=='28'", на "[id] == '28'", и UPDATE успешно выполнился