2010-02-25 3 views
2

У меня ужасное время управляет отчетами RDLC. Я не мог найти никаких всеобъемлющих учебников в Интернете, и MSDN не так полезен, как мне бы хотелось.Матрицы отчетов .NET RDLC

В частности, у меня возникла проблема с попыткой отобразить определенную таблицу/матрицу в соответствии с требованием клиента. Все идет так.

В БД У меня есть две таблицы: (замещенными поддельные имена ради секретности в)

  • Spaceship информация (содержит цены на ремонт, топливо и другие данные космического корабля)
  • Запасные части (содержит информацию для разнообразие запасных частей)

в таблице в отчете, должны выйти, как-то вроде этого:

https://i53.photobucket.com/albums/g59/Sazabi02/Capture.png Table.

  • Синие Заголовки содержат Spaceship Info
  • Фиолетовый Заголовки содержат Запасной данные частей
  • Red являются итоговыми

Вещи, чтобы принять к сведению включают:

  • Столбцы запасных частей должны быть динамическими. Существует множество видов запасных частей и жесткого кодирования всего, будет непрактичным.
  • Макет был явно указан таким образом. Динамические колонны размещены в
  • Вполне возможно, что у космического корабля не было бы запасных частей. Я ЛЕВАЛ ВНЕШНИЕ СОЕДИНЯЛСЯ в БД, но это вызвало группировку столбцов в RDLC для создания пустой колонки для космических кораблей, у которых не было запасных частей.

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

Я пробовал несколько вещей. Удар по голове на клавиатуре не сработал после разочарования пытаясь заставить матрицу работать так, как я полагаю, она была предназначена и как ее разделение на три отдельные таблицы: одна для итогов. Одна для динамики и одна для фиксированных столбцов. (Два фактически потому, что один фиксированный столбец должен быть до и другие после того, динамические.)

Можно ли предоставить некоторое представление о том, как сделать это в Visual Studio RDLC отчеты?

ответ

1

, что вы пытаетесь сделать, это не очень легко, но это можно сделать, я дам вам несколько очков, чтобы начать. Если вам нужна дополнительная информация, просто спросите. Что касается динамических колонок для частей копья, просто делайте это. Соберите список всех возможных частей для всех кораблей, которые будут показаны. Файл Rdlc на самом деле представляет собой xml-файл. Вы можете открыть его с помощью XmlDocument и создать столько столбцов, сколько вам нужно. Вы можете передать измененное содержимое XmlDocument непосредственно в средство просмотра отчетов. Добавление столбца в xml немного сложнее.Сначала создайте отчет rdlc с помощью конструктора, сохраните и создайте копию файла rdlc с другим именем. Затем откройте его снова с помощью конструктора и удалите один столбец. Сохраните и сравните два xml, это покажет вам, что вам нужно добавить в xml для нового столбца. Таким образом вы создадите динамические столбцы. Таблица, которую вы передаете как источник данных, должна быть создана таким образом, чтобы она имела все столбцы и столбцы для каждой части. Каждая строка в этой таблице будет отправлена ​​и только в столбцах для части корабля будут значения.Это сейчас, если вам нужна дополнительная информация, просто спросите
Best Regarsd,
Iordan

+0

Спасибо. Я собирался потерять надежду и прибегнул к нескольким жестко запрограммированным запросам, которым я не горжусь. Я действительно искал нестандартный подход к редактированию RDLC. Благодарю. Я попробую ваше предложение. – Jonn

+1

Вы можете создавать или редактировать файлы RDLC без конструктора. RDLC является acctualy xml-файлом. Но чтобы иметь возможность вручную создавать RDLC-файл, вам нужны хорошие знания XML-формата RDLC. Вот почему я предложил создать конструктор rdlc дизайнером и открыть его с помощью блокнота, чтобы узнать, что генерируется xml. – IordanTanev

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