Порядок обновления ПМ

Универсальный модуль Диадока работает как связка двух внешних обработок для 1С: основного модуля (общая часть для всех клиентов) и подключаемого модуля — ПМ (часто пишется индивидуально под каждого клиента).

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

Чтобы информировать пользователя о том, что обновление основного модуля приведет к необходимости отредактировать код подключаемого модуля, используется следующий способ:

  • Введено понятие «Версия API основного модуля». Это число. Основной модуль имеет «прошитый» в него номер версии API. Такой же номер версии API должен быть прошит в ПМ. Версия API на 15.06.2017 равна 1.
  • Номер версии API хранится в функции: 
    Для основного модуля — функция «ЭДО_ТребуемаяВерсияAPIПодключаемогоМодуля()».
    Для ПМ — экспортная функция «ЭДО_ВерсияAPIПодключаемогоМодуля()».
  • Если подключаемый модуль не содержит экспортную функцию «ЭДО_ВерсияAPIПодключаемогоМодуля()», то он по умолчанию считается несовместимым со всеми версиями основного модуля, начиная с 1.0.0. Специалист отдела внедрения либо IT-специалист клиента должен провести ревизию кода ПМ и принять решение о его работоспособности с новой версией основного модуля. Это рекомендуется делать на копии базы. Для этого необходимо в ПМ добавить следующий код: 

     

    Функция ЭДО_ВерсияAPIПодключаемогоМодуля() Экспорт
    Возврат 1; //либо другая актуальная версия API
    КонецФункции
    

     

  • После чего протестировать работу связки основного модуля и ПМ на копии базы.
  • В случае, если новый релиз основного модуля содержит изменения, потенциально приводящие к неработоспособности старых версий ПМ, разработчики увеличивают номер версии API основного модуля на 1. При запуске клиентом новой версии основного модуля ему будет выдано примерно такое предупреждение с ссылкой на текущую страницу: 

Изменения, которые необходимо внести в код подключаемых модулей, НЕ имеющих версии API (т.е. настроенных до 15.06.2017)

Для версии API 1:

  • Получение текста запросов для построения списка документов на отправку (событие «ПолучитьТекстЗапросаДляСпискаПакетовНаОтправку»).

    Нажмите, чтоб раскрыть инструкцию подробнее

    Необходимо соединения вида:

    
    ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Диадок_ПакетыДокументов КАК Диадок_ПакетыДокументов
    ПО (СчетФактураВыданный.Ссылка = (ВЫРАЗИТЬ(Диадок_ПакетыДокументов.Документ КАК Документ.СчетФактураВыданный)))
    

    заменить на 

    
    ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Диадок_ПакетыДокументов КАК Диадок_ПакетыДокументов
    ПО СчетФактураВыданный.Ссылка = Диадок_ПакетыДокументов.Документ
    И (ТИПЗНАЧЕНИЯ(Диадок_ПакетыДокументов.Документ) = ТИП(Документ.СчетФактураВыданный))
    
    

    Это изменение не обязательно, но рекомендовано для ускорения работы модуля.

    В этих же запросах условие вида

    
    ГДЕ ЕСТЬNULL(Диадок_ПакетыДокументов.Метка, "Не отправлен") = "Не отправлен"

    заменить на 

    
    ГДЕ Диадок_ПакетыДокументов.Ссылка ЕСТЬ NULL

    Поскольку новые версии модуля самостоятельно показывают документы, не отправленные по каким-либо причинам

  • Изменения в обработке входящих документов (актуально для торговых сетей).

    Нажмите, чтоб раскрыть инструкцию подробнее

    В версии 1.0.0 в справочник «Диадок_Документы» были добавлены новые реквизиты, которые ранее хранились в табличной части «ДополнительныеРеквизиты» этого справочника.

    Старое имя реквизита (располагался в табличной части)

    Новое имя реквизита (располагается в основной таблице справочника)

    ОшибкиПроверкиТекст

    ТекстОшибки

    ОтветХранилище

    ХранилищеОтвета

    ДействиеВ1С

    ТребуемоеДействиеВ1С

    ДействиеВДД

    ТребуемоеДействиеВДД

    АнализПроведен

    АнализПроведен

    Основной модуль пишет результаты анализа входящих документов (результат события «ПровестиАнализДокумента») только в новые реквизиты!

    Надо учесть это в текстах запросов:

    
    ИЗ
    Справочник.Диадок_Документы КАК Диадок_Документ
    ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Диадок_Документы.ДополнительныеРеквизиты КАК ДопРеквизиты_АнализПроведен
    ПО (ДопРеквизиты_АнализПроведен.Ссылка = Диадок_Документы.Ссылка)
    И (ДопРеквизиты_АнализПроведен.ИмяРеквизита = ""АнализПроведен"")
    

    При установке данных значений:

    
    ОсновнойМодуль.ЭДО_СправочникМенеджер_УстановитьЗначениеДопРеквизита(ДокументДД, "ОшибкиПроверкиТекст", "");

    И при поштучном чтении данных значений:

    
    ТекстОшибкиСтрокой = ОсновнойМодуль.ЭДО_СправочникМенеджер_ЗначениеДопРеквизита(ДокументДД, "ОшибкиПроверкиТекст");

  • Для входящих документов теперь заполняется связанный справочник «Диадок_ПакетыДокументов».

    Нажмите, чтоб раскрыть инструкцию подробнее

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

Удаленная замена ПМ

В модуле появилась функциональность, которая позволяет синхронизировать ПМ с сервисом Диадок. Это позволяет ускорить процесс обновления ПМ, в случае обновления со стороны сервиса Диадок. 

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

  1. Если для хранения настроек модулем используется подсистема Диадок — в справочнике «Диадок: Дополнительные справочники» элемент «ОбщиеНастройки» параметры «ЗапретитьОбновлениеПМизСервисаДиадок», «ЗапретитьВыгрузкуПМвСервисДиадок».
  2. Если для хранения настроек модулем используется регистр сведений «Дополнительные сведения» (или «Значения свойств объектов») — записи со свойствами«DDPro_ЗапретитьОбновлениеПМизСервисаДиадок», «DDPro_ЗапретитьВыгрузкуПМвСервисДиадок».

diadoc

Подарки при покупке модуля 1С

Для действующих и новых клиентов Диадока

База знаний