Как должна выглядеть правильная интеграция. Использование Mule ESB и RabbitMQ с 1С

Публикация № 1116609

Разработка - Системная интеграция - Интеграция

Чем масштабнее проект, тем сложнее настроить все связи. Каждый решает эти проблемы по-своему: кто-то пользуется конвертацией, кто-то пользуется xml и json. Руководитель управления ИТ компании WiseAdvice Олег Филиппов рассказал, как можно применить такие инструменты, как Mule ESB и RabbitMQ.

Вместо предисловия

Для начала скажу, что правильной или неправильной интеграции, наверное, не бывает. Бывает только под конкретную задачу. Если задача сложная, то мой подход подойдет, если вам надо загрузить эксельник в табличный документ, то это уже другая интеграция. Я постараюсь рассказать о том, как избежать большинства проблем, которые у вас возникают на сложных, больших интеграционных проектах, которые идут постоянно, где регулярный обмен и может быть много ошибок.

 

 

 

 

Типы интеграции

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

 

 

 

Каждый разработчик, с тех пор как начинает программировать и до получения Senior Developer, проходит определенные стадии. Все мы, наверное, начинали с xls и csv. 

Это классика жанра. Приходит бухгалтер, просит загрузить ей что-нибудь в табличный документ. Хорошо, пожалуйста, вот Excel, я загрузил, все хорошо. Следующий Excel уже другой, все сломалось, и ничего не работает. Это может быть не xls, а csv.

Структуры нет. Конечно, объединение ячеек в Excel все знают, все прикольно, все замечательно. Но табличка может быть только одна либо только одна вкладка. Номер заказа, номенклатура не структурированы.

Что касается связей. Все понимают, что обычно мы грузим реляционную структуру. А реляционная структура подразумевает, что есть не одна таблица, а несколько, и между ними есть связи. В Excel и csv это никак не отразить.

У Excel и csv  могут быть разные форматы. У вас может быть xls, xlsx; csv вы можете разделить запятыми, точкой с запятой, а можете поставить табуляцию. Это замечательно, но работает каждый раз по-разному.

 

 

 

В общем, этот этап все проходят достаточно быстро, понимают, что много минусов.

 Что дальше делает разработчик? Он открывает желтую книжечку. В желтой книжке написано «ком-коннектор». Здравствуй, ком-коннектор!

Это замечательный инструмент интеграции. Но замечательный он, скорее, для разработчика. Неудобен он только одним – он под Windows. Если еще 5 лет назад мы смеялись над 1С на Linux, то сейчас видим, что серверный мир упорно и плотно движется в Linux. И я думаю, что вскоре серверов на windows  будет мало. А если они и останутся, то только терминальные. MacOS завоевывает десктопы. Все любят ноутбуки, все приучились к айфонам, и маковский интерфейс подкупает. Поэтому мы стали думать и о MacOS, и о Linux, и виндовые интеграции уже применимы далеко не на всех проектах.

С ком-коннектор полная свобода творчества. Что хотите, то и делайте. Хотите в одной базе что-нибудь сделайте, хотите в другой базе. Можете во второй базе что-то удалить, можете добавить. Залезть в другой регистр, посмотреть. Замечательно для разработчика. Разработчики это безумно любят. Не любят это обычно менеджеры, а еще больше это не любят «безопасники». Они просто ненавидят ком-коннектор. Те, кто не знает, что это такое, говорят, просто код какой-то написан, ладно. А те, кто знает, понимает, что это пароль, пароль в открытом виде, конечно же, он написан в коде, в коде его посмотреть никто не может. Поэтому у кого-то он сохранен в отдельном справочнике, и даже прикрыт звездочками. Вот если пароль прикрыт звездочками, это уже next level! На самом деле, конечно, все понимают, что 1С не поддерживает передачу хэша при передаче пароля, и мы его все равно передаем в открытом виде.

 

 

 

Почти человеческая интеграция – это когда разработчик прочитал уже не желтую книжечку, а что-нибудь в интернете. А там написано, что xml и json – это хорошо. И зачем через ком коннектиться, если можно выгрузить в xml и загрузить из xml? Уже есть структура, вроде, можно передать массивы, можно что-то структурировать, есть штатные функции, все круто.

Но xml и json – это всего лишь файлики. Когда вы выгрузили файлик и у вас постоянная интеграция, вы понимаете, что файлик нужно версионировать, нужно убедиться, что он загружен, его нужно как-то передать, убедиться, что он передан, убедиться, что вторая система его загрузила, что загрузила его успешно. И это не очень хорошо.

 

 

 

Следующий этап – конвертация. 

Говорю о конвертации 2.0, 2.1, потому что 3.0 – это тот еще специфичный зверь, и не совсем конвертация. Не знаю, почему эти два решения назвали одинаковым словом. Вторая конвертация – это уже человеческая интеграция, это уже как бы Homo Sapiens, это то, чем можно пользоваться на проектах. У нас есть замечательный BSP, проверенный временем и делом, есть обмены по расписанию, есть настройки, есть правила регистрации – все, что нужно. И  интеграцию на конвертации организовать уже можно.

