Решение по интеграции 1С и S3

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

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

Интеграция S3 Amazon Ceph Объектное хранилище Облако AWS Yandex Object Storage

Интеграция 1С с облаком S3 (Amazon, Yandex Object Storage, Ceph Object Gateway S3 и любое совместимое объектное хранилище). Решение даёт возможность осуществлять основные файловые операции с облаком S3 прямо из 1С используя подключаемую DLL-библиотеку.

В процессе работы над внедрением решения на базе 1С ЕРП возникла необходимость хранить (выгружать, загружать, удалять и проч.) часть документов в корпоративном облаке выполненном на базе Ceph Object Gateway S3 - не найдя простого решения решили написать своё.

Данное решение представляет собой внешнюю обработку которая использует внешнюю Windows DLL-библиотеку. В качестве базы для разработки был выбран SDK от Amazon, благодаря чему решение стало совместимо как со сторонними S3-объектными хранилищами (например: Ceph Object Gateway S3 с которым единственное представленное на этом сайте решение не работает или с Yandex Object Storage), так и с "ванильным" AWS S3. Библиотека реализует набор функций, вызываемых непосредственно из кода 1С, необходимых для выполнения основных операций с хранилищем. 

Данное решение может работать как на сервере, так и на клиенте, как в синхронном, так и в асинхронном (реализуется средствами 1С - в примере не представлено) режиме, в тестовой обработке показан синхронный режим работы. При возникновении ошибок генерируется исключение содержащее подробный текст ошибки. Решение может работать в 1С начиная с версии 8.0, но мы рекомендуем использовать версию платформы не ниже 8.3.10. Ограничение версии связано с отсутствием в более ранних релизах 1С встроенных функций работы с base64 (например: Base64Строка), существует возможность использования сторонних решений и реализаций данных функций в этом примере не рассматриваемых. 

На приложенных скриншотах показаны некоторые приёмы работы с объектным хранилищем, тестовая обработка обладает интуитивно понятным интерфейсом и в отдельном описании не нуждается. Все примеры показаны на примере бесплатного аккаунта Amazon S3 и без труда воспроизводятся.

Детальное описание функций, как и сама тестовая обработка и все необходимые для работы библиотеки представлены в составе электронной поставки.

Гарантия возврата денег

ООО "Инфостарт" гарантирует Вам 100% возврат оплаты, если программа не соответствует заявленному функционалу из описания. Деньги можно вернуть в полном объеме, если вы заявите об этом в течение 14-ти дней со дня поступления денег на наш счет.

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

Для возврата оплаты просто свяжитесь с нами.

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

Лучшие комментарии
1. gorin 27.04.21 11:42 Сейчас в теме
Активно пользуюсь данным решением в ERP 2.4, работает четко, разработчик на вопросы отвечает, подсказывает, хоть и не мгновенно.
user1591027; perspective; zasadax; user1525588; +4 Ответить
Остальные комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. gorin 27.04.21 11:42 Сейчас в теме
Активно пользуюсь данным решением в ERP 2.4, работает четко, разработчик на вопросы отвечает, подсказывает, хоть и не мгновенно.
user1591027; perspective; zasadax; user1525588; +4 Ответить
2. user592773_demon1995.27 27.04.21 12:29 Сейчас в теме
Тоже нужно использовать яндекс S3...
Вопрос: Почему используется DLL а не чисто на 1С ?
3. Техподдержка 27.04.21 14:45
(2)
Добрый день! Прежде всего, мы проверили решение на работоспособность с Yandex Object Storage, - работает!
Пример скачивания файла "ReadMe.txt" из Yandex Object Storage для пользователей обработки:
ДанныеФайла = S3_OperWork.S3GetFileByKey("ReadMe.txt", "yandex-test-backet", "ru-central1", "kfuz##########B7f0zN", "Mprqb##############################RAM1Z", "https://storage.yandexcloud.net");


Теперь отвечу на Ваш вопрос, причин несколько:

