Привет всем. Требуется квалифицированная помощь. Имеется клиент-серверная 1С, крутиться на PostgreSQL в Линуксе. Собственно в чем вопрос? При формировании для печати штрихкодов выходит такая картина. Есть у кого опыт решения такой проблемы?
EMigachev
10.09.2015 16:39
Ответ № 1
Linux есть отличная команда barcode, которая генерирует штрих-коды в векторном формате ps. Но, 1С не понимает такие форматы. Более того, barcode, генерирует штрих-код на размер листа А4 или Letter. Установка пользовательского размера листа не увенчалась успехом. Но, не будем же мы вставлять изображение штрих-кода размером с лист А4…
Однако, есть способ, как решить данные проблемы.
Генерируем штрих-код в формате ps с помощью команды barcode:
barcode -p letter -g 200×100 -u mm -b 13423432320 -e 128 -o sss.ps
Теперь, нужно преобразовать его в понятный для 1С формат – это или jpg или png. За это отвечает команда ImageMagick convert. Кроме того, есть возможность указать четкость изображения с помощью параметра -density 150. А так же есть очень полезный параметр для нашего случая -trim. Этот параметр обрезает изображение. Т.е. обрезает всё белое пространство нашего листа.
Получаем такую команду для генерации jpg:
convert -density 150 -trim sss.ps sss.jpg
convert -density 150 -trim sss.ps sss.png
Сравнивая изображения png и jpg видим, что jpg имеет размер 21,2Кб, а png – 2,7Кб. Т.е. получается, что png лучше использовать, т.к. размер такого файла в 10 раз меньше. Кроме того, в png нет фона.
Для того, чтоб не нужно было вызывать несколько команд из линукс и после каждой делать тайм-аут, рекомендую заключить обе команды в “одну команду”, например так:
barcode -p letter -g 200×100 -u mm -b 13423432320 -e 128 -o sss.ps | convert -density 150 -trim sss.ps sss.png
Можно обойтись и без использования файла, например:
Элемент управления «1С:Печать штрихкодов» для платформы «1С:Предприятие 8.3»
Внешняя компонента «1С:Печать штрихкодов» для платформы «1С:Предприятие 8.3» поставляется в составе Библиотеки подключаемого оборудования.
Элемент управления предназначен для формирования штрихкода. Элемент управления может использоваться только совместно с программными продуктами системы «1С:Предприятие 8» на рабочих местах, обеспеченных Лицензией на использование системы программ «1С:Предприятие 8». Текущая версия элемента управления — 9.0.2.2 .
Основные возможности
Элемент управления позволяет формировать штрихкоды следующих форматов: EAN8, EAN13, EAN13 AddOn 2, EAN13 AddOn 5, ITF14, RSS14, EAN128, Code39, Code39 Full ASCII, Code93, Code128, Code16k Industrial 2 of 5, Interleaved 2 of 5, CodaBar, PDF417, QR, GS1 databar extended stacked, DataMatrix ASCII, DataMatrix Base256, DataMatrix Text, DataMatrix C40, DataMatrix X12, DataMatrix Edifact. Поддерживает автоопределение формата штрихкода. Элементу управления можно передавать символьное значение штрихкода как с контрольным символом, так и без него. Есть возможность отключения показа контрольного символа штрихкода на результирующем изображении штрихкода. Для контроля полного вхождения полос штрихкода в область печати имеются свойства «минимальная ширина» и «минимальная высота», содержащие в себе минимально возможную ширину и высоту печатной области, в которой штрихкод может отображаться полностью.
Возможности оформления
Текст, отображаемый на поверхности штрихкода, можно задавать программно вне зависимости от содержания самого штрихкода. Можно изменять шрифт, положение текста (вверху или внизу штрихкода), признак отображения текста. Доступны для изменения цвет текста, цвет фона и цвет полос штрихкода. Фон штрихкода может быть прозрачным. Также изменяется угол поворота (дискретно по 90 градусов) штрихкода вместе с текстом.
Все 4 внешние компоненты добавлены в конфигурацию в виде общих макетов. Общие функции для вызова внешних компонент находятся в общем модуле — штрихкодирование. Пример печати сделан в обработке — печать штрихкода, с минимальной передачей данных контекста.
Скачать файлы
Специальные предложения
Обновление08.11.19 18:50
См. также
Внешняя компонента для работы по Web-socket протоколу Промо
Кто когда-нибудь сталкивался с обменом данными по Web-Socket (wss) протоколу из 1С, тому известно, что в платформе отсутствуют данные механизмы (не путать с HTTP запросами и WebServices). Предлагается использовать внешнюю компоненту, написанную по технологии NativeAPI, для подключения и обмена с серверами из 1С-Предприятия, работающими по протоколу Web-Socket.
30.03.2018 25378 35 Ditron 83
Генерация кода для автоматизированного тестирования
Генератор кода — дополнение к оригиналу. Генерация данных на основе существующих экземпляров объектов системы. Генерация данных на основе метаданных конфигурации.
28.07.2020 1365 4 rsamt 0
Пример программирования методом Конечных автоматов на базе написания парсера CSV
Способ реализации программирования методом Конечного автомата на примере написания парсера CSV-файла с обработкой двойных кавычек и многострочным текстом в ячейках.
17.06.2020 1194 0 Salimbek 3
Внешняя компонента Native API для управления окнами и буфером обмена, получения снимков окон Windows и Linux
Внешняя компонента Native API для Windows и Linux с исходными кодами на C++. Возможности компоненты: получение списка окон и списка процессов, управление размерами и положением окна, снимок окон и снимок экрана, доступ к данным буфера обмена, взаимодействие по протоколу WebSocket.
16.04.2020 3167 4 kandr 11
Вам нравятся запросы в 1С? Промо
Речь не только о том, что простейший запрос с «легальным» оформлением растянется на пол-экрана, речь еще обо всем, что нужно написать «в нагрузку» к тексту запроса. Все эти «Новый Запрос», «УстановитьПараметр» и последующие пляски с обработкой результата. Пора с этим заканчивать!
03.07.2019 19528 4 m-rv 86
Жизнь в стиле RPG
Работа выполнялась на платформе 8.3.16.1148. Пока мой город на карантине, появилось чуть больше свободного времени (процентов на 15) — решил попробовать сделать для себя в 1С то, что давно хотел. У меня на телефоне есть приложение «RPG in real life», оно мне помогает в мотивации важных дел, но кажется немного неудобным. Решил сделать что-то похожее в 1С, с моими основными «хотелками». Данная разработка позволяет получать миссии, за выполнение которых начисляются баллы, влияющие на повышение уровней своих навыков.
08.04.2020 2239 0 ErrorEd88 5
Маршрутизация Яндекс-карт в 1С (обычные и управляемые формы)
Обработка показывает пример построения маршрута между двумя точками.
Качественная и быстрая печать на внутреннем языке принтеров этикеток.
02.02.2020 5727 29 Johny_v 6
ВСТАВИТЬ В Справочник.Номенклатура (Код, Наименование) ЗНАЧЕНИЯ («001», «Новый товар») Промо
Вас не обманывают ваши глаза, это запрос на изменение данных! И это работает без прямого доступа к БД, регистрации и смс.
01.06.2018 29680 86 m-rv 57
Программное создание письма EML с вложениями
Внешняя обработка, которая создает письмо EML с вложениями и сохраняет на диск.
10.01.2020 2425 2 info1i 0
Сканирование по TWAIN в 1С (обычные и управляемые формы)
Обработка показывает пример, как можно в 1С проводить сканирование с помощью компоненты TWAIN.
03.01.2020 4657 20 Denr83 0
Обмен данными с Android через USB
Обработка с примером обмена данными конфигурации 1С через USB. Без установки Web сервера и настройки WiFi.
23.12.2019 3632 4 asdfgcom 2
TextRadar — нечеткий поиск в тексте Промо
В отличие от нечеткого сравнения строк, когда обе сравниваемых строки равнозначны, в задаче нечеткого поиска выделяются строка поиска и строка данных, а вычислить необходимо не степень похожести двух строк, а степень присутствия строки поиска в строке данных. Нормированный коэффициент, находящийся между 0 и 1 позволяет отсечь заведомо низкие результаты, организовать поиск по синонимам и т.д. Наглядное отображение результатов в кратком и детальном виде поможет быстро найти интересующий фрагмент.
19.09.2018 16671 20 TSSV 18
Преобразование объекта Отбор компоновки данных в Запрос
Преобразует объект Отбор компоновки данных в объект Запрос (с заполнением текста и параметров).
20.12.2019 3487 4 okon-teh 2
Многоуровневые списки выбора с оформлением элементов
Данная статья — попытка решить один маленький кусочек большой проблемы платформы 1С, а именно — бедные и невыразительные пользовательские интерфейсы. Поскольку 1С в режиме управляемого приложения позволяет задействовать веб-клиент, то хочется реализовывать интерфейсы как у взрослых веб-приложений — красивые, дружелюбные для пользователя и, желательно, с положительным UX. Возможно, кто-то со мной не согласится и скажет, что учетные системы должны быть строгие и линейные. Но мы все знаем, что 1С — это уже не только про бухгалтерию. Небольшое отступление для разработчиков, работающих с типовыми конфигурациями. Я не знаю, использует ли фирма 1С что-то похожее в своих разработках. Если да, то данная статья навряд ли будет вам полезна.