Настраиваемая бизнес-служба в диспетчере проверки данных

У меня DVM запущен из потока задач. Существует набор определенных правил, и одно из них выглядит так:

InvokeServiceMethod("StringUtilsBS","matchRegExp","source=eval([Client Last Name]),pattern='" + [&Mask]'","result") <> "INVALID"

Сам бизнес-сервис в симуляторе BS работает корректно: я вижу валидные результаты и логи (трассировка включена). Но когда DVM вызывает это правило, журнала трассировки нет, похоже, служба вообще не запускается.

БС была скомпилирована во все возможные локали. В cfg клиента я добавил Business Service Query Access List=StringUtilsBS, то же самое делается в "Администрирование: Конфигурация сервера: Предприятие: Параметры" для тонкого клиента.

Пока не повезло. Протестировано в условиях высокой интерактивности и открытого пользовательского интерфейса как для тонких, так и для толстых клиентов.


person Igor    schedule 05.05.2015    source источник


Ответы (1)


Я никогда не использовал диспетчер проверки данных... Однако я бы начал с проверки того, что ваше выражение правила в порядке, потому что синтаксис InvokeServiceMethod довольно уродлив, и есть вероятность, что где-то в нем есть опечатка. На самом деле, я думаю, что есть один:

pattern='" + [&Mask]'",        <-- this is what you have
pattern='" + [&Mask] + "'",    <-- but shouldn't it be like this?

Если это не исправит, я бы создал вычисляемое поле в том же BC, где находится [Client Last Name], с тем же выражением. Конечно, вам придется заменить [&Mask] чем-то другим, но это не должно иметь никакого значения.

person AJPerez    schedule 05.05.2015
comment
да, точно. правильный синтаксис был <..>pattern=" + [&Zip_Mask],<..> спасибо. - person Igor; 06.05.2015