Матрицы отчетов .NET RDLC - PullRequest
       7

Матрицы отчетов .NET RDLC

2 голосов
/ 25 февраля 2010

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

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

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

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

Таблица в отчете должна выглядеть примерно так:

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

  • Синий Заголовки содержат информацию о космическом корабле
  • Фиолетовый Заголовки содержат информацию о запасных частях
  • Красный итоги

Вещи, на которые следует обратить внимание:

  • Колонки запасных частей должны быть динамичный. Есть множество видов запасные части и жесткое кодирование всего было бы непрактично.
  • Макет был явно указан таким образом. Динамические столбцы размещены в
  • Вполне возможно, что у космического корабля не будет запасных частей. Я оставил его в базе данных, но это привело к тому, что группировка столбцов в RDLC вызвала пустой столбец для космических кораблей, не имеющих запасных частей.

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

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

Может ли кто-нибудь рассказать о том, как это сделать, в отчетах Visual Studio RDLC?

1 Ответ

1 голос
/ 02 марта 2010

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

...