Как подавить текстовый объект на основе значения заголовка в Crystal Report? - PullRequest
0 голосов
/ 02 мая 2018

Как подавить поле текстового объекта в Crystal Report на основе значения заголовка. У меня есть 2 поля текстовых объектов под заголовком, и я хочу подавить одно или другое на основе моего заголовка.

т.е. мой заголовок является динамическим, и он получает другое значение заголовка.

Случай 1. В определенном случае, если заголовок «ABC», я хочу подавить или скрыть 1-й текстовый объект.
СЛУЧАЙ 2. Если заголовок «DEF», я хочу подавить или скрыть 2-й текстовый объект.

1 Ответ

0 голосов
/ 02 мая 2018

Чтобы подавить только поле, а не весь заголовок:

  1. Щелкните правой кнопкой мыши первый текстовый объект
  2. Выберите Форматировать текст из меню
  3. На вкладке Общие найдите флажок Подавить . Не проверяйте это все же.
  4. Вместо этого нажмите кнопку x + 2 справа.

    Примечание. Это довольно далеко от флажка Подавить, к которому он относится. Смотрите скриншот ниже для помощи в поиске кнопки.

enter image description here

  1. В появившемся окне формулы введите условие для подавления текстового поля. Например, если вы хотите подавить текстовое поле, если заголовок «ABC», вы можете ввести следующее:

    {@HeaderField} = "ABC"
    
    1. Повторите для следующего текстового поля.

Однако для вас может быть более простой способ сделать это. Вместо двух текстовых объектов создайте одну формулу с оператором IF-THEN-ELSE, чтобы определить, какой текст отображается.

Например:

If {groupname} = "ABC" then "first set of text"
Else if {groupname} = "DEF" then "second set of text"
Else "Error"

или

If {groupname} = "ABC" then "first set of text"
Else "second set of text"

или

Select {groupname}
Case "ABC": "first set of text"
Case "DEF": "second set of text"
Default: "Error"
...