Отчеты служб SSR для печати этикеток из рулона

#reporting-services #printing #labeling

#службы отчетов #печать #маркировка

Вопрос:

Есть ли у кого-нибудь опыт создания отчета, в котором будут печататься этикетки, находящиеся в рулоне?

Я вижу множество примеров для листа этикеток, но ничего с какой-либо подробной информацией о рулоне.

Было бы наилучшим способом настроить страницу отчета на 1 столбец, а затем настроить размер страницы на размер этикетки?

На каждой этикетке будет разная информация и разное количество этикеток на печать.

Итак, в основном настройте отчет так, чтобы отражать размер этикетки, а затем повторять страницы в зависимости от того, сколько этикеток требуется распечатать?

Ответ №1:

Вы должны просто иметь возможность настроить свой отчет так, чтобы он имел тот же размер страницы, что и ваша этикетка, а затем оформить отчет как обычный.

Что касается создания нескольких этикеток, вы можете либо

  1. создайте единый набор данных, содержащий всю необходимую информацию для всех этикеток, и сгруппируйте по тому, что делает каждую этикетку уникальной (например, по номеру этикетки). Затем добавьте разрыв страницы в свойство группы строк, чтобы поместить разрыв между ними, или ..
  2. вы могли бы создать вложенный отчет, который обрабатывает только одну метку, а затем создать основной отчет с элементом управления таблицей с одной «ячейкой» и вложенным отчетом внутри этой ячейки. Затем вы должны передать параметры во вложенный отчет из основного набора данных. Я думаю, вы видели аналогичный ответ, который я опубликовал о печати листов этикеток, если вы будете следовать этому, то он должен помочь вам пройти большую часть пути.

Вариант 1, вероятно, является самым простым методом… Пошаговая инструкция для варианта 1 В этом примере я использовал образец базы данных Microsoft WideWorldImporters, просто чтобы я мог получить некоторые имена и адреса.

Шаг 1: Напишите запрос для получения ваших данных. В моем примере я использовал следующее..

 SELECT top 10 o.OrderID, c.CustomerName, c.DeliveryAddressLine1, c.DeliveryAddressLine2, cty.CityName, c.DeliveryPostalCode
  FROM [Sales].[Orders] o
    JOIN Sales.Customers c on o.CustomerID = c.CustomerID
    JOIN Application.Cities cty on c.DeliveryCityID = cty.CityID
ORDER BY OrderID
  

Это просто дает мне номер заказа, название компании и адрес.

Шаг 2. Создайте новый отчет. Я использую Visual Studio, но процесс почти идентичен в построителе отчетов, если вы используете это.

  • Создайте новый пустой отчет
  • Добавьте источник данных и набор данных, содержащий ваш запрос, с шага 1
  • Выберите ‘body’ и задайте size свойству свой размер этикетки. Я использовал 100 мм, 40 мм
  • Выберите «отчет» и установите для PageSize свойства те же значения, что и выше, а поля равны 0

введите описание изображения здесь
введите описание изображения здесь

Шаг 3: Добавьте таблицу, содержащую данные

  • Добавьте новую таблицу
  • Удалить строку заголовка
  • Удалите последний столбец (в моем примере у меня есть метка из двух столбцов, но, очевидно, решать вам).
  • Выберите таблицу (табликс) с помощью серого маркера таблицы (вверху слева от таблицы), а затем задайте свойству dataset имя созданного ранее набора данных
  • Добавьте достаточно строк, чтобы содержать все ваши данные, в моем случае всего 6
  • На панели Группы строк под основным дизайном отчета щелкните правой кнопкой мыши группу строк сведений и выберите Add Group => Parent Group . Выберите OrderID в качестве поля для группировки и нажмите ОК
  • Удалите недавно добавленный столбец и при появлении запроса выберите «удалить только столбец».
  • Щелкните правой кнопкой мыши (OrderID) группу строк и перейдите в свойства группы, щелкните Разрыв страницы и выберите «между»
  • Установите, чтобы каждая строка содержала ваши данные, пока у вас не получится что-то вроде….

введите описание изображения здесь

Очистите форматирование, и это должно быть так. По одной этикетке на страницу, и для каждой страницы задается размер этикетки.

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

Комментарии:

1. Возникли трудности с настройкой дизайна этикетки и использованием группы строк. Я не могу использовать группу строк, не имея таблицы или списка, для которых требуется хотя бы один столбец. Мне нужно сгруппировать по номеру заказа, а затем напечатать имя и адрес в формате этикетки.

2. Если ваш набор данных r содержит имя заказа # и адрес, затем создайте таблицу, добавьте группу строк для заказа #. Добавьте подробные строки, необходимые для имени и адреса. В свойствах группы строк задайте разрывы страниц между ними. Удалите все пробелы из отчета, чтобы таблица заполнила «страницу». Если вы не можете понять, что я имею в виду, дайте мне знать, и я опубликую полный ответ.

3. Мы будем признательны за полный ответ!

4. Я посмотрю, смогу ли я что-нибудь собрать этим вечером, работа сейчас немного напряженная

5. Спасибо за это, сегодня утром мне удалось настроить этот отчет, теперь осталось только распечатать этикетки! Очень признателен.