Как создавать отчеты rdlc произвольной формы с одной страницей в строке
Учитывая набор данных, содержащий несколько строк, из консольного приложения.NET мне нужно создать отчет по одной странице для каждой строки, отправив эти страницы непосредственно на принтер.
Я пытаюсь использовать Microsoft Report для этого, присоединяя его к набору данных и помещая TextBoxes, где я хочу. Генерация отчета и отправка его на принтер не проблема. К сожалению, данные, кажется, доступны только в виде агрегатов - First, Sum, Last, Max и т. Д. Я не могу зафиксировать текстовое поле в пустом поле.
Некоторые осматривают здесь и другие сайты, кажется, решают эту проблему, но только когда данные представлены в таблице. В одном сообщении даже без уточнения сказано: "Моя ошибка заключалась в использовании текстовых полей"
Я использую неправильный инструмент для того, что я пытаюсь достичь?
2 ответа
Я столкнулся с той же проблемой и сумел ее решить. Решение кажется мне немного запутанным, поэтому не указывайте мне "правильный" способ сделать это, но вот что я сделал:
- Убедитесь, что для вашего отчета определен набор данных.
- Добавьте элемент управления "Таблица" в отчет. Кажется, это необходимо для того, чтобы перебрать строки в вашем наборе данных.
- Удалите строку заголовка и два столбца по умолчанию из таблицы, чтобы у вас осталась одна строка с одним столбцом.
- Разверните таблицу до ширины макета и сделайте ее настолько высокой, насколько вам потребуется для макета "свободной формы".
- По умолчанию в ячейке таблицы находится TextBox. Щелкните правой кнопкой мыши пустую ячейку таблицы и выберите "удалить", чтобы удалить этот TextBox.
- Перетащите элемент управления "Прямоугольник" в пустую ячейку таблицы. Кажется, он автоматически "пристыковывается" к ширине / высоте ячейки таблицы.
- Теперь вы сможете перетащить поля из вашего DataSet (TextBoxes и т. Д.) В прямоугольник, чтобы получить желаемый макет.
Обратите внимание, что я нахожусь на ранних этапах использования этого подхода, поэтому я не уверен, удастся ли мне ударить по каким-либо стенам... но для базового отчета, в котором используются текстовые поля и разрыв страницы после каждой "строки", кажется, что работает нормально.
Или вы пытаетесь использовать список. В списке вы можете расположить текстовые поля (и другие элементы управления) по своему усмотрению, и они будут заполнены для каждой записи в наборе записей.
Это работа для меня.:-)