Интеграция .NET API NiceLabel в 1С:Предприятие

17.10.24

Интеграция - WEB-интеграция

Интеграция .NET API NiceLabel в 1С:Предприятие (любую другую платформу, взаимодействующую через COM). Для интеграции печати этикеток при помощи движка NiceLabel была написана компонента на C#, реализующая COM-класс с публичными методами (интерфейсами).

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Интеграция .NET API NiceLabel в 1С:Преприятие:
.rar 76,32Kb
1 3 050 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Интеграция .NET API NiceLabel в 1С:Предприятие (любую другую платформу, взаимодействующую через COM).

Для интеграции печати этикеток при помощи движка NiceLabel была написана компонента на C#, реализующая COM-класс с публичными методами (интерфейсами):

  1. void OpenLabel(string labelPath) – метод, при помощи которого отрывается шаблон этикетки. На вход принимает полный путь до шаблона, ничего не возвращает;
  2. void PrintLabel(string printerName, int copyCount= 1) – метод, реализующий печать этикетки из открытого шаблона. На вход принимает имя принтера и количество копий, ничего не возвращает;
  3. void Close() – метод, завершающий работу движка печати. Без параметров;
  4. string[] GetPrinters() – метод, возвращающий массив имен, доступных принтеров. Без параметров;
  5. string[] GetLabelParam() – метод, возвращающий массив параметров открытой этикетки. Без параметров;
  6. string GetLabelPreview( int width=800, int height=600, int side = 0) – метод, возвращающий изображение этикетки для предварительного просмотра. По умолчанию возвращает двухстороннее изображение размера 800*600. Принимает на вход длину и ширину в пикселях, также необходимую сторону этикетки(0 – обе стороны, 1 – лицевая сторона, 2 – оборотная сторона). Изображение возвращается в формате строки Base64.;
  7. void SetLabelParam(string _name, string _value) – метод, задающий значения параметров этикетки по одному. На вход принимает имя параметра и значение параметра. Ничего не возвращает;
  8. void SetLabelParams(string _values)  – метод, задающий значения параметров этикетки массово. На вход принимает строку вида “Параметр=Значение” + Символы.ПС(перенос строки) + “Параметр=Значение”. Ничего не возвращает;

 

Пример работы с компонентой:

&НаКлиенте

перем Компонента экспорт; //объявляем переменную компоненты, для работы во всех методах формы

&НаКлиенте

Процедура ПриОткрытии(Отказ)

        Компонента = Новый COMОбъект("OneSExternalComponent.LabelPrinter"); //Инициализируем класс движка печати, теперь можно работать с этикетками

КонецПроцедуры



&НаКлиенте

Процедура РаботаСКомпонентой()

Компонента.OpenLabel(“C:\Labels\label.nlbl”); //открываем шаблон этикетки

РеквизитыШаблона = Компонента.GetLabelParam(); //Получаем параметры(реквизиты) этикетки в формате COMSafeArray

РеквизитыМассив = РеквизитыШаблонаCOM.Выгрузить(); //Преобразуем COMSafeArray в массив, можно работать с массивом

СписокПринтеров = компонента.GetPrinters().Выгрузить(); //Получаем список имен доступных принтеров, сразу выгружаем в массив

Принтер = СписокПринтеров[0]; //присваиваем переменной имя принтера с индексом 0

компонента.SetLabelParam("art", “а316бм”); //присваиваем параметру шаблона art, значение а616бм

компонента.SetLabelParams(“company=ООО РогаИКопыта” + Симполы.ПС + “inn=4300000000000”); //присваиваем параметру шаблона company, значение ‘ООО РогаИКопыта’ и параметру inn значение ‘4300000000000’

Превью = компонента.GetLabelPreview(500,320,1);//получаем превью открытой этикетки, размером 500*320 с лицевой стороны  

ДанныеКартинки = Base64Значение(Превью); //Преобразуем строку Base64 в двоичные данные  

ПредварительныйПросмотр = ВернутьХранилищеДанных(ДанныеКартинки); //Присваиваем адрес двоичным данным этикетки, где ПредварительныйПросмотр – поле картинки, с источником данных – реквизит формы ПредварительныйПросмотр типа Строка, хранящий путь к двоичным данным изображения

Компонента.PrintLabel(Принтер,5); //Печатаем этикетку на выбранном принтере в количестве 5 копий

КонецПроцедуры



&НаСервере

функция ВернутьХранилищеДанных(ДвоичныеДанные)

        МойУникальныйИдентификатор = Новый УникальныйИдентификатор;

        Возврат ПоместитьВоВременноеХранилище(ДвоичныеДанные,МойУникальныйИдентификатор);

КонецФункции



&НаКлиенте

Процедура ПриЗакрытии(ЗавершениеРаботы)

        Компонента.Close(); //Завершаем работу с движком печати

КонецПроцедуры

 

Настройка компоненты для работы:

  1. Установить компоненты ASP .NET(Панел управления – Программы и компоненты – Включение или отключение компонентов Windows)
  2. Необходимо распаковать содержимое архива и зарегистрировать OneSExternalComponent.dll с помощью Regasm. Пример:

cd “C:\Windows\Microsoft.NET\Framework64\v4.0.30319”

regasm "C:\OneSExternalComponent.dll" /codebase /tlb

  1. Установить NiceLabel 2019
  2. Возможно, потребуется настройка безопасности COM в Windows.
  3. Пример реализации в 1С в архиве. 

 

Компонента протестирована на Windows 10 x64.

Проверено на следующих конфигурациях и релизах:

  • 1С:ERP Управление предприятием 2, релизы 2.5.18.59
  • 1С:Комплексная автоматизация 2, релизы 2.5.17.134

Вступайте в нашу телеграмм-группу Инфостарт

NiceLabel этикетки печать этикеток из 1с

См. также

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь 1С v8.3 1C:Бухгалтерия 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM / LOGICSTARS. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM / LOGICSTAR разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    22108    32    24    

26

SALE! 15%

WEB-интеграция Программист Бизнес-аналитик 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Оптовая торговля, дистрибуция, логистика ИТ-компания Платные (руб)

Модуль "Экспортер" — это расширение для 1С, предназначенное для автоматизации процессов выгрузки данных. Оно позволяет эффективно извлекать, преобразовывать и передавать данные из систем 1С в интеграционную платформу Spot2D. Подсистема упрощает настройку, снижает количество ручных операций и обеспечивает удобный контроль данных.

17280 14688 руб.

20.12.2024    4301    22    4    

23

WEB-интеграция Программист Руководитель проекта 1С v8.3 1C:Бухгалтерия 1С:Франчайзи, автоматизация бизнеса Платные (руб)

Расширение значительно упрощает написание API на 1С. Веб программисты получают простой и понятный доступ к 1С. Описание API создаётся автоматически и представляется в виде удобном как для человека, так и для программной обработки. Основные преимущества: 1. Документация API создаётся автоматически. Удобна для программной обработки. 2. Изменить API столь же просто как настроить отчёт. Можно опубликовать существующий вариант отчёта. 3. Отчёты в API поддерживают параметры (Период, ДатаНачала и др.) 4. При создании простых методов не требуется изменять конфигурацию. 5. Поддерживается работа с планами обмена.<br/> 6. Возможно настроить отправку из 1С данных корреспондирующей системе, для случаев когда 1С сама "знает" какие данные нужно отправить. 7. После записи в 1С Ле Мурр может возвращать соответствие полученных идентификаторов созданным в 1С объектам данных.

36000 руб.

27.09.2024    9816    7    5    

11

Оптовая торговля WEB-интеграция Бюджетный учет Обмен с ГосИС Бухгалтер Пользователь 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Государственные, бюджетные структуры Россия Бухгалтерский учет Управленческий учет Платные (руб)

Обмен данными с "Порталом поставщиков" zakupki.mos.ru Москвы и Московской области с целью создания оферт для закупок государственными учреждениями. Модуль устраняет рутину, минимизирует ошибки и помогает выигрывать больше закупок. Работает строго по требованиям 44-ФЗ.

14400 руб.

13.12.2016    41651    54    39    

37

WEB-интеграция Программист 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бытовые услуги, сервис Платные (руб)

Внешняя обработка разработана для автоматизации передачи данных между сервисом Vetmanager с 1С: Бухгалтерия 3.0. Решение позволяет загружать документы и справочники из Ветменеджер в 1С:Бухгалтерию, сокращая время на ручной ввод данных и минимизируя ошибки.

12000 руб.

02.02.2021    20888    60    52    

38
Для отправки сообщения требуется регистрация/авторизация