Разве в область нижнего колонтитула группы не входит строка сведений? - PullRequest
0 голосов
/ 24 августа 2018

У меня есть отчет Crystal, который я пытаюсь преобразовать в отчет SSRS в построителе отчетов.В моем Crystal Report у меня 9 групп, некоторые с отображаемыми верхними и нижними колонтитулами, а также пара с дополнительными подробностями нижнего колонтитула, которые отображаются условно.

У меня есть свои группировки, а также все верхние и нижние колонтитулы, созданные в моемОтчет SSRS, но мне трудно разобраться, как скрыть некоторые из нижних колонтитулов моей группы, которые основаны на поле формул в Crystal.

В Crystal у меня есть 2 полных итоговых поля и формулана основе этих 2 полных итоговых полей.Каждое из полных итоговых полей является просто счетчиком, который сбрасывается при изменении группы.Формула является модом первого против второго, наряду с некоторыми другими условиями.На основе формулы нижний колонтитул группы скрыт или нет.

В построителе отчетов группа 6 имеет первый промежуточный итог (переменная группы inv_count), группа 8 имеет второй промежуточный итог (переменная группы * 1008)*).В подробном разделе я сделал Group varialbe (для тестирования, просто inv_count - group_count) под названием mod.

Когда я помещаю текстовое поле с mod в один из нижних колонтитулов для группы 6 и запускаю отчет, я получаю следующую ошибку: The Value expression for the text box ‘Textbox169’ refers to the Variable ‘mod’. Expressions can only refer to a Variable declared within the same grouping scope, a containing grouping scope, or those declared on the report. Не включен ли нижний колонтитул в область действия группы илиподробно не входит в объем для нижнего колонтитула?

Это, пожалуй, самый сложный отчет, который у нас есть, но если мы не можем его портировать, это нарушит условия сделки.

Спасибо за понимание.

Ответы [ 2 ]

0 голосов
/ 25 августа 2018

Область нижнего колонтитула группы содержит строку сведений, но область видимости строки сведений не содержит строки нижнего колонтитула внешней группы.

«Раздел сведений» является самой внутренней группой отчета. Переменная, определенная в этой группе, доступна только там. Если вы хотите использовать переменную в определенной группе, эта переменная должна быть определена в этой группе или в группе дальше (или на уровне отчета, который является самой внешней областью действия). Область действия переменной группы - это та группа и внутренние группы вплоть до строки розничных продаж.

Пример (добавлено):

Представьте себе список продуктов , которые появляются в заказах , которые отправляются клиентами . На уровне product вы можете указать имя клиента , а на уровне customer вы не можете сказать "имя product"(потому что клиентов отправляют несколько заказов , которые содержат несколько продуктов ).

0 голосов
/ 25 августа 2018

Просто чтобы заверить вас, построитель отчетов должен быть способен обрабатывать все ваши преобразования отчетов. Мы сделали то же самое на моей последней работе, переделали их всех.

Я бы отказался от использования групповых переменных. Честно говоря, я никогда не использовал их. Важная вещь, которую нужно понять, это объем выражения. Например, если вы просто положите:

=Sum(Fields!inv_count.Value - Fields!group_count.Value)

Это даст вам сумму в текущей области. Таким образом, он естественным образом фильтруется на основе групп, в которые он попадает. Вы также можете переопределить область следующим образом:

=Sum(Fields!inv_count.Value - Fields!group_count.Value, "group8")

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

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

...