Параметр связанного вложенного отчета Crystal Report не работает должным образом - PullRequest
0 голосов
/ 06 декабря 2011

У меня есть основной отчет с одной группой, part_id, который содержит подотчет в заголовке группы.В подотчете есть два связанных параметра .Один - part_id, такой же, как группа в основном, а другой - stores_code.Параметр part_id работает правильно, а параметр stores_code - нет.Если выбран stores_code, он работает, но если не выбран stores_code, то подотчет возвращает только одну запись.Я ожидал, что он вернет все stores_code для этого part_id.Это потому, что подотчет находится в заголовке группы ?Если я удалю ссылку на * stores_code *, тогда все записи появятся в подотчете, но тогда у меня возникнет обратная проблема.Если пользователь выбирает конкретный stores_code, подотчет по-прежнему показывает все записи.

Мои исследования привели меня к мысли, что мне нужно изменить настройки моего параметра на allow multiple and/or to make it optional and/or give it a default and/or allow null values for the parameter.Однако я использую параметры, автоматически созданные Crystal при добавлении ссылок на подотчеты.Когда вы щелкаете правой кнопкой мыши по этим параметрам, опция редактирования недоступна.Поэтому я решил, что мне нужно сделать свои собственные параметры, изменить настройки и вместо этого дать ссылку на них.Однако, когда я создаю свои собственные параметры и ссылаюсь на них, опция select data based on subreport field недоступна.

Чтобы сделать это еще более неприглядным, этот отчет запускается из стороннего приложения.Выбор part_id и stores_code сделан внутри этого приложения.Это своего рода черный ящик в том смысле, что в основном отчете у меня нет параметров part_id и stores_code.Приложение заботится о выборе, но я не знаю точно, как.

Ответы [ 3 ]

1 голос
/ 06 декабря 2011

Если вы отображаете подотчет в заголовке группы 'part_id', единственное поле, на которое вы можете рассчитывать, чтобы быть надежно доступным, это 'part_id'.Если в каждой группе несколько «store_code», то в подотчет будет передан только «store_code» first записи группы.Это также относится ко всем другим данным в записи.

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

0 голосов
/ 27 октября 2015

Есть причуды с Crystal Report. Перед повторным импортом подотчетов безопаснее сначала отсоединить все параметры. После повторного импорта вы можете связать все поля. В противном случае вы столкнетесь со странными проблемами.

0 голосов
/ 07 декабря 2011

В итоге я отсоединил второй параметр и добавил для него опцию «ВСЕ» и соответственно изменил формулу выбора.Аналогично этому примеру:

http://cogniza.com/wordpress/2005/11/24/crystal-reports-optional-multi-select-parameters/

...