Внешняя компонента выполнена по технологии Native API для 1С 8.х, обеспечивает доступ к программным АТС Asterisk (FreePBX, Elastix) через AMI интерфейс. Через него можно управлять многими функциями Asterisk (определение номеров, перевод зво...
Внешняя компонента позволяет работать c TWAIN-совместимым оборудованием (сканерами, камерами) . Полностью совместима со стандартной TWAIN-компонентой из БСП и может применяться как ее замена без изменения вызовов, при этом может работать с 64-разрядной платформой, а так же имеет расширенную функциональность, например, сохранение результата непосредственно в PDF без использования сторонних утилит. Прекрасно работает на сервере, тонком клиенте и веб-клиенте (проверена работа в браузерах Google Chrome, Mozilla Firefox и Microsoft Internet Explorer).
Арт.: 1233136
Продано: 90
В составе БСП есть отличная компонента для работы со сканерами. Но основная ее проблема — это отсутствие поддержки 64-разрядной платформы. Решили исправить это ограничение, написав версию компоненты, т.к. уже есть опыт работы с PDF (Внешняя компонента печати PDF (Native Win 32/64)), заодно решили добавить поддержку этого формата. Работа с PDF основана на проекте PDFium из состава проекта Chromium/Chrome, для работы с TWAIN использован свободный проект twpp https://github.com/xricht17/twpp. https://github.com
Компонента полностью совместима с вызовами оригинальной компоненты из БСП, что позволяет легко и просто использовать ее как замену стандартной компоненты без всяких доработок.
В отличие от оригинальной данная компонента позволяет работать и в режиме сервера (если есть такая потребность), т.к. в нее добавлена функция, которая не использует внешние события, впрочем эту функцию удобно использовать и на клиенте через асинхронные вызовы, чтобы опять же не использовать внешние события.
Для подключения компоненты используются стандартные методы УстановитьВнешнююКомпоненту() на Клиенте в синхронном режиме, ПодключитьВнешнююКомпоненту() на Сервере или на Клиенте в синхронном режиме, и НачатьУстановкуВнешнейКомпоненты() и НачатьПодключениеВнешнейКомпоненты() на Клиенте в асинхронном режиме вызовов.
Перед началом работы на стороне клиента в асинхронном режиме необходимо вызвать установку компоненты:
НачатьУстановкуВнешнейКомпоненты(ОбработчикРезультата, АдресКомпоненты);
Далее необходимо ее подключить и можно вызывать ее методы:
НачатьПодключениеВнешнейКомпоненты(ОбработчикРезультата, АдресКомпоненты, "ScanAddIn");
Примерный код использования компоненты на стороне Клиента в асинхронном режиме может выглядеть так:
Перем мКомпонента;
&НаКлиенте
Процедура Сканировать(Команда)
Если мКомпонента = Неопределено Тогда
УстановитьКомпоненту(
Новый ОписаниеОповещения("СканироватьПродолжение", ЭтотОбъект));
Возврат;
КонецЕсли;
СканироватьПродолжение(Истина, Неопределено);
КонецПроцедуры
&НаКлиенте
Процедура СканироватьПродолжение(КомпонентаПодключена, ДополнительныеПараметры) Экспорт
Если НЕ КомпонентаПодключена Тогда
Возврат;
КонецЕсли;
Если мКомпонента = Неопределено Тогда
мКомпонента = Новый("AddIn.ScanAddIn.AddInNativeExtension");
КонецЕсли;
мКомпонента.НачатьВызовСканировать(Новый ОписаниеОповещения("СканироватьЗавершение", ЭтотОбъект),
ПоказыватьДиалог,
Устройство,
Формат,
Разрешение,
Цветность,
Поворот,
РазмерБумаги,
?(Формат = "TIF", СжатиеTIFF, КачествоJPEG),
ДвустороннееСканирование,
Путь,
Многостраничность);
КонецПроцедуры
&НаКлиенте
Процедура СканироватьЗавершение(РезультатВызова, ПараметрыВызова, ДополнительныеПараметры) Экспорт
Если РезультатВызова <> Неопределено Тогда
МассивФайлов = СтрРазделить(РезультатВызова, "*", Ложь);
Для Каждого ИмяФайла Из МассивФайлов Цикл
ДобавитьОтсканированыйФайл(ЭтотОбъект, ИмяФайла);
КонецЦикла;
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура УстановитьКомпоненту(ОбработчикРезультата) Экспорт
Обработчик = Новый ОписаниеОповещения("УстановитьКомпонентуЗавершение", ЭтотОбъект, ОбработчикРезультата);
НачатьУстановкуВнешнейКомпоненты(Обработчик, АдресКомпоненты);
КонецПроцедуры
&НаКлиенте
Процедура УстановитьКомпонентуЗавершение(ОбработчикРезультата) Экспорт
НачатьПодключениеВнешнейКомпоненты(ОбработчикРезультата, АдресКомпоненты, "ScanAddIn");
КонецПроцедуры
После покупки на почту придет файл архив.
В публикации на вкладке «Бесплатные файлы» представлены следующие дополнения:
Компонента работает как на x86, так и x86_64 платформах, в режиме Сервера, Тонкого клиента и Веб-клиента (проверена работа в браузерах Google Chrome, Mozilla Firefox и Microsoft Internet Explorer), распространяется в виде пакетного файла, который содержит в себе все версии компоненты.
Версия / Version() — вернет строку с описанием версии.
ВыбратьУстройство / SelectDevice() — откроет диалог (средствами драйвера TWAIN) и вернет строку с именем устройства.
НачатьСканирование / BeginScan(ОткрыватьДиалог, Устройство, Формат, Разрешение, Цветность, Поворот, РазмерБумаги, СжатиеКачество, ДвустороннееСканирование, Путь, Многостраничность) — выполнит сканирование и сохранит файл на диск, вернет Истина, если не было ошибок. Генерирует внешние события при получении изображения, завершении сканирования или прерывании пользователем (описаны ниже). Если ОткрыватьДиалог = Истина, то откроет диалог сканирования (поставляемый драйвером сканера) с возможностью настроек сканирования.
Параметры:
ОткрыватьДиалог (Булево) — обязательный, определяет показывать диалог устройства или нет
Устройство (Строка) — обязательный, имя устройства
Формат (Строка) — необязательный, формат сохранения картинки, принимает значения:
PNG (по умолчанию);
JPG;
BMP;
GIF;
TIF;
PDF;
Разрешение (Число) — необязательный, разрешение DPI, например 200
Цветность (Число) — необязательный, принимает значения 0 (черно-белое), 1 (оттенки серого), 2 (цветное)
Поворот (Число) — необязательный, угол поворота в градусах, допустимы значения 0, 90, 180, 270, не все сканеры поддерживают эту настройку
РазмерБумаги (Число) — необязательный, не все сканеры поддерживают эту настройку, принимает значения:
0 (не задано);
11 (А3);
1 (А4);
5 (А5);
6 (B4);
2 (B5);
7 (B6);
14 (C4);
15 (C5);
16 (C6);
3 (USLetter);
4 (USLegal);
10 (USExecutive).
СжатиеКачество (Число) — необязательный, для формата JPG сюда передается качество (от 1 до 100, 100 – максимальное качество и максимальный размер, по умолчанию - 75), для формата TIF – сжатие, значения:
2 – LZW (по умолчанию);
3 – CCITT3;
4 – CCITT4;
5 – RLE;
6 – без сжатия.
ДвустороннееСканирование (Булево) — необязательный, определяет режим сканирования с двух сторон, не все сканеры поддерживают эту настройку
Путь (Строка) — необязательный, определяет каталог, в котором будут сохранятся файлы, если не указан или указана пустая строка, то используется каталог временных файлов ОС
Многостраничность (Булево) — необязательный, для форматов PDF и TIF определяет возможность сохранять отсканированные страницы в один файл
Сканировать / Scan(ОткрыватьДиалог, Устройство, Формат, Разрешение, Цветность, Поворот, РазмерБумаги, СжатиеКачество, ДвустороннееСканирование, Путь, Многостраничность) — выполнит сканирование и сохранит файл на диск, вернет список всех отсканированных файлов, разделенных «*», если не было ошибок, если были ошибки, то вернёт «Неопределено». В отличие от функции «НачатьСканирование» не генерирует внешние события. Параметры полностью соответствуют функции «НачатьСканирование».
ЕстьУстройства / IsDevicePresent() — вернет Истина, если есть хоть одно TWAIN-устройство.
ПолучитьУстройства / EnumDevices() — вернет список доступных устройств в виде текстовых строк, разделенных разделителем (переводом строк).
Тест / Test() — то же, что «НачатьСканирование», но не обращается к TWAIN-драйверу, а сразу генерирует события, используется для тестирования.
ПолучитьНастройку / GetSetting(Устройство, Настройка) — возвращает значение указанной настройки (Число).
Параметры:
Устройство (Строка) — обязательный, имя устройства
Настройка (Строка) — обязательный, имя настройки, возможные значения:
ОбъединитьВМногостраничныйФайл / CombineToMultipageFile(СтрокаВсехПутей, ФайлРезультата, НеИспользуется) — объединяет несколько изображений в один многостраничный файл (TIF или PDF).
Параметры:
СтрокаВсехПутей (Строка) — обязательный, пути ко все файлам изображений, разделенные символом «*»
ФайлРезультата (Строка) — обязательный, путь к результирующему файлу (TIF или PDF)
НеИспользуется (Любой) — необязательный, сохранен для совместимости
РазделитьМногостраничныйФайл / SplitMultipageFile(ИмяВходногоФайла, НеИспользуется, Разрешение, ФорматВыходныхФайлов, ПутьРезультата) — разделяет многостраничный файл (TIF или PDF) на несколько изображений.
Параметры:
ИмяВходногоФайла (Строка) — обязательный, путь к многостраничному файлу (TIF или PDF)
НеИспользуется (Любой) — необязательный, сохранен для совместимости
Разрешение (Число) — необязательный, разрешение выходных изображений (только для PDF), по умолчанию 150
ФорматВыходныхФайлов (Строка) — необязательный, разрешение выходных изображений, принимает те же значения, что и формат для сканирования, по умолчанию PNG
ПутьРезультата (Строка) — необязательный, путь к каталогу, куда будут сохранены выходные изображения, по умолчанию тот же каталог хранения входного файла
Внешние события:
Источник = TWAIN, событие = ImageAcquired — генерируется методом «НачатьСканирование» при получении каждого изображения, в параметре Данные передается полный путь к файлу изображения.
Источник = TWAIN, событие = EndBatch — генерируется методом «НачатьСканирование» при окончании сканирования.
Источник = TWAIN, событие = UserPressedCancel — генерируется методом «НачатьСканирование», когда пользователь нажал Отмена в стандартном диалоге сканирования (поставляемом производителем сканера).
Компонента помещается в макет целиком, в виде архива, распаковывать архив и устанавливать из него ничего не нужно.
В асинхронном режиме вызовы методов должны выполняться через НачатьВызов, например:
Компонента.НачатьВызовСканировать(Новый ОписаниеОповещения("СканироватьЗавершение", ЭтотОбъект),
ПоказыватьДиалог,
Устройство,
Формат,
Разрешение,
Цветность,
Поворот,
РазмерБумаги,
?(Формат = "TIF", СжатиеTIFF, КачествоJPEG),
ДвустороннееСканирование,
Путь,
Многостраничность);
Бесплатный период техподдержки составляет 1 месяц после покупки.
Также после приобретения вы получаете 1 месяц бесплатных обновлений.
По окончании бесплатного периода вы можете приобрести услугу технической поддержки с доступом к обновлениям на платной основе.
Проверить наличие обновлений можно в личном кабинете. Если обновления недоступны - загрузить новую версию можно после покупки обновлений/технической поддержки.
Задать вопрос по программе можно по кнопке "Техподдержка" на странице описания.
При создании тикета необходимо предоставить:
К созданной заявке подключается специалист. Дальнейшее обсуждение проблемы будет проходить в тикете техподдержки. Стандартный срок реакции - 24 часа в рабочие дни с момента обращения.
Проверено на следующих конфигурациях и релизах:
| Статистика: | |
|---|---|
| Просмотры | 34937 |
| Загрузки | 147 |
| Рейтинг | 103 |
| Создание | 12.05.20 18:16 |
| Обновление | 08.06.25 19:11 |
| № Публикации | 1233136 |
| Характеристики: | |
| Теги | |
| Рубрики | Разработка внешних компонент |
| Кому | Разработчик |
| Тип файла | Компонента, плагин (dll, vbs,..) |
| Платформа | 1С:Предприятие 8 |
| Конфигурация |
1C:Бухгалтерия , 1С:Управление нашей фирмой 1.6 , 1С:Бухгалтерия 3.0 |
| Операционная система | Windows |
| Страна | Не имеет значения |
| Отрасль | Не имеет значения |
| Налоги | Не имеет значения |
| Вид учета | Не имеет значения |
| Доступ к файлу | Платные (руб) |
| Код открыт | Нет |
Внешняя компонента выполнена по технологии Native API для 1С 8.х, обеспечивает доступ к программным АТС Asterisk (FreePBX, Elastix) через AMI интерфейс. Через него можно управлять многими функциями Asterisk (определение номеров, перевод зво...
5246 руб.
Эта обработка мгновенно (за 1 секунду) прочитает файл в памяти и выдаст полную картину по продажам, возвратам, чистым итогам и уникальным товарам. Работает БЕЗ записи в базу — 100% безопасность для ваших закрытых периодов первого полугодия ...
6100 руб.
Внешняя компонента, позволяющая посылать команды и получать ответы по GraphQL протоколу из 1С.Может быть использована при интеграции. В 1С работает на стороне "клиента".
5000 руб.
Аддон "Структура Обмена" (ExchangeStruc) - это компонента, которая обеспечивает доступ к разделяемым процессом структурам, аналогичным структурам 1С. Обеспечивает прозрачную передачу данных примитивных типов, в том числе Двоичных данных, в ...
7320 руб.
Универсальный драйвер весового индикатора «UniServer AUTO: WeightIndicator» предназначен для подключения весовых индикаторов автомобильных, вагонных , платформенных весов любых производителей к различным конфигурациям 32-х или 64-х разрядны...
10980 руб.
Внешняя компонента в виде библиотеки (.dll файл), позволяющая посылать команды и получать ответы по протоколу WebSocket из 1С. Компонента работает только на стороне "клиента".
4514 руб.
Внешняя компонента позволяет печатать PDF файлы непосредственно из 1С, не используя при этом сторонних программ. Прекрасно работает на сервере, тонком клиенте и веб-клиенте. Основана на проекте PDFium из состава проекта Chromium/Chrome
5084 руб.
Медиадисплей покупателя может отображать текущую покупку на кассовом месте, показывать видеорекламу, баннеры, во время простоя разворачивать рекламу на весь экран. Экран можно использовать в качестве графического меню-борда в кафе и видеовы...
18300 руб.
Позволяет автоматизировать работу с картинками. С помощью компоненты можно измерять размер изображений, поворачивать их, наносить водяные знаки, конвертировать из одного формата в другой. Будет очень полезна для интернет-магазинов и всех, к...
5094 руб.