Crystal Reports: отображение записи, если другая запись пуста, и наоборот - PullRequest
0 голосов
/ 06 января 2012

Я создаю подотчет и у меня есть две таблицы, из которых я использую одно поле, каждое из которых содержит номер телефона.

Оригинальный номер {TABLE1.ORG}

Временный номер {TABLE2.TEM}

Что я хочу:

Если {TABLE2.TEM} не равен NULL, то скрыть {TABLE1.ORG}, иначе показать {TABLE1.ORG}

Я пытался использовать вышеприведенное в качестве формулы, но это не сработало. Так как эти оба поля взяты из двух разных таблиц, если поместить их рядом друг с другом (без каких-либо формул или подавлений) в Режим проектирования:

{TABLE1.ORG} {TABLE2.TEM}

... Я вижу их в разных строках в режиме предварительного просмотра:

                 +971 4 321321321

+971 4 123123123

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

1 Ответ

0 голосов
/ 06 января 2012

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

Чтобы условно подавить {TABLE1.ORG} в зависимости от того, не является ли другое поле пустым:

  • щелкните правой кнопкой мыши {TABLE1.ORG} и выберите Формат поля ...
  • на вкладке "Общие" в диалоговом окне "Редактор формата" нажмите кнопку формулы условного подавления x-2 и введите формулу not IsNull ({TABLE2.TEM}) в редакторе формул формата.
  • нажмите кнопку Сохранить и закрыть, чтобы выйти из редактора формул формата, затем нажмите кнопку ОК, чтобы выйти из диалогового окна редактора форматов.

Если вы сейчас просматриваете отчет, вы обнаружите, что {TABLE1.ORG} подавлен, где {TABLE2.TEM} не равен нулю.

Обратите внимание, что если вы сделаете отображение полей обоих в зависимости от того, является ли другое значение нулевым, то оба будут подавлены, если ни одно из них не равно нулю.

...