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

11.02.20

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

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

Скачать файл

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

Наименование По подписке [?] Купить один файл
Расширение для эмуляции COM передачи данных через http сервис:
.cfe 152,36Kb
36
36 Скачать (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

См. также

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

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

12000 руб.

02.09.2020    171834    962    403    

924

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

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

8400 руб.

20.08.2024    14338    109    46    

108

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

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

22200 руб.

06.10.2023    17301    43    15    

75

Инструментарий разработчика Программист Платформа 1С v8.3 1C:Бухгалтерия Платные (руб)

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

9360 руб.

17.05.2024    27291    96    48    

138

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

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

15000 руб.

10.11.2023    11908    45    27    

67

SALE! %

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

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

4800 3840 руб.

14.01.2013    191255    1152    0    

920

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

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

20000 руб.

07.10.2021    18095    7    32    

42

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

Разработка Конструктор автоматизированных рабочих мест "Конструктор АРМ" реализована в виде расширения и является универсальным инструментом для создания АРМ любой сложности в пользовательском режиме.

3600 руб.

27.12.2024    1121    2    0    

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

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

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

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

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

Подсистема обмена данными из БСП имеет поддержку передачи сообщений обмена через HTTP (используя веб-сервисы). Какие приемущества есть у вашего решения?
10. sikuda 678 14.02.20 12:13 Сейчас в теме
(9) Да Вы правы если на обоих концах БСП это было бы предпочтительным решением. Но у меня на картинке костыль, то есть мой вариант быстрый перевод с COM с дальнейшим планированием...
CodeNull; +1 Ответить
12. Cyberhawk 135 14.02.20 12:18 Сейчас в теме
13. sikuda 678 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 прошло, хочешь, не хочешь, а надо использовать что-то другое...
Оставьте свое сообщение