Обмен данными с DocsInBox для поставщика (1C 7.7)







Данная обработка предназначена для поставщиков, осуществляющих выгрузки накладных в систему DocsInBox работающих на 1С 7.7 ТиС или Комплексная.

Обработка использует API Импорта DocsInBox (http://docs.dxbx.apiary.io/)

API построено на технологии REST JSON сервисов, защищенных с помощью SSL

Данная обработка также может быть интересна ИТ специалистам, т.к. в ней реализованы механизмы парсинга/сборки JSON запросов и обмена данными через Msxml2.ServerXMLHTTP по http/s (по обычному и защищенному соединению).

Архив содержит файл обновления конфигурации и обработку выгрузки.

Перед началом работы необходимо выполнить объединение с файлом  конфигурации из архива (см. рисунок): выбрать объекты Справочник.DocsInBox_Фирмы, Справочник.DocsInBox_ДанныеОбмена. Добавить и разместить на форме реквизит "Грузополучатель" (тип: Справочник.Контрагенты) в документе Реализация.

 

Порядок работы с обработкой:

1. На закладке "Сервис" нужно нажать на кнопку "Справочник.DocsInBox_Фирмы". Здесь нужно создать "Нашу" фирму(ы), заполните поле "Секретное слово" — его вы получаете от менеджера DocsInBox

2. На закладке "Журнал" нужно выбрать документы "Реализация".Выбор производится кликом по колонке "В".  Для удобства на форме присутствует фильтры отбора (слева поля фильтров и кнопка "+Отбор" на выбранном реквизите документа) . В данном списке отображаются только проведенные документы!

3. Выбранные документы отображаются на закладке "Выбранные объекты".  Отправка документов осуществляется по нажатию кнопки "Выполнить обмен". Если есть ошибки, в табло сообщений будет выведен ответ сервера. В колонке "Статус" будет заполнено последнее состояние обмена по выбранным документам: "Оk", "Error"

+ На закладке "Сервис" доступны функции тестирования соединения, последний протокол обмена и по кнопке "Протокол работы (log)" — полный лог обмена json запросов клиента и ответов сервера

+В справочнике "Справочник.DocsInBox_ДанныеОбмена" сохраняется информации о дате и времени выгрузки документа, Статусе и  текст ответа сервера. Также в данном справочнике присутствует сервисная кнопка "Удаление старых данных"  — при вызове запрашивается кол-во дней, старше которых нужно удалить сведения об обмене документов

+ если в вашей конфигурации подключена компонента Formex, то на закладках "Журнал" и "Выбранные объекты" будет присутствовать цветовое выделение срок.

Текущая версия: 1.0 от 08.08.2024 г.

[Версия 1.01] 08.11.2024

— исправлена ошибка в функции ПолучитьОписаниеSystemInfo() (1CV7 -> 1C77)

[Версия 1.02] 24.01.2024

— исправлена ошибка с передачей КПП контрагента;

— исправлена ошибка протоколирования для тестового подключения.

 

5 Comments

  1. xsazar

    Привет, не скажешь ставлю обработку в ТиС в 9.2

    Пишет ошибки:

    флСоздатьКаталог = 1 — глФС_ЭтоКаталог<<?>>(_Путь_);

    {C:USERSSERGDESKTOPВЫГРУЗКА_DOCSINBOX.ERT(75)}: Функция не обнаружена (глФС_ЭтоКаталог)

    флВыб = ?(номПодчРеал = 0, «», глМеткаВСписке<<?>>);

    {C:USERSSERGDESKTOPВЫГРУЗКА_DOCSINBOX.ERT(262)}: Переменная не определена (глМеткаВСписке)

    мЛогФайл_Каталог = глКаталогИБ <<?>>+ «ExtformsDocsInBox_logs»;

    {C:USERSSERGDESKTOPВЫГРУЗКА_DOCSINBOX.ERT(1152)}: Переменная не определена (глКаталогИБ)

    Это что за функции и переменные?

    Reply
  2. tandy82

    1. Функцию можно разместить в глобальном модули или в модуле обработки

    Функция глФС_ЭтоКаталог(_ИмяФайлаПолное_) Экспорт
    Перем фАтрибуты;
    
    ЗначениеНаВозврат = 0;
    
    ФС.АтрибутыФайла(_ИмяФайлаПолное_,, фАтрибуты);
    Если Сред(фАтрибуты, 4, 1) = «1» Тогда
    ЗначениеНаВозврат = 1;
    КонецЕсли; //Сред(щ, 4, 1) = «1»
    
    Возврат ЗначениеНаВозврат;
    КонецФункции //глФС_ЭтоКаталог

    Показать

    2. глМеткаВСписке поменяте на мМеткаВСписке (переменная определена в модуле обработки). В результате должен получиться следующий код:

    флВыб = ?(номПодчРеал = 0, «», мМеткаВСписке);

    3. глКаталогИБ = КаталогИБ();

    Обработку обновил с учетом обнаруженных ошибок.

    Кто скачал могут написать в личку, я вышлю обновление.

    Reply
  3. grisha2006

    с 3го ноября 2017 не принимает без исправления c 1CV7 на 1С77 вот тут:

    Функция ПолучитьОписаниеSystemInfo() Экспорт

    systemCode = «1C77»;

    systemVersion = «7.70.027»;

    configVersion = Метаданные.ПолныйИдентификатор();

    clientVersion = мВерсияОбработки;

    СоединениеSSL = ?(фОтключитьЗащищенноеСоединение = 1,»false»,»true»);

    ЗначениеНаВозврат = «system=»+systemCode+»;version=»+systemVersion+»;configVersion=»+configVersion+»;clientVersion=»+clientVersion+»;ssl=»+СоединениеSSL+»»;

    Возврат ЗначениеНаВозврат;

    КонецФункции

    в соответствии с описанием API

    system — учетная система и которой идет запрос. Доступные значения: «1C77», «1C8», «MSDAX», «MSDNAV», «IIKO»

    Reply
  4. tandy82

    (3) действительно по api значение system должно быть 1C77.

    Обработку обновил до версии 1.01 с учетом обнаруженных ошибок.

    Reply
  5. tandy82

    [Версия 1.02] 24.01.2018

    — исправлена ошибка с передачей КПП контрагента;

    — исправлена ошибка протоколирования для тестового подключения.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *