Microsoft Report Builder не печатает отчет правильно - PullRequest
0 голосов
/ 27 марта 2012

Я создаю отчет, в котором отображаются ТОП 4 элемента в таблице. Я хочу иметь возможность распечатать отчет на принтере этикеток Zebra LP2844. Метка 6x4 альбомная. Я установил ширину PageSize на 6 дюймов, а Высота на 4 дюйма. Каждая маржа установлена ​​на 0,1 дюйма. Ширина тела установлена ​​на 5,8 дюйма (6 дюймов - 0,1 дюйма - 0,1 дюйма). Я запускаю отчет через построитель отчетов и смотрю, как выбрана настройка страницы и Портрет. Поэтому я выбираю Пейзаж и подтверждаю нажатием OK. Если я посмотрю еще раз, он вернется к Портрету. Печать этикетки, как она хочет. Я получаю его либо для печати пейзажа, но все гораздо меньше (только с использованием верхней левой трети метки), либо это правильный размер, но портрет, и поэтому он обрезается.

Другая проблема - это штрих-код, который я пытаюсь распечатать. Я использую шрифт C39P12DmTt. Я вижу это в отчете о прогоне, но он не печатается.

Как мне исправить отчет?

Я использую SQL2008 и построитель отчетов 3.0

Спасибо

1 Ответ

4 голосов
/ 27 марта 2012

Я не могу ответить на вопрос о ваших реальных проблемах с Report Builder, но могу рассказать вам кое-что о принтерах Zebra LP2844 в целом:

Я много работаю с принтерами Zebra LP2844 на работе,и у меня не было ничего, кроме проблем, каждый раз, когда я пытался печатать через драйвер принтера Windows из какого-либо генератора отчетов (в основном MS Access).
В большинстве случаев проблемы были связаны с форматом и размером этикетки (альбомная, а не портретная,один отчет разделен на несколько физических меток ...), что похоже на проблемы, с которыми вы сталкиваетесь.

Принтеры Zebra имеют встроенный язык EPL (или ZPL, в зависимости от модели), который вы можете использовать.используйте для отправки команд непосредственно на принтер.
Создание меток в EPL / ZPL не так удобно, как перетаскивание содержимого в конструкторе отчетов, но печать надежна, просто работает и никогдаподвел меня все годы (мы печатаем сотни этикеток в день, вот уже почти 10 лет).

Я боюсь, что создание кода EPL / ZPL невозможно напрямую с SQL Server, но вы можете сделать это с C # или любым другим языком программирования.
Вот отличный пост в блоге о том, как печатать этикеткина принтеры Zebra LP2844 с C #:
Отправка Raw EPL2 напрямую на Zebra LP2844 через C #

TL; DR:
Я знаю, что высейчас я пытаюсь создать отчет непосредственно с помощью построителя отчетов SQL Server, но я бы посоветовал вам сгенерировать код EPL / ZPL и, если это возможно, отправить его непосредственно на принтеры.
Это избавит вас от многих проблем в долгосрочной перспективе, поверь мне!

...