2009-10-25 2 views
1

Зачастую я создаю отчеты в Crystal Reports Visual Studio и хочу иметь информацию о мастер-детали или 1-много. Что-то вроде этого:Как сделать subreport/master-detail в отчетах о кристаллах VS без его кликабельности?

Invoice Number 13245 
    Total: $1,000,000 
    Date Raised: 1-Jan-1989 
    Date Due: 1-Jan-2019 
Line items: 
    # Desc     Cost 
    1 Hat     23.00 
    2 Gloves    7.00 
    3 Walking Stick 999,970.00 

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

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

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

Я использую Crystal Reports, который поставляется с Visual Studio 2005.

ответ

2

Двойной щелчок подотчет будет всегда открыта бурильных вниз вкладка - это особенность продукта.

Вариант 1: Обменивайтесь функциональностью детализации и используйте ее для повышения удобства пользователей.

Вариант 2: Используйте единый набор данных, который включает в себя информацию о счете и позиции. Группируйте отчет по счету № и размещайте свои итоговые данные в разделе заголовка группы. Используйте раздел «Сведения», чтобы отображать позиции. Помните, что вы можете иметь несколько разделов, которые могут быть полезны для отображения вашего графика (во втором разделе заголовка группы).

Возможно, вы захотите рассмотреть вопрос о создании запроса в отчете, а не в коде. Это значительно упростит отчет и ваш код и упростит ведение отчета и кода.

+0

Для меня это когда они однократны, а не дважды щелкните. Есть ли способ изменить это? Обычно у меня есть несколько наборов данных для детей, поэтому, к сожалению, вариант 2 невозможен. Я действительно не понимаю, почему нет возможности отключить сверление; почему вы хотите просверлить что-то только, чтобы увидеть точно такую ​​же отображаемую информацию. Это определенно полезно, чтобы просмотреть дополнительную информацию, но если отчет предназначен для компоновки на бумаге, тогда это не имеет смысла. – Rory

+0

Невозможно отключить это. Если пользователь перевернет в подчиненный отчет (создав новую вкладку), они затем смогут развернуть детали подрепортажа. Я подозреваю, почему эта функция присутствует. К сожалению, вложенные записи не могут быть вложенными (т. Е. Подзаголовок в рамках подрепортажа). – craig

 Смежные вопросы

  • Нет связанных вопросов^_^