Но мы ограничены обменом по расписанию. Первый вопрос, который возникает, а сколько – один раз в минуту или в час, или может быть один раз в 10 минут, или может быть  один раз в секунду. Если один раз в секунду, то система уже перегружена. Если один раз в 10 минут, нам мало. А когда у нас данные, у нас возникают коллизии: мы здесь поменяли, в другом месте, и опять что-то не так.

Опять же слишком много свободы творчества. Да, конвертацию открываем, все круто. Там правило конвертации, правило выгрузки, реквизиты поставлены, все круто. Но до того, как мы откроем последнюю вкладку «алгоритмы», где огромные куски кода, очень здоровые. Как-то оно все выгружается, может выгружаться вообще не так, как вы думали.

И еще – каждый, кто хоть раз конвертацию отлаживал, знает, как сложно найти ошибку в этом гигабайтном xml файлике, в котором очень много всего, и где-то в серединке скрылась ошибка, что-то случилось. А регистрация уже потерта, потому что бизнесу надо работать. В общем, то ещё развлечение!

 

 

 

Разработчик  идет дальше. Он прочитал больше книжек, и вот так выглядит разработчик, который освоил интеграцию через web/http services. 

Вот так он себя чувствует!

 

 

 

Но недолго. Первое падение возникает достаточно быстро – когда вы теряете данные. 1С-ка упала, вы пожимаете плечами, мол, это бывает.  

Потом возникают варианты, когда интегрируемся с интернетовскими сервисами, длительное подключение, особенно если УТ 10.1, в которой при подключении даже по web-коннектору целая жизнь происходит,

вселенные создаются. Есть те же самые проблемы с логированием и отладкой: что-то там по http гуляет, вы не видите, оно иногда загрузилось, иногда не загрузилось. В общем, радость длится недолго.

 

 

 

Что нужно сделать, чтобы стать нормальным разработчиком, который решил все эти проблемы? Дальше рассмотрим.

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

Типичная, наверно, картинка.

 

 

 

Эта картинка из интернета, ничего в ней нового. Один публикует сообщение, шину, и двое, допустим, подписались на сообщение. То есть где-то в одной системе изменили контрагента, сразу при изменении в фоне это все упаковалось в некий пакет в xml, в json, попало в шину. После того, как клиент записал контрагента, отправил в шину, дальше ему все равно, дальше хоть потоп, его не интересует, загрузили они, не загрузили. У вас один клиент может работать мегабыстро. Второй может раз в день включаться, а третий – может находиться на том краю света. Этим всем занимается уже интеграционная шина. Тому, кто публикует сообщение, это все абсолютно неинтересно. Более того, он даже может не знать, в какие системы его сообщение пошло. У  нас появилась новая система, допустим, там нужен справочник контрагентов. Ok, подписались. И теперь сюда приходят контрагенты. Тот, кто писал изначальную интеграцию, даже может не знать, со сколькими системами он интегрировался.

Это круто. Когда у вас есть интеграция, о которой вы даже не знаете. То есть вы просто сделали разово, а все остальное работает. Для этого и делаются интеграционные шины.

И еще я скажу, что интеграционные шины, как проект, очень часто идут параллельно с проектами по MDM. Когда у вас организация выросла до такой степени, что вам нужен Master Data Managemen, у вас есть единая система, которая управляет десятком систем, с которыми что-то происходит, без интеграционной шины обойтись достаточно сложно. Тогда она сама собой внедряется.

 

Архитектура и инструментарий

Теперь я перехожу к самым интересным слайдам. Про архитектуру я расскажу на практическом примере, я не IT-евангелист, который вам что-то продает, что очень модное и крутое. Я расскажу, как я делал интеграцию, какие были проблемы, как я их решал, как я, к своему стыду, их решал 2-3-4 раза до того, как понял, что их можно решать по-нормальному.

Реальный случай. Пришли менеджеры и говорят, что им надо интегрироваться с каким-то внешним сервисом. Он дисконтные карточки выпускает, контрагентов заводит, еще что-то делает. То есть какой-то сервис в интернете что-то пишет к нам в базу 1С. Таких сервисов в интернете становится все больше и больше, поэтому с этими задачами мы будем сталкиваться чаще и чаще.

Эта штука в интернете умеет делать вебхуки. А вебхуки надо обрабатывать на стороне 1С. Вроде, все круто, мы это умеем делать: делаем http services, делаем какой-то регистр с настройками, в котором говорим, что это для этой организации, надо писать в такие-то регистры при таких-то условиях.

 

 

 

Все сделали, все хорошо. Денечек живем, может быть, два. Через три дня к нам приходит менеджер примерно с таким лицом. Что-то мы не загрузили.

 

 

