Класс для формирования штрих-кодов при помощи свободной библиотеки Zint

02.10.14

Разработка - Инструментарий разработчика

Библиотека Zint позволяет формировать штрих-коды различных стандартов (более 100) в виде .png, .eps или .svg
Данный класс предназначен для того, чтобы использовать данную библиотеку под 1С 7.7

Скачать исходный код

Наименование Файл Версия Размер
Все в одном файле
.zip 1,63Mb
30
.zip 0.1 1,63Mb 30 Скачать

Класс имеет пока только 2 метода (их должно быть достаточно для предназначения класса):

ЗакодироватьВФайл(ЧтоКодировать, спПараметров) - представляет кодируемые данные в виде файла с изображением штрих-кода

ПерекодировкаВ_BMP(Файл, УдалятьИсходныйФайл = 1) - для перекодирования файла изображения в формат BMP - понятный объекту 1С "Картинка".

Во вложении запаковано все, что требуется - все библиотеки dll, класс и обработка для тестирования функционала.

Есть один минус у библиотеки zint.dll - она не предоставляет методов для проверки кодируемых данных ДО начала процесса кодирования. В результате этого часто возникает ситуация, когда введенные некорректные данные для выбранного стандарта штрих-кода являются некорректными, и обработка вызывает "падение" 1С.

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

Необходимость в создании данного класса возникла из-за невозможности получать штрих-коды по стандарту "фармакод" при помощи других доступных в интернете инструментов. При помощи данного класса я решил свои проблемы.

Пользуйтесь на здоровье!

 

ЗЫ: для работы класса нужна библиотека dynwrapx.dll, которая должна быть зарегистрирована в системе (ее месторасположение не важно)!
Папка zint с файлами:     zint.dll, zlib1.dll, libpng15.dll, zint.sha1   должна находиться в папке БД, папке программы 1С либо в папке класса.
Также требуется служебная библиотека msvcrt.dll (она должны находиться в папке c:\windows\system32, если у Вас Windows установлен в папку c:\windows). Тестировал работоспособность только под Windows XP.

Все вышеуказанные библиотеки я включил в файл для скачивания.

штрих-код zint

См. также

Консоль запросов

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Консоль запросов к базе SQL, не требующая внешних компонент

10 стартмани

29.04.2015    21632    54    Gvozdod    8    

14

StartManager 1.4 - Развитие альтернативного стартера

Инструментарий разработчика Платформа 1С v7.7 Платформа 1С v8.3 Абонемент ($m)

Очередная редакция альтернативного стартера, являющегося продолжением StartManager 1.3. Спасибо всем, кто присылал свои замечания и пожелания, и тем, кто перечислял финансы на поддержку проекта. С учетом накопленного опыта, стартер был достаточно сильно переработан в плане архитектуры. В основном сделан упор на масштабируемость, для способности программы быстро адаптироваться к расширению предъявляемых требований (т.к. довольно часто просят добавить ту или иную хотелку). Было пересмотрено внешнее оформление, переработан существующий и добавлен новый функционал. В общем можно сказать, что стартер эволюционировал, по сравнению с предыдущей редакцией. Однако пока не всё реализовано, что планировалось, поэтому еще есть куда развиваться в плане функциональности.

1 стартмани

23.04.2014    165958    1868    Alexoniq    1596    

496

Tray Informer

Инструментарий разработчика Платформа 1С v7.7 Платформа 1С v8.3 Россия Абонемент ($m)

Согласитесь, что окно стандартное сообщений в 1С иногда приносит больше неудобств, чем пользы. И тем более разные "Предупредить"... Что с этим окном только не делают! Его отцепают от формы, делают маленьким, умудряются спрятать за границы экрана. А потом звонят программистам с претензией, что документ почему-то не проводится, отя ничего и не пишет. У вас такого не было? А вот у нас было и не раз )))

1 стартмани

04.09.2013    32913    61    O-Planet    78    

49

Изменение структуры баз 1С 7.7 без долгой реструктуризации. Часть 1. Справочники

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

На днях встретил вопрос на форуме про возможность внесения изменений в конфигурацию без долгого сохранения в рабочей базе большого объема. Вот решил поделиться опытом, как это делал я. База у нас была объемом порядка 120 Гб. К базе обращался сайт в режиме 24/7, поэтому важно было быстро сохранять изменения и желательно без последующего монопольного запуска для восстановления индексов и процедур и без отключения пользователей от базы. Это первая часть статьи и посвящена она справочникам. С одной стороны - это самый простой объект, с другой стороны, именно про справочник спрашивалось на форуме. Если статья будет востребована, то я напишу аналогичные про документы, регистры и может еще что.

1 стартмани

13.08.2013    21253    Reptile    5    

35

v7.7 1CDialogControls: Инструмент в помощь разработчику на 7.7.

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Давным давно, когда я еще плотно писал на 7.7 работа с формами была мучительной и неудобной. Приходилось каждый элемент выкладывать, выравнивать на форме ручками, прописывать код в модуле. Иногда при разработке очередной формы приходила в голову мысль: "а где-то я уже похожее делал..." и начинался мучительный поиск подходящего кода в своих запасах........

1 стартмани

21.02.2013    18057    35    MarSeN    14    

16

[Разработчику] Любая таблица значений в OLAP

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Анализируем различные данные в 1С, используя OLAP-технологии со всеми прелестями. Т.е. наглядное отображение данных, быстрые расчеты, горизонтальные и вертикальные группировки любой вложенности, удобная фильтрация, Drag'n'Drop и ещё много приятных вещей от MS. Обработка на входе принимает практически любую таблицу значений (ТЗ в которой колонкам указаны типы значений, строка, число и т.п.), на выходе имеем на форме 1С сводную таблицу и график по этой ТЗ, с которой работаем, как и в Excel со сводной таблицей и диаграммой. Взял за основу разработку «OLAP Анализ счёта» ( http://infostart.ru/public/14964/ ) от JohnyDeath и переделал под любую ТЗ. Опционально используется «Прогресс бар для 1С 77» (http://infostart.ru/public/14061/ ) от Gmix.

1 стартмани

21.12.2012    36128    51    venger    7    

23

Библиотека кода 1С 7.7 (накопленная за 8 лет)

Инструментарий разработчика Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Весь код на 1С 7.7, собранный для повторного использования за 8 лет работы.

10 стартмани

25.11.2012    35002    248    adhocprog    51    

70
Комментарии
Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. maxx 991 24.04.15 20:43 Сейчас в теме
Скажите как дела с русскими буквами?
Нужны кодировки win-1251 , utf-8
2. tandy82 60 17.08.17 12:03 Сейчас в теме
Автор напиши пожалуйста как ты объявляешь класс ШтрихКод в DefCls. Я сделал так:
класс ШтрихКод=КлассШтрихКод@MD
{
Строка ЗакодироватьВФайл(ЧтоКодировать, спПараметров);
Строка ПерекодировкаВ_BMP(Файл, Число УдалятьИсходныйФайл = 1);
};


При запуске теста у меня выходит ошибка:
ШтрихКод::ЗарегистрироватьФункцииБиблиотек(Строка DllName=F:\!edit\za\zint\zint.dll) : Неизвестная ошибка
Враппер.Register(DllName, "ZBarcode_Create" , "r=p");
{КлассШтрихКод@MD(20) }

в чем может быть проблема?
3. Amel2010 43 17.08.17 15:44 Сейчас в теме
Я давно не работаю с 7.7 и у меня не осталось этих файлов.
Помнится, я объявлял все классы без указания методов.
И "@MD" - это для классов, включенных в метаданные?

А по сути... Судя из текста модуля, который привел к ошибке, проблема возникает при регистрации враппером функции из dll (zint).
Скорее всего неправильный путь или что-то с правами.
Этот класс тестировался еще на Windows XP, когда не было заморочек с правами, как у современных ОС.
5. tandy82 60 18.08.17 05:04 Сейчас в теме
(3) путь правильный, пробовал указать ошибочный путь - появляется другая ошибка
проблема именно с zint.dll из вашего архива, т.к. пробовал выполнить код по найденному примеру

Враппер = СоздатьОбъект("DynamicWrapperX");
Враппер.Register("user32", "GetWindow", "i=hu", "r=h");

все работает.

windows 2003 server, я работаю под админом.
4. CheBurator 3119 17.08.17 16:49 Сейчас в теме
последние версии Формекса уже содержат в себе этот zint и позволяют формировать ШК с использованием формекса
6. tandy82 60 18.08.17 08:59 Сейчас в теме
(4)
нашел упоминание про процедуру НарисоватьШтрихкод() в formex (http://www.forum.mista.ru/topic.php?id=788786&page=1) от Альфа
но не нашел информацию о ней в последней документации, скаченной с сайта dorex.pro
7. Amel2010 43 18.08.17 11:01 Сейчас в теме
8. tandy82 60 18.08.17 19:33 Сейчас в теме
(7)
я уже разобрался по ссылки с мисты: там была эта ссылка + от Альфа был выложен архив с formex с обновленной документацией в als (может кому понадобится, прикрепил доку к данному сообщению).

Вообще конечно странно что Альф на dorex.pro не выкладывает обновление документации по formex
Прикрепленные файлы:
FormEx.als
9. wint_ 17.12.17 12:10 Сейчас в теме
А формех для 8-ки можно использовать? Будет печатать штрихкоды?
10. CheBurator 3119 11.05.18 13:07 Сейчас в теме
(9) нет, Formex только для 7.7
11. пользователь 01.10.19 09:04
Сообщение было скрыто модератором.
...
Оставьте свое сообщение