Эмуляция COM передачи данных через http сервис

11.02.20

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

Делаем расширение для конвертации 2.0 через http-сервис.

Скачать файл

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

Наименование По подписке [?] Купить один файл
Расширение для эмуляции COM передачи данных через http сервис:
.cfe 152,36Kb
35
35 Скачать (1 SM) Купить за 1 850 руб.

Доброго времени суток!

При общем уходе от технологии COM и переключении на интернет технологии, мы теряем очень удобную передачу данных прямым подключением к базе-приемнику. С другой стороны когда у тебя все отлажено и все сделано на COM-соединениях, вдруг COM начинает подвисать или тебе машину Linux сервером включают в контур обмена. Что же делать нам для временного быстрого решения чтобы не останавливать процесс передачи или передачи здесь и сейчас если в конфигурации нет БСП или нет уверенности что она сразу заработает.

А почему не сделать эмуляцию подключения COM соединения, через простой http сервис? Ведь подумайте сами. Что делает COM соединение? Запускает Универсальную обработку обмена в базе приемнике. Передает туда данные и начинает их принимать. Так что нам мешает передать файл обмена по http-сервису и принять его в базе одной и той же обработкой подключенной к базе через расширение.

 

Если Вы ничего не поняли извиняюсь, объяснять сложные вещи простыми словами это целое искусство.

А теперь как этим пользоваться:

1. Подключаем  расширение (см. ниже) для базы источника и базы приемника.

2. Публикуем базу приемника через web сервер

3. Берем открывает обработку в базе источнике (немного переделанную УниверсальныйОбменДаннымиXML)

4. Загружаем правила обмена из файла - Прочитать правила Обмена (как обычно в УниверсальныйОбменДаннымиXML).

5. И, конечно, используем стандартные поля идентификации для подключение по http к базе приемнику

- Имя сервера 1С = Имя Web-сервера

- Информационная база = Имя публикации базы приемника

- Пользователь и пароль для идентификации в базе приемнике.

5. И кнопка "Выгрузить данные" работает интерактивно на выгрузку данных с одновременной загрузкой в базе приемнике.

 

 

Р.S.

Не забываем где подключаются http-сервисы для расширений:

 

Примечание:

И конечно, применим новомодные функции работы с файлами 8.3.15 (если у Вас версии меньше, придется немного вернуть старый код загрузки файла)

Из описания светлого пути от 1С:

https://wonderland.v8.1c.ru/blog/unifikatsiya-metodov-raboty-s-faylami/?sphrase_id=143429

 

КД 2.0 Конвертация данных COM http-service

См. также

SALE! 15%

Инструментарий разработчика Роли и права Запросы СКД Программист Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

10000 руб.

02.09.2020    159415    872    399    

861

SALE! 15%

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP и т.д.). Поддерживаются управляемые и обычные формы. Может выполнять свертку сразу нескольких баз данных и выполнять их автоматически без непосредственного участия пользователя.

8400 7140 руб.

20.08.2024    7768    55    22    

66

Инструментарий разработчика Программист Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Инструмент для написания и отладки кода в режиме «1С:Предприятие». Представляет собой консоль кода с возможностью пошаговой отладки, просмотра значений переменных любых типов, использования процедур и функций, просмотра стека вызовов, вычисления произвольных выражений на встроенном языке в контексте точки останова, синтаксического контроля и остановки по ошибке. В консоли используется удобный редактор кода с подсветкой, контекстной подсказкой, возможностью вызова конструкторов запроса и форматной строки.

9360 руб.

17.05.2024    23432    68    45    

117

SALE! 15%

Инструменты администратора БД Инструментарий разработчика Роли и права Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

10000 8500 руб.

10.11.2023    10417    36    21    

61

SALE! 15%

Пакетная печать Печатные формы Инструментарий разработчика Программист Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:Конвертация данных 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

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

22200 19980 руб.

06.10.2023    15396    35    7    

70

SALE! 35%

Инструментарий разработчика Инструменты администратора БД Системный администратор Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

4800 3120 руб.

14.01.2013    187975    1138    0    

912

SALE! 15%

Инструментарий разработчика Программист 8.3.14 1С:Конвертация данных Россия Платные (руб)

Расширение для конфигурации “Конвертация данных 3”. Добавляет подсветку синтаксиса, детальную контекстную подсказку, глобальный поиск по коду.

15000 12750 руб.

07.10.2021    17302    6    32    

42

Инструментарий разработчика Программист Платные (руб)

Менеджер конфигураций 1С — альтернативный стартер информационных баз 1С:Предприятие.

1800 руб.

21.02.2023    7694    8    35    

23
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Darklight 33 12.02.20 16:22 Сейчас в теме
ничего не понял - хоть бы пример какой-нибудь показали как это всё использовать
EliasShy; +1 Ответить
3. sikuda 677 13.02.20 11:48 Сейчас в теме
(1) (2) Понял, дописал инструкцию по применению.
4. Vasvas05 27 13.02.20 12:36 Сейчас в теме
(3) можно код в статью выложить?
2. logarifm 1122 12.02.20 19:00 Сейчас в теме
Немного кривовато статья называется от суровой действительности...
5. kolya_tlt 88 13.02.20 13:06 Сейчас в теме
Сам Бог ИТ вам сулить слезть с COM когда приходит замена windows на linux, но всё равно сидите как наркоматы на этой игле
6. starik-2005 3087 13.02.20 13:27 Сейчас в теме
(5)
слезть с COM
Web-сервис по-сути тот же "СОМ", только объект создает веб-сервер из библиотеки сопряжения с 1С. А уж файл кинуть из базы А в базу Б - "как два пальца об асфальт"...
8. kolya_tlt 88 14.02.20 09:13 Сейчас в теме
(6) сделал скрин, пойду поржу в курилке с коллегами
15. starik-2005 3087 14.02.20 13:05 Сейчас в теме
(8)
сделал скрин, пойду поржу в курилке с коллегами
Пойди. От обычных 1С-негов кроме как поржать над тем, что они не понимают, вряд ли что дельное услышу.

Вот я для Ваших коллег тоже скрин сделал. Мало ли, вдоруг решите понять, чем интерфейс взаимодействия веб-сервера с 1С отличается от интерфейса взаимодействия 1С и любой другой библиотеки. Особо отмечу в конце фразы словосочетание "и сходных технологий", к которым, несомненно, относится библиотека взаимодействия IIS и Апача с 1С, отсюда к стеку сходных технологий относится и взаимодействие программ друг с другом посредством веб-сервисов.
Прикрепленные файлы:
dooD1iez; cleaner_it; logarifm; +3 Ответить
17. logarifm 1122 15.02.20 13:38 Сейчас в теме
(15)
Мало ли, вдоруг решите понять, чем интерфейс взаимодействия веб-сервера с 1С отличается от интерфейса взаимодействия 1С и любой друг

Соглашусь - но это же 1С , а не С++ или Java. Тут не так то все просто пробросить.
18. starik-2005 3087 16.02.20 10:12 Сейчас в теме
(17)
Тут не так то все просто пробросить.
В последних релизах платформы вообще встроенный веб-сервер появился, который позволяет 3-м пользователям работать с базой через HTTP-подключение (фактически, это микро-серверная версия) без серверной лицензии, и веб-сервисы (и HTTP) тоже доступны через этот внутренний механизм.

Вообще, опубликовать базу на апаче или IIS уже давно задача 10-ти минут - это если их (веб-серверы) установить придется. Написать сервис - тоже примитивная операция, особенно, если это HTTP-сервис (т.к. с ним не нужно много думать о параметрах - хочешь через УРЛ, хочешь - через параметры). Передать файл - проще простого, если есть ограничение - разбить/собрать через чтение/запись ZIP (но веб-сервер у нас на .машине, поэтому в ограничениях нет смысла, так что это и не нужно).

Лично на мой взгляд - работа с веб-сервисами не сложнее, чем с СОМ. Да, появляется еще веб-сервер, но уже он есть в платформе последней. Сериализовывать 1С умеет очень много во что. ОСь при таком подходе становится уже вторична. Да и между мобильным приложением и базой 1С обменяться кроме как через веб-сервисы не получится, а все больше пользовательского опыта распространяется на мобильные устройства и их рынок растет, в отличие от рынка ПК. Так что если не освоить работу веб-сервисов 1С, то так и без работы можно остаться, а пенсия все дальше )))
avbolshakov; sikuda; +2 Ответить
7. Darklight 33 13.02.20 18:08 Сейчас в теме
Я уже ранее делал такую замену - переводил алгоритм, использующий COM на WEBСервисы (тогда HTML-сервисов ещё не было) - но без проблем это всё равно не получилось
11. sikuda 677 14.02.20 12:18 Сейчас в теме
(7) Все хотят использовать Интернет технологии как аналог COM(ActiveX), но так не проходит по многим причинам.
Здесь же реализована простая схема: Сформированный Файл обмена данными как-бы переносится на сервер приемника и принимается УниверсальнойОбработкойХML и все как-бы из базы источника.
cleaner_it; +1 Ответить
16. Darklight 33 14.02.20 13:59 Сейчас в теме
(11)У меня просто нетиповое взаимодействие было по COM в реальном времени, vмежду двумя базами - данные брались из одной базы и интерактивнло выводились в дополнении к колонкам списка другой базы. Такой механизм было сложнее переделать на WEB-сервисы - но даже когда переделал - столкнулся с неприятной проблемой по COM такое взаимодействие шло заметно быстрее. А при использовании WEB-сервисов интерактивная динамическая прокрутка очень заметно подтормаживала - и работать так было не комфортно! Пришлось очень сильно заморчиваться с кешированием и фоновыми операциями на сервере!
9. CodeNull 14.02.20 10:21 Сейчас в теме
Здравствуйте.

Подсистема обмена данными из БСП имеет поддержку передачи сообщений обмена через HTTP (используя веб-сервисы). Какие приемущества есть у вашего решения?
10. sikuda 677 14.02.20 12:13 Сейчас в теме
(9) Да Вы правы если на обоих концах БСП это было бы предпочтительным решением. Но у меня на картинке костыль, то есть мой вариант быстрый перевод с COM с дальнейшим планированием...
CodeNull; +1 Ответить
12. Cyberhawk 135 14.02.20 12:18 Сейчас в теме
13. sikuda 677 14.02.20 12:23 Сейчас в теме
(12) Эмуляция приема приема файла обмена через COMConnector посредством http сервиса.
14. Cyberhawk 135 14.02.20 12:42 Сейчас в теме
(13)
Эмуляция приема файла обмена через COMConnector
Я и спрашиваю - каким боком упоминание СОМ-коннектора попало в эту фразу?
Чем это отличается от "сделал прием файла обмена посредством http сервиса"? Зачем именно отсылка к СОМ?
19. Perfolenta 206 16.02.20 14:44 Сейчас в теме
Технически COM+OLE+DCOM+ActiveX идеальная технология... очень гибкая, работает быстро, компоненты как кубики соединяются между собой... хочешь, обмен данными, хочешь, внедрение и связывание объектов...
подвела её криворукость программистов... создатели технологии не учли, что программисты будут массово нарушать простейшие правила и выпускать несовместимые версии компонентов... из-за чего возникнет "АД"...
При разработке .Net это уже во всю учитывалось... .Net позволяет очень много вольностей при изменении компонентов, которые в COM приводили к фатальным проблемам... однако, достигнуто это за счет некоторой потери производительности...
Ни какие сетевые сервисы не в состоянии заменить COM с точки зрения производительности... слишком много прокладок между источником и приемником данных... но, время COM прошло, хочешь, не хочешь, а надо использовать что-то другое...
Оставьте свое сообщение