Мы оправдываемся,  мол, пилотный проект, все поправим, исправим, все сделаем, все будет хорошо. Менеджера отпаиваем кофе или чем-то покрепче. Она уходит. А в базе появляется регистр примерно следующего содержания «Очередь Сообщений Обмена». В скольких базах я этот регистр видел! В том или ином виде названный, но он всегда присутствует. И он даже называется всегда «Очередь». Но по слову «очередь» ни до кого сразу, в том числе и до меня, к моему стыду, не доходит, что надо посмотреть куда-то еще.

 

 

 

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

Мы живем недельку, две, три. И живем спокойно. Через пару недель приходит опять менеджер. Говорит, что мы не то что-то загрузили. Им прислали 300 рублей, в мы загрузили 200, клиент недоволен, скандалит.

 

 

 

Менеджера, конечно, мы успокаиваем, даем ей сто рублей. И как бы все хорошо.  Менеджер уходит.

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

Так мы живем примерно месяц, два, три – в зависимости от интенсивности. Через три месяца к нам приходит уже не менеджер, к нам приходит наш несчастный сотрудник техподдержки. Вот с таким лицом.

 

 

 

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

А что делают 1С-ники? Решение на самом деле типовое: появляется еще один регистр «История Сообщений Обмена Архив». Классика жанра. То есть все, чему больше месяца, мы убираем отдельно в табличку. Вроде, радуемся, вроде, живем.

 

 

 

Я, может быть, смеюсь, что это такое решение прикольное, глупое. На самом деле эта штука работает, она работает не на одном проекте, не на двух, не на десятке. Оно работает даже на крупных проектах. И в принципе это работать может, и работать будет нормально. С этим можно жить, особо проблем не испытывать. Но зачем?

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

Это уже наш кейс. Настройки и сервис обмена остается, но его внешняя часть заменится на Mule ESB. Регистр очереди заменяется на RabbitMQ. «Историю Сообщений Обмена», как и «Историю Сообщений Обмена Архив» сам Бог велел положить в Elastic.

 

 

 

Вот такой инструментарий получился в нашем кейсе. У вас он может быть другим. Я объясню, почему, мы выбрали именно так, хотя это не принципиально. А дальше поговорим, почему это в 1С не очень хорошо делать.

Примерно так выглядит типичная интеграция в Mule ESB.

 

 

 

В HTTP сервис приходит сообщение, дальше у вас фильтр by Payload. Кстати, очень интересная штука. Если у вас сервис опубликован вовне, вас кто-то наверняка попытается просканировать, закидать вас запросами – в интернет-сервисах роботы иногда любят это делать. 1С из-за этого иногда ложится. Все люди делятся на две категории: у кого сервисы 1С не опубликованы вовне, и у кого они все еще опубликованы вовне. Так вот если у вас сервис 1С все еще опубликован вовне, то про этот фильтр by Payload надо знать. Если к вам пришел запрос, который не соответствует вашему api, а от робота он, скорее всего, не соответствует, то он отобьется. Уже на уровне шины происходит все быстро и замечательно.

Что здесь делает Mule ESB? 

Mule ESB мы используем, скорее, как Middleware, как некую прослойку, не используя мощный функционал шины, потому что у нас не столько систем внутри – не десятки, не сотни. Функционал шины нам не нужен настолько. А нужен функционал  Middleware, именно прослойки между интернетом, богатыми сервисами и 1С.

 

 

 

На картинке: слева – это у нас cloud, а справа – incorporate.  Incorporate может быть даже не 1С, но cloud сервисы построены на других технологиях, они ориентированы на другой профиль нагрузки. Cloud сервис, если что-то произошло, вам легко пришлет вебхук, потому что его не интересует, что у вас происходит, он вам покажет лог, что вебхук был прислан и все. А для вас этот вебхук значит «клиент», «лид». Может быть, он написал вам заявку на миллион, например, «хочу внедрить ERP на сайте». А вы это сообщение потеряли. Там же могут быть мобильные приложения, которые у вас существуют. Там же могут быть вебсайты, которые интегрируются с 1С, социальные сети, мессенджеры… Короче, так или иначе вы с какой-то внешней штукой будете интегрироваться. Потому что, к сожалению или к счастью, мир идет в облака, и облачных сервисов становится все больше и больше. И внутри корпораций их надо использовать.

Почему Mule ESB? Был некий market research. Когда мы проанализировали, поняли, что, наверное, он наиболее развитый среди open source. Есть Enterprise версия, которая при необходимости кластеризуется, имеет красивый веб интерфейс. Есть open source версия, которая также замечательно работает без особых проблем. В marketplace для Mule ESB найдется интеграция с кучей разных систем, которые не российские, но, тем не менее, это может упростить в десятки раз работу.

Далее. Сообщение прошло, на картинке это два служебных кубика. Дальше оно разделилась на два, заметьте. Часть пошла в Elastic, а часть – в RabbitMQ. То есть, во-первых, сообщение не ждет логи, они происходят параллельно, и ожидания не происходит от того, что мы включили логирование. В отличие от того, что мы имеем в 1С.

 «Кролик». Зачем мы взяли «кролика»? 

 

 

