IsFlag () не возвращает False, когда элемент данных флага пуст - PullRequest
1 голос
/ 13 мая 2019

В Blue Prism v5 есть функция IsFlag (), которую можно использовать для оценки, имеет ли элемент данных тип Flag. Обычно в случае, например, Number, функция IsNumber () вернет False, если элемент данных пуст.

В моем случае (элемент данных флага) функция IsFlag () не возвращает False при выполнении этого выражения на этапе принятия решения.

Может кто-нибудь объяснить мне, почему и дать возможное решение для этого?

Решение, которое я уже получил от кого-то другого: - Оценить, установлен ли флажок True - Поместить этап решения в блок - Добавьте этап восстановления / возобновления и установите значение False (в качестве значения по умолчанию) перед тем, как оценивать условие, которое вы хотите оценить.

1 Ответ

2 голосов
/ 13 мая 2019

IsFlag () работает не так, как вы думаете - он не оценивает переменную по ее типу, но оценивает строку, которую вы ей передаете.

Если вы предоставляете текстовую переменную с надписью «Notflag», то, поскольку она не «true» или «false», функция возвращает «false».

Если вы предоставляете функцию с флагом True, то сначала она заменяется текстом «True», затем оценивается и фактически является флагом.

Наконец, если вы предоставляете эту функцию с пустым флагом, то сначала она заменяется пустой строкой "", что, конечно, не является флагом. То же самое происходит с пустым номером, датой и т. Д.

Я думаю, что ваше решение великолепно. Вы также можете поэкспериментировать с использованием приведенных ниже кодов, чтобы в вашей студии было меньше ящиков.

Trim([Flag])=""

или

[Flag] = True OR
[Flag] = False OR
Trim([Flag])=""
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...