1) Трудоёмкость реализации, например если вы используете API напрямую (без AWS SDK, а его не существует для 1С), то для подписи запросов, Вам придется самостоятельно генерировать заголовок Authorization, что сделать средствами 1С довольно затруднительно (даже не смотря на то, что алгоритм описан: https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html) или процесс работы с частями файлов (загрузка больших файлов производится частями) и подобных нюансов очень много из-за которых подобная реализация представляет скорее чисто исследовательский интерес;
2) Скорость внедрения в "прод" (см. п.1);
3) Наличие готовых и проверенных под высокими нагрузками в "проде" наработок.
user1525588; +1 Ответить
6. amoarok 26 28.04.21 07:37 Сейчас в теме
(3) посмотрите на конфигурацию "Менеджер сервиса" из коробки "Облачная подсистема Фреш". Там реализация на чистом 1С. Нагрузки немалые. И всё работает
7. Техподдержка 28.04.21 08:31
(6) Предложенное Вами решение стоит 72 000р. (и требует КОРП-функционал, - не буду пугать суммой), а в открытом доступе не замечено ... Следует отметить, что мы не рассматриваем и категорически не приемлем любое неправомерное использование и переиспользование программных продуктов (фрагментов кода) и любой другой интеллектуальной собственности!
8. amoarok 26 28.04.21 10:51 Сейчас в теме
(7) я и не говорю что из этого решения надо копировать код.
Для того чтобы "самостоятельно генерировать заголовок Authorization", можно использовать замечательный https://github.com/vbondarevsky/Connector . Он распространяется под Apache License 2.0, так что можете взять этот код, просто уведомить что вы его используете в своём продукте.
А Менеджер сервиса - хороший пример того что код на 1С может работать с S3 напрямую.
9. user592773_demon1995.27 28.04.21 11:26 Сейчас в теме
(8) Спасибо тебе огромное! Действительно все может работать напрямую на 1С и не привязываться к COM объекту в виде DLL.
И в типовых конфигурациях есть процедура для формирования Authorization "РаботаВМоделиСервисаБТС.HMACSHA256"
Супер! Еще раз спасибо за инфу про "Менеджер сервиса"
11. Техподдержка 28.04.21 12:18
(9) Еще раз напомним, что "Менеджер сервиса" это компонент дорогого коммерческого продукта. О подводных камнях (в т.ч. технического толка) я уже писал, тут уж каждый действует на свой страх и риск или покупает проверенное решение (например наше) и без проблем пользуется.
17. amoarok 26 28.04.21 14:26 Сейчас в теме
(11) эта функция входит в состав БТС )
А она внедрена практически во все типовые. Её не обязательно даже куда-то копировать, можно просто вызывать из обработки.
12. user713597 28.04.21 12:59 Сейчас в теме
(9) Инфа сотка, но костыли городить - муторно, страшно и долго! Ну камон - не те деньги! купить реально быстрее и проще и будет с кого спросить в случае чего 😈
user1525588; +1 Ответить
13. user592773_demon1995.27 28.04.21 13:22 Сейчас в теме
(12)да но что делать с dll в linux системах??
15. user713597 28.04.21 13:28 Сейчас в теме
(13) Что делать, что делать - муравью х#й приделать 😂😂😂 Послушаем, что тех. поддержка скажет, видимо это решение только для винды, у меня винда, мне норм.
19. Техподдержка 28.04.21 14:34
(13) Читая комментарий ниже, - ради Бога, оставьте насекомое в покое!
Если кратко, то с появлением .Net Core стало возможным использование сборок .Net и на любой оси отличной от Windows, мы поддерживаем решение только под Windows, но не составляет никаких проблем использовать его и на Linux. Как это сделать подробно описано тут: https://habr.com/ru/post/304482/ и продолжение для тех, кому интересно - тут: https://habr.com/ru/post/304542/
user1525588; user1591027; +2 Ответить
10. Техподдержка 28.04.21 12:15
(8) Мы рады, что есть альтернативные решения, но, к сожалению, они работоспособны только до того момента пока, например, файл не нужно будет разбить на части для загрузки в S3 и вот тут вас будет ожидать неприятный сюрприз, который, к слову в нашем решении учтен. Еще пара сюрпризов Вас будет ждать при работе с Ceph ... Наше решение, в отличие от предложенной "альтернативы" использует официальный проверенный временем и нагрузками Amazon SDK с некоторыми расширениями, что на наш взгляд предпочтительнее! Если вас устраивают самобытные способы и прочий DIY, - ваше право. Мы продаем проверенное и беспроблемное решение позволяющее быстро и без особых технических изысканий запустить работу с S3 из 1С!