В принципе можно взять какой-то regis, туда закидывать информацию. Для этого любое хранилище подойдет. Но тут вопрос «а зачем»? Если есть испытанная штука, есть богатый веб интерфейс, можно динамически добавлять очереди, есть какой-то мониторинг, кластеризуется, стабильная, быстрая и все круто?

 

 

 

AMQP, конечно, да…Наверное, «кролик» внедряется во имя AMQP. Когда у вас крупный проект, если где-то возникло событие, оно тут же, мгновенно пошло и возникло в другой системе. Это очень быстро, очень «скоростно». И во имя этого AMQP протокола в принципе «кролик» и делался. Нам он не сильно нужен. А городить что-то на сервере 1С своими AMQP тоже не хочется. Поэтому мы используем его вот так. «Кролик» из-за этого, конечно, расстроен, он огорчен, ему грустно. Но ему некуда деваться, работает он стабильно и хорошо.

 

 

 

Elastic – это вторая часть сообщения. На начальном этапе он дает отличный эффект для техподдержки. Если кто-то когда-нибудь в 1С пытался найти руками сообщение (упорно и усиленно), то через Elastic он это сделает быстро.

 

 

 

 

Почему не 1С?

Это моё лицо, когда я узнаю, что кто-то публикует 1С-сервисы вовне. 

 

Нельзя  публиковать сервисы 1С вовне!  Да, у нас платформа хорошая, быстрая, гибкая, развивается. Внутри замечательно используется, но вовне – нет. Потому что 1С может падать. Это факт. К сожалению, инфраструктура так построена, что могут быть простои, могут быть падения, а мы не можем терять сообщения от внешних интернет-сервисов.

У 1С есть такая замечательная штука, как сеансовые данные, которые хранятся в файлах, на диске создаются. Подключение одного сеанса к 1С – это целая жизнь, это создание, не знаю, вселенной практически. Веб-сервис – это просто поток: пришел - ушел в другое место. Все происходит за сотые доли секунды.  В 1С это может занимать 10 - 15 - 20 секунд. Соединения устанавливаются долго, лицензии расходуются, лицензии могут получаться тоже долго. И конечно, безопасность. Естественно у каждого в базе 1С есть какой-нибудь пользователь, который с полными правами и без пароля. Либо у него пароль «123». Еще более продвинутый пароль – «123456». Нельзя это публиковать вовне. Все-таки incorporate.

 

 

 

 

Отладка  

Если вы работаете с http-сервисами, вам понадобятся определенные инструменты.  

 

 

 

Эти три значка просто надо знать. Хотя бы два из них. Первый – точно надо знать. Это Fiddler. Очень крутой мощный http сниффер, который позволяет перехватывать ваш трафик везде, где угодно, расшифровывать https, фильтровать по приложению, отлаживать api – все, что угодно. Если вы через http интегрируйтесь, и все еще его не используете, просто возьмите, скачайте и используйте. Если у вас бухгалтеры хотят использовать http без https, когда-нибудь покажите им, как это все работает, и они больше не будут.

 

 

 

SoapUI – очень удобная штука именно для отладки Soap сообщений. Читает замечательно SDL, позволяет их отлаживать.  Самое главное, что позволяет сделать, – позволяет сделать сервер Soap. Для того чтобы отладить Soap сервер, вам надо написать и клиент, и сервер, не надо этого делать. Можно просто в SoapUI сделать заглушку в SDL и все: пожалуйста, берите, отлаживайте, смотрите, что он пишет.

 

 

 

Postman. Он  круче Fiddler в плане отладки по api. Хорошо работает с заголовками, удобно, отлажено, ничего удобнее, наверное, нет для отладки всего этого дела.

 

 

 

Enterprise Data

Напоследок скажу, что в 1С не все так плохо. В 1С все хорошо, замечательно, мы движемся в правильную сторону. У нас есть Enterprise  Data, которая нас приближает к той самой событийной интеграции.

 

 

 

Incorporate – все это можно использовать. В Incorporate можно использовать интеграционную шину, и ее можно использовать не только для внешней интеграции, как мы Mule ESB. Если у вас типовые прикладные решения, в которых Enterprise Data уже встроена, если вы их регулярно обновляете, у вас одна и та же версия Enterprise Data, то, пожалуйста, эта схема упрощает вашу жизнь при интеграции в несколько десятков раз. Потому что этот подход более правильный. Конечно, там есть много проблем, есть конвертация 3.0, которую пилят-пилят странным образом, есть Enterprise Data, у которого формат меняется каждый месяц. Но рано или поздно мы победим, наверное. И в мире 1С тоже наступит счастье.

 

****************

Данная статья написана по итогам доклада, прочитанного на конференции INFOSTART EVENT 2018 EDUCATION. Больше статей можно прочитать здесь.

В 2020 году приглашаем всех принять участие в 7 региональных митапах, а также юбилейной INFOSTART EVENT 2020 в Москве.

Выбрать мероприятие.

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. i_lo 206 03.09.19 11:54 Сейчас в теме
Добрый день!
Для ручной отладки http-запросов ещё https://insomnia.rest.
2. denis0 04.09.19 13:09 Сейчас в теме
Спасибо за статью, очень интересно!

Но непонятно, как вы получаете сообщения из RabbitMQ в 1C?
У вас консьюмер какой-то висит на C# или вы по расписанию http-запросы делаете?
3. Ish_2 1052 05.09.19 10:20 Сейчас в теме
Привет, Олег. Почитал, вроде хорошо написано.
Ты на Event 2019 будешь докладчиком ?
Оставьте свое сообщение

См. также

Обмен данными. Консистентность vs Многопоточность Промо

Интеграция v8 1cv8.cf Бесплатно (free)

Рассмотрим теоретические основы обмена данными. Какие бывают обмены, какие гарантии при этом даются, зачем идти на компромиссы и что при этом может пойти не так. Есть ли идеальная схема?

03.09.2019    12508    m-rv    1    

Структура обработки загрузки номенклатуры поставщика с примерами и комментариями (часть 2)

Интеграция Практика программирования v8 1cv8.cf Бесплатно (free)

В статье опишу вариант обработки для загрузки номенклатуры поставщика, блок загрузки номенклатуры и доп. реквизитов.

17.10.2020    412    malikov_pro    2    

Интеграция 1С и B2B-проектов

Интеграция Бесплатно (free)

Часто у бизнеса возникает потребность предоставить крупным клиентам возможность самостоятельно оформлять заказы на B2B-портале, интегрированном с 1С. Как организовать такую интеграцию на конференции Infostart Event 2019 Inception рассказал исполнительный директор компании «Гильдия консультантов» Николай Елатонцев.

09.10.2020    1112    nelatontsev@webgk.ru    0    

Управление соляриями из 1С через Arduino

Интеграция v8 1cv8.cf Здравоохранение, медицина, стоматология УУ Бесплатно (free)

Мой опыт автоматизации сети соляриев с интеграцией 1С и оборудования соляриев с помощью платформы Arduino.

01.10.2020    1665    impextr    28    

И тогда наверняка нас захватят облака Промо

Интеграция Бесплатно (free)

Внимание! Данный текст содержит достаточно мало технических подробностей и готовых рецептов. Главным образом некоторые размышления на предмет будущего технологий и профессий. Некое лёгкое чтение на досуге.

28.06.2019    9967    comol    36    

Взаимодействие 1С со сторонними продуктами посредством REST и Golang (middleware). Часть 4 - NoSQL (MongoDB, Redis)

Интеграция Бесплатно (free)

Если в ИТ-инфраструктуре есть NoSQL решения, с которыми требуется взаимодействовать из 1С, можем использовать прослойку на Golang в стиле RESTful

21.09.2020    3849    dmitry-irk38    11    

Взаимодействие 1С со сторонними продуктами посредством REST и Golang (middleware). Часть 3 - ElasticSearch

Интеграция Журнал регистрации Бесплатно (free)

Как в статье №1 этого цикла выгрузим через прослойку журнал регистрации (xml формат) в ElasticSearch. Статья будет иметь практическую направленность в минималистичном стиле

14.09.2020    884    dmitry-irk38    4    

Взаимодействие 1С со сторонними продуктами посредством REST и Golang (middleware). Часть 2 - Docker

Интеграция Бесплатно (free)

В предыдущей статье мы создали микросервис, сейчас мы поместим его в Docker контейнер. Статья будет иметь практическую направленность в минималистичном стиле

07.09.2020    1292    dmitry-irk38    0    

Автоматизация магазина на Oracle Apex. Обзор аналога 1С Промо

Интеграция Розничная торговля Розничная торговля Бесплатно (free)

Как известно 1С - лидер в автоматизации учета в постсоветском пространстве. Есть ли достойные альтернативы (не дорогие, с возможностью конфигурирования, простые) ? Однозначно да ! Предлагаю Вашему вниманию обзор "буржуйской" технологии Oracle Apex

17.05.2013    59644    avhrst    295    

Интеграция с Трелло. Готовый код

Обмен данными 1С Интеграция Agile (XP, SCRUM, Канбан) v8 Бесплатно (free)

Код основных действий, интеграция с API Трелло.

19.08.2020    2469    Yashazz    14    

Интеграции с сервером SQL. Быстро и просто

Интеграция Внешние источники данных v8 1cv8.cf Бесплатно (free)

Решаем вопросы экспорта/импорта данных в базы отличного от 1С происхождения.

06.07.2020    1990    Infector    4    

Мониторинг факта выполнения обмена с помощью сервиса healthchecks.io

Интеграция Системное администрирование v8 1cv8.cf Россия Бесплатно (free)

В статье опишу вариант простого мониторинга обработчиков, запускаемых по расписанию.

30.06.2020    1739    malikov_pro    5    

Бесплатный GPS-трекинг Промо

Интеграция Управление персоналом (HRM) Учет рабочего времени Управление персоналом (HRM) Учет рабочего времени Бесплатно (free)

Современные технологии и возможности становятся все более доступными для широких масс и повсеместно используемыми, как для частного лица, так и для мелкого и среднего бизнеса. Так и GPS-трекинг (отслеживание в реальном времени на карте местоположения водителей, курьеров, монтажных бригад, торговых представителей, детей, собак и т.п., а также просмотр статистики по их передвижениям и остановкам), становится сейчас все более востребованным сервисом, как для домашних условий, так и для предприятия. И, если крупные фирмы (например, транспортные предприятия) подписав договора с коммерческими сервисами, оплачивая своевременно счета за устройства и абонплату, эту проблему для себя решили, то это скорее подходит для крупных корпоративных клиентов. Что делать нам, простым смертным или небольшой фирме с несколькими водителями, например? Какие есть простые, надежные и недорогие решения?

05.01.2013    45880    venger    19    

Частые проблемы с бесшовной интеграцией документооборота

Документооборот и делопроизводство Интеграция Бесплатно (free)

Если верить популярности запросов, то самая часто встречающаяся проблема, с которой сталкиваются специалисты при таком обмене, — это возвращение изменений в исходный документ.

30.06.2020    1847    Koder_Line    2    

Как мы запилили в АЙТАТ.РФ обработку-бота, чтобы ускорить отгрузку в 2 раза или Реальный опыт внедрения нового механизма "Трансляция событий" от 1С-Коннект

Интеграция v8 Бесплатно (free)

Статья о внедрении и использовании в решениях задач нового механизма от 1С-Коннект. Будет полезно тем кто использует интеграцию 1С-Коннект с 1С Предприятие. На текущий момент механизм "Трансляция событий" находится в бета-тестировании и доступен только закрытому списку приглашенных участников. Выражаем благодарность разработчикам механизма "Трансляция событий".

24.06.2020    1586    direwest    4    

Маркировка лекарственных препаратов. Часть первая "Быстрая интеграция"

Интеграция v8 1cv8.cf Фармацевтика, аптеки Россия УУ Бесплатно (free)

Данный цикл будет посвящен маркировке лекарственных препаратов (далее ЛП), нюансам работы с "1С: Библиотека интеграции с МДЛП", доступной для скачивания на сайте ИТС, методиками работы с регистраторами выбытия, и проблемам, с которыми пришлось столкнуться при интеграции. Эта статья будет представлять из себя краткую инструкцию, что делать, когда маркировка уже близко и необходимо быстро внедрить ее. Надеюсь, она станет подспорьем в данной задаче. Будут приведены рекомендации, как в короткие сроки с минимально необходимой функциональностью и минимумом чтения документации произвести интеграцию библиотеки МДЛП и выполнить начальные настройки. Также будут даны рекомендации по быстрым, но важным, на мой взгляд, доработкам.

23.06.2020    3731    IssakN    27    

Диадок. Подключаемый модуль. Отладка

Интеграция Внешние источники данных v8 1cv8.cf Бесплатно (free)

Небольшой пример, как работать с подключаемым модулем Диадок (для изменения УПД перед выгрузкой на сайт Диадок.). Отладка подключаемого модуля, если не смогли подключить стандартную отладку.

17.06.2020    4166    John_d    4    

Как построить микросервисную инфраструктуру

Интеграция Бесплатно (free)

При росте информационных систем возникает потребность выноса определенной бизнес-логики в отдельное приложение для повышения отказоустойчивости и возможности одновременного использования этой функциональности в различных источниках. О том, как построить микросервисную инфраструктуру с использованием Apache Kafka в качестве шины данных, на конференции Infostart Event 2019 Inception рассказал разработчик группы компаний Автоград Дмитрий Маренин.

15.06.2020    5517    dmarenin    6    

1C# – 1С моей мечты

Интеграция v8 Бесплатно (free)

Встроенных в платформу 1С возможностей не всегда хватает для построения сложных интеграционных схем между различными 1С и не-1С-решениями на базе MS SQL Server. Как сделать интеграцию между SQL-базами более гибкой с помощью платформы 1С# на конференции Infostart Event 2019 Inception рассказал Дмитрий Жичкин.

01.06.2020    11068    zhichkin    33    

Обработчик "После завершения транзакции" своими руками

Практика программирования Интеграция v8::blocking Бесплатно (free)

Обработчик "Сразу после завершения транзакции" очень востребован в механизме обмена мгновенными сообщениями, развитием которого фирма 1С заинтересовались настолько, что уже создала "Сервисы интеграции". Но платформа 8.3.17 всё еще не имеет полноценного обработчика "После записи" в подписках на события.

31.05.2020    2788    barelpro    62    

Интеграция Camunda BPM и 1С

WEB Интеграция v8 Бесплатно (free)

Быстрый старт. Только практические примеры. Установка, запуск и публикация бизнес-процесса на сервере Camunda BPM. Управление бизнес-процессами из 1С при помощи Camunda REST API.

12.05.2020    3690    zhichkin    19    

Учимся готовить кроликов с редиской: опыт применения Rabbit MQ и Redis в интеграционных проектах

Производительность и оптимизация (HighLoad) Интеграция Бесплатно (free)

При построении мощных производительных отказоустойчивых решений для интеграции во всем мире активно используются технологии обработки очередей сообщений с помощью брокера RabbitMQ и кэш-сервера Redis. О практическом опыте использования этих технологий при построении ИТ-ландшафта, включающего системы на 1С, на конференции Infostart Event 2019 Inception рассказал Сергей Наумов.

12.05.2020    5646    SergeyN    3    

Как мы загружаем данные в "Центр управления кассами Магнита"

Внешние источники данных Интеграция v8 1cv8.cf Бесплатно (free)

Статья о том, как мы делали механизм загрузки больших объемов данных в "Центр управления кассами Магнита"

08.05.2020    5011    chernenko_vv    25    

Интеграция СуперОкна7 и УНФ

Интеграция Внешние источники данных v8 УНФ Россия Бесплатно (free)

Изучаем базу данных СуперОкна7, смотрим возможности передачи и получения информации.

08.05.2020    2182    vostok1.dz    3    

Синхронизация БИТ:СКУД 8 с Parsec.Net 2.5

Интеграция Внешние источники данных v8 1cv8.cf Бесплатно (free)

Настройка синхронизации БИТ:СКУД 8 с Parsec.Net.2.5, выгрузка данных из внешней системы контроля доступа.

04.05.2020    3972    RPGrigorev    0    

Измерительная лаборатория с использованием 1С+Ардуино

Периферийные устройства Интеграция v8 Россия Бесплатно (free)

1С в автоматизации "научных" и около... экспериментов.

02.05.2020    4357    maxlab    16    

Интеграция БИТ:СКУД с типовой конфигурацией

Интеграция v8 1cv8.cf Россия Бесплатно (free)

Интеграция БИТ:СКУД с типовой конфигурацией, обновление БИТ:СКУД в составе конфигурации и отдельно. Обновление системы защиты.

26.04.2020    5158    RPGrigorev    0    

Интеграция 1С и BI-системы: мой опыт с коннектором ATK BIView

Интеграция v8 1cv8.cf Россия Бесплатно (free)

Интеграция 1С и BI-системы: мой опыт с коннектором ATK BIView.

06.04.2020    4313    Flyerink    0    

Как я собрал для себя высокопроизводительный и бесплатный облачный бекенд для 1С на PosgreSQL + PostgREST

Производительность и оптимизация (HighLoad) WEB Интеграция Мобильная разработка Администрирование веб-серверов v8 Бесплатно (free)

В этой статье я расскажу о проблемах бека для мобильных приложений или другого фронта, который требует производительности, быстрой реакции и отказоустойчивости, и как я решил это благодаря opensource проекту PostgREST и СУБД Postgre SQL 12. Проведу простой тест производительности для сравнения 1С с данным решением. Это может быть полезно всем, кто разрабатывает мобильные приложения либо фронтсайд-приложения для 1С на чем угодно - на мобильной платформе или на нативном языке или на Simple UI. И также обзор новых функций SimpleUI для связи с этим бекендом.

31.03.2020    13070    informa1555    31    

Использование таблиц SQL Server в качестве очередей сообщений

Практика программирования Интеграция v8 Бесплатно (free)

Статья о событийно-ориентированной интеграции и об асинхронной обработке данных в контексте 1C под управлением SQL Server. Подробно разбирается вопрос использования таблиц СУБД в качестве очередей сообщений.

23.03.2020    2896    zhichkin    6    

Интеграция "Библиотеки интеграции МДЛП 1.1.2.7" с типовой конфигурацией

Интеграция Конфигурирование 1С v8 Здравоохранение, медицина, стоматология Россия Бесплатно (free)

Инструкция для интеграции “Библиотеки интеграции МДЛП 1.1.2.7” в типовые конфигурации, на примере конфигурации “Управление нашей фирмой, редакция 1.6 (1.6.18.168)”.

02.03.2020    6196    RPGrigorev    3    

Бесшовная интеграция через обмен по правилам - миссия выполнима

Практика программирования Интеграция Перенос данных из 1C8 в 1C8 v8 ДО ERP2 Бесплатно (free)

При организации работы с договорами в ERP 2, с помощью бесшовной интеграции с Документооборотом, «типовой» методикой является создание договоров в ЕРП. После создания договора в ЕРП, пользователь «отправляет» договор в ДО по бесшовной интеграции. На практике, весьма часто пользователи хотят видеть обратную схему: вводить договоры в ДО и при этом получать их в ЕРП без «лишних телодвижений». Или даже вводить их независимо в обеих системах – так, чтобы потом «стыковать» по каким-то определенным правилам.

24.01.2020    5143    e-9    2    

Облачные кассы и 1С. Интеграция, которой не было

Интеграция Кассовые операции Россия Бесплатно (free)

В кейсе расскажем о сценариях работы с арендованными онлайн-кассами (облачными кассами). Приведем общую схему работы, удовлетворяющую требованиям закона. Опишем интересное нетиповое решение интеграции с 1С.

24.09.2019    7406    antonovintervolga    15    

Передача данных с сервера на клиент через WebSocket NativeAPI и Centrifugo

Интеграция v8::УФ 1cv8.cf Россия Бесплатно (free)

В статье описываю реализацию обмена для замены передачи сообщений через 1С Сервер взаимодействия.

23.09.2019    7579    malikov_pro    11    

Оповещения боту из 1С за 31 минуту

Практика программирования Интеграция v8::УФ 1cv8.cf Бесплатно (free)

Поделюсь опытом, как быстро сделать бота с оповещениями в Телеграмм из 1С без лишних затрат.

18.09.2019    17296    feva    41    

Подбор оборудования для информационных систем на платформе 1С

Интеграция Производительность и оптимизация (HighLoad) Бесплатно (free)

При подборе оборудования по рекомендациям с сайта ИТС возникает противоречие: проводить ли нагрузочные тесты, чтобы определить возможную нагрузку, или достаточно просто взять данные из таблиц статистики? О том, какую тактику применить в том или ином случае, на конференции INFOSTART EVENT 2018 Education рассказал начальник отдела разработки компании IBS Филиппов Евгений.

09.09.2019    9186    jf2000    8    

Интеграция 1С с промышленным оборудованием

Интеграция Бесплатно (free)

Эффективность управленческой информации в производственном процессе зависит от данных, собираемых на нижних уровнях. Про автоматизацию получения этих данных с использованием технологии OPC (OLE for process control) на конференции Infostart Event 2018 Education рассказал Юрий Коноваленко.

06.09.2019    9108    user642664_yurkeshk    12    

Poka-yoke. Оператор производственной линии – пользователь 1С. Кто сказал, что 1С только для финансов?

Интеграция Бесплатно (free)

Что такое Poka-yoke системы, зачем они нужны и как меняется работа на предприятии при их внедрении рассказал руководитель проектного отдела компании «Информационные технологии» Дмитрий Макаров на конференции INFOSTART EVENT 2018 EDUCATION.

04.09.2019    4158    pro-rok    16    

Как организовать консолидацию данных из трех десятков предприятий, не привлекая программистов на местах?

Интеграция v8 1cv8.cf Бесплатно (free)

Какую архитектуру и технологии выбрать для организации обмена между «зоопарком» разных конфигураций и системой, принципиально отличающейся от 1С, как наладить такой обмен без изменения конфигурации и организовать мониторинг из единого центра, расскажет докладчик конференции INFOSTART EVENT 2018 EDUCATION Александр Бобрышов. 

15.07.2019    4596    ShurikDM    4    

Бизнес-аналитика с помощью Power BI

Интеграция Бесплатно (free)

Тема статьи – это бизнес-аналитика. Возможно, кто-то этого не знает, но внедрение бизнес-аналитики – это очень больно. Когда внедряются не просто какие-то дашборды, а действительно бизнес-аналитика, происходит увольнение большого количества сотрудников, потому что выясняется, что они не выполняют те функции, которые на них возложены.

11.07.2019    13696    pbazeliuk    19    

Тестирование интеграций между системами

Интеграция Бесплатно (free)

Как начать разрабатывать интеграцию без реальной «второй стороны»? Как быть уверенным, что обмен не «сломается» при следующем обновлении? О том, какие подходы можно применять при тестировании интеграций и как такое тестирование может выглядеть в целом – в докладе Никиты Грызлова на конференции INFOSTART EVENT 2018 EDUCATION.

01.07.2019    10917    nixel    3    

Система питания в офисе: как совместить вендинговые автоматы, 1С, облачную кассу и веб-технологии

Интеграция Розничная торговля Розничная торговля v8 1cv8.cf Розничная и сетевая торговля (FMCG) Россия УУ Бесплатно (free)

В начале 2019 года тенденция развития автоматов питания в России привела к появлению проекта нового формата питания на работе — МикроМаркета “Го!Поедим”. Потребовалось создать новый формат зоны питания сотрудников: интегрировать в офисные кухни полноценные МикроМаркеты с бесконтактной оплатой, кофе-машинами, лаунж-зоной. Если правильно совместить вендинговые автоматы, облачную кассу, 1С и веб-технологии, то в результате будут не только сытые сотрудники, но и корректная работа всей системы офисного питания.

22.06.2019    6628    antonovintervolga    6