Я пытаюсь понять, как создать формулу подавления раздела, которая оценивает все выборки в параметре с множественным выбором. Например, если параметр — «Программа», и вы можете выбрать из IIH, PSYCH, TCM, THER или PRTF, то я хотел бы иметь формулу, которая делает следующее:
Если выбрана только программа «IIH», то подавить. Если выбраны «IIH» и «THER», то подавить. Если выбрана какая-либо другая комбинация, то не подавлять.
Проблема в том, что я не могу понять, как Crystal хранит значения в этом параметре. Кажется, он учитывает только первую запись при использовании {?Program} в формуле.
Может быть, я упускаю что-то простое?
решение1
Вот формула, которую я использовал. Я получил ошибку индекса при оценке параметров, поэтому мне пришлось перейти непосредственно к полям базы данных.
Мой пример взят из таблицы «Сотрудники» с полем «Должность». Это переводится в ваши отделы «Программа» и «Психология».
If {Employees.Job Title} = ["Sales Manager","Sales Coordinator"] and UBound({?title}) = 2 Then True
Похоже, Crystal проверяет массивы как оператор IN в SQL. Мне пришлось добавить вторую проверку, чтобы убедиться, что в массиве только два значения.