P.S. Мы выше уже писали кстати, что проблемы не только в Autorization :) и именно поэтому эти комментарии тут, хотя, казалось бы им тут не место :) Возможно кому-то и подойдет предложенное решение с коннектором, почему нет ...
14. user592773_demon1995.27 28.04.21 13:24 Сейчас в теме
(10)1С может разьединять файл на части и объединять тоже. И если система на linux системах, то что делать с dll
20. Техподдержка 28.04.21 14:43
(14) Ответил выше, если кратко, то - с появлением .Net Core (2016г.) стало возможным использование сборок .Net и на любой оси отличной от Windows.
16. amoarok 26 28.04.21 14:23 Сейчас в теме
(10) почему же не место? Как раз тут самое место. Я пытаюсь узнать почему вы выбрали костыль в виде dll библиотеки и ответ пока неубедителен.
18. Техподдержка 28.04.21 14:31
(16) Спасибо за ваше мнение. У нас нет цели Вас переубедить. Мы выбрали этот способ реализации по описанным выше причинам, очевидно, что нам они кажутся убедительными. Предложите своё готовое решение, мы с удовольствием его протестируем и обсудим.
user713597; +1 Ответить
21. user1591027 28.04.21 15:18 Сейчас в теме
(16) Почитал и не согласен с каментами про костыли ... авторы же юзают официал SDK, что даже по логике не костыль(а технически бест практис), а вот советчики предлагают велосипед из костылей!!!
user1525588; +1 Ответить
4. malikov_pro 659 27.04.21 18:17 Сейчас в теме
Из минусов: использовать dll без исходников относительно рискованное занятие. Не описано на базе чего написана DLL, возможно как обертка С++ SDK.
В качестве локального хранилища можно использовать MINIO (как компонент просто ставится к FreeNAS), S3 поддерживает и selectel.
Как альтернатива использовать Node JS в качестве промежуточного сервиса, но сделать клиент чисто на HTTP лучше.

БОльшая проблема если попробовать заменить вариант хранения в томе БСП, там заточено под работу с локальными папками, статью по OpenStack на IS писал.
5. Техподдержка 28.04.21 05:28
(4)
Добрый день!
Это коммерческое решение с закрытым исходным кодом, но мы готовы предоставить исходный код под индивидуальные условия. В описании указано, цитата: "В качестве базы для разработки был выбран SDK от Amazon" что позволяет сделать вполне однозначный вывод (так-же содержание ошибки на скриншоте из описания еще раз подтверждает написанное и процитированное выше) в подробной документации из состава электронной поставки есть прямая ссылка на используемое SDK и текст его лицензии.
Существует множество реализаций объектных хранилищ, протестированные и используемые с данным решением: Amazon, Yandex Object Storage, Ceph Object Gateway S3. С упомянутым Вами Selectel Cloud Object Storage данное решение не тестировалось, но исходя из заявленной Selectel в документации к услуге, цитата: "Amazon S3-совместимым API" - проблем возникнуть не должно.
Данное решение потенциально может быть использовано для расширения типовых вариантов хранения томов, например можно дописать корректор с использованием функций предоставляемых нашим решением к https://infostart.ru/public/1276986/ но это выходит за рамки данного контекста.
22. Техподдержка 30.04.21 06:14
Делюсь новым кейсом от одного из наших клиентов, - крупная компания использует объектное хранилище S3 Object Gateway и в силу определенных внутренних причин (наличие "самописной" учетной системы в связке с 1С) имя файла у S3-объекта хранят в одном из полей заголовка ContentDisposition, а не в ключе объекта как обычно. Кейс был успешно решен, клиент доволен, в наше решение был добавлен новый функционал!
Оставьте свое сообщение

См. также

Связь 1С и виртуальных АТС (Мегафон, Zadarma(Задарма)). Звонки из 1С. Журнал звонков сотрудников и клиентов Промо

Управление взаимоотношениями с клиентами (СRM) Интеграция Телефония, SIP v8 УТ11 Россия УУ Платные (руб)

Связка 1С и виртуальных АТС (от Мегафон, Zadarma (Задарма)) позволит четко ответить на вопросы: кто звонил, когда звонил, кому звонил, сколько говорил, сколько ждал на линии, что особо актуально при удаленной работе операторов и менеджеров, о чем говорили, результат разговора, обработаны ли пропущенные звонки, прослушать сам разговор, запланировать встречу, звонок, напоминание по результатам разговора. Возможность позвонить клиенту прямо из 1С одной кнопкой, оставить комментарий о звонке, посмотреть по каждому партнеру и клиенту, контакту клиента историю его звонков и взаимоотношений.

8000 руб.

08.05.2020    7954    6    31    

Интеграция 1С и ГИС ЖКХ. Ассистент ГИС ЖКХ

Внешние источники данных WEB Интеграция 8.3.14 1cv8.cf Энергетика и ЖКХ Россия БУ Платные (руб)

Решение предназначено для бесшовной интеграции с порталом ГИС ЖКХ. Подходит для предприятий ЖКХ, ведущих прямые расчеты с потребителями ЖКУ.

19000 руб.

30.04.2021    1038    0    3    

Управление тендерным отделом. Интеграция

Интеграция Управленческий учет (прочее) v8::УФ УНФ ERP2 БП3.0 КА2 Россия УУ Платные (руб)

Дополнение встраивается в типовые конфигурации на платформе 1С:Предприятие (для управляемых форм, начиная с версии 8.3.15 и выше), после чего в интерфейсе конфигурации появляется подсистема "Тендерный отдел", из которой можно настроить поиск и загрузку госзакупок ФЗ -44, ФЗ-223, ФЗ-504, ФЗ-505 и ПП-615 и коммерческих тендеров и файлов документации для учета документов в разрезе меток-статусов и ответственных. Решение предназначено для быстрой интеграции и внедрения в любую конфигурацию на платформе 1С:Предприятие 8.3.15 и выше на основе БСП.

25000 руб.

11.11.2020    2716    0    0    

API для автоматизации юридической работы

Интеграция Аудит и бухгалтерские услуги, юриспруденция Россия Платные (руб)

Юрайт API интегрирован со всеми внешними источниками юридических данных: КАД.Арбитр, ГАС Правосудие, ФССП, ЕФРСБ и Московский городской суд. Интегрируется с корпоративными системами и приложениями.

43000 руб.

15.10.2020    3390    0    0    

Загрузка данных из ПО R-keeper 7 UCS в 1С:Бухгалтерию 8.3 Промо

Внешние источники данных Интеграция v8 v8::БУ БП3.0 Рестораны, кафе и фаст-фуд Россия БУ Платные (руб)

Внешняя обработка для загрузки номенклатуры и документов продаж из базы данных SQL программы R-keeper 7 фирмы UCS в 1с Бухгалтерию 8.3. С возможностью загрузки за период и синхронизации справочников.

4000 руб.

16.10.2019    10955    4    2    

Обработка прайсов + интеграция с сайтом: базовое комплексное решение для Интернет-магазинов работающих со склада поставщиков

Ценообразование, прайсы Оптовая торговля Розничная торговля Ценообразование, анализ цен Обмен данными 1С Загрузка и выгрузка в Excel WEB Интеграция Управленческий учет (прочее) Рабочее место Управление торговлей v8 КА1 УТ10 Розница УПП1 УНФ ERP2 УТ11 УХ КА2 УУ Платные (руб)

Если Вам нужно работающее решение, которое закроет вопрос автоматизации рутинных процессов в сфере торговли по системе DropShipping, т.е. со склада поставщика, то вполне возможно вам подойдет наше комплексное предложение, которое включает 2 незаменимых продукта для торговли через интернет-магазин.

34999 руб.

31.08.2020    5274    1    0    

Бандл: интеграция 1С с WhatsApp и Viber

Управление взаимоотношениями с клиентами (СRM) Интеграция v8 УУ Платные (руб)

Сервис мгновенного обмена сообщениями WhatsApp сегодня является самым популярным в мире. Первое место в рейтинге сервис получил во многом благодаря популярности на территории России. Публичные чаты и группы для коммуникации в Viber становятся все более популярными среди компаний в сегменте малого и среднего бизнеса, особенно на RU-территории.

16000 руб.

27.08.2020    7252    2    6    

Интеграция Альфа Авто 5 и AUTOCRM

Интеграция v8 1cv8.cf Автомобили, автосервисы Россия УУ Платные (руб)

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

10000 руб.

03.08.2020    3358    0    0    

Платформа интеграции 1С с чат-ботами (Telegram, Viber, Facebook, ВКонтакте, Skype, Одноклассники, Яндекс.Алиса, WhatsApp, Verbox, Jivochat) Промо

Управление взаимоотношениями с клиентами (СRM) Интеграция Внешние источники данных v8 Платные (руб)

Мощный модуль для интеграции 1С с чат-ботами: Telegram, Viber, Facebook, Vkontakte, Skype, Одноклассники, Яндекс.Алиса, WhatsApp, а так же виджеты чата для сайтов: Verbox, Jivochat. Это универсальное и эффективное решение с большими возможностями, простым интерфейсом, наличием визуального конструктора, базовыми сценариями поведения из коробки, позволяющий запустить чат-ботов в течении 1-го дня.

11500 руб.

08.10.2019    29517    56    0    

DaJet MQ - надёжный обмен данными

Обмен данными 1С Интеграция v8 Платные (руб)

DaJet MQ – это асинхронный обмен сообщениями, основанный на компоненте Service Broker ядра Microsoft SQL Server. Простой, эффективный, надёжный. Отлично справляется с сообщениями любого размера. Максимальный размер одного сообщения равен 2 Гб.

12000 руб.

16.06.2020    3817    0    15    

Выгрузка данных на atmclub (АТМ) из конфигурации Альфа-Авто: Автосервис+Автозапчасти (+Автосалон)

Обработка документов Интеграция Внешние источники данных v8 v8::ОУ 1cv8.cf Автомобили, автосервисы Россия УУ Платные (руб)

Обработка позволяет выгрузить данных по заказ-наряду на atmclub (АТМ) из конфигурации Альфа-Авто: Автосервис+Автозапчасти (+Автосалон) ред. 5.1.

2000 руб.

10.06.2020    4741    0    0    

Импорт розничных продаж из АСУ "Топаз-АЗС" в 1С:Бухгалтерию предприятия 3.0

Внешние источники данных Интеграция v8 v8::БУ БП3.0 Россия БУ Платные (руб)

Данная обработка предназначена для импорта данных по продаже топлива из АСУ "Топаз-АЗС" в 1С:Бухгалтерия предприятия 3.0 (Версия формата данных 3.15)

3900 руб.

13.05.2020    4830    8    16    

Тикеты - система учета задач/Help Desk в 1С (интеграция с Trello, Мобильное приложение) Промо

Интеграция Управление бизнес-процессами (BPM) v8 v8::УФ 1cv8.cf Платные (руб)

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

8500 руб.

18.01.2019    19236    4    58    

Управление Viber-ботами

Интеграция Внешние источники данных v8 Платные (руб)

Простое и эффективное решение для управления viber-ботами из 1С.

2000 руб.

17.04.2020    7291    5    6    

Магазин в Телеграм. Подсистема для разработки ботов на 1С с готовыми скриптами

WEB Интеграция Оптовая торговля v8 УТ11 УУ Платные (руб)

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

5990 руб.

20.03.2020    10733    2    0    

Модуль "Интеграция с Axiomus" для 1С:Управление торговлей 8

Оптовая торговля Розничная торговля WEB Интеграция Управление торговлей v8::ОУ v8::УФ УТ11 Россия УУ Платные (руб)

Модуль предназначен для автоматического обмена данными по заявкам на доставку между 1С и информационной системой службы доставки Axiomus. Модуль предназначен для конфигурации 1С:Управление торговлей 8 (ред. 11).

9880 руб.

29.11.2019    6972    0    0    

АРМ "Касса-Лом". Обмен между 1С и учетной системой по оплате с физическими лицами за сдачу металлолома

Оптовая торговля Интеграция v8 v8::БУ БП3.0 Россия БУ Платные (руб)

АРМ "КАССА-ЛОМ" предназначено для проведения безналичных взаиморасчетов между физическими лицами-сборщиками металлолома и предприятиями, являющимися членами НП НСРО «РУСЛОМ.КОМ» и осуществляющими деятельность в области обращения с ломом и отходами металлов.

6000 руб.

23.09.2019    9609    4    0    

QWEP - Оптимизация закупки автозапчастей

Ценообразование, прайсы Загрузка и выгрузка в Excel Интеграция Оптовая торговля Оптовая торговля v8 1cv8.cf Автомобили, автосервисы УУ Платные (руб)

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

19080 руб.

20.12.2016    22854    1    14    

Подсистема "Планировщик" (версия 2.3)

Практика программирования Работа с интерфейсом Управление взаимоотношениями с клиентами (СRM) Интеграция Управление услугами и сервисом v8 1cv8.cf Россия УУ Платные (руб)

Конфигурация с подсистемой "Планировщик" (интерфейс + хранение + интеграция с Google). Версия 1.1 бесплатная и не обновляется. Версия 2.2+ коммерческая, содержит очень много полезного и полностью готова для использования и удобной интеграции в любую конфигурацию на платформе 8.3.12+ с БСП 3.0+

25000 руб.

02.03.2015    70614    135    86