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

  • Получить конфигурацию поставки Маркет.Коннектор для соответствующего типа конфигурации: УТ 11, КА 2, ERP, УПП 1.3, УТ 10.3
  • Создать копию продуктовой базы для встраивания или обновления модуля Маркет.Коннектор в конфигурации
  • Выполнить шаги внедрения или обновления подсистемы в тестовой базе: шаги выполняются для всех типов конфигураций, дополнительные шаги для отдельных типов конфигураций начинаются с фразы "Только для УПП 1.3, УТ 10.3...". Дополнительные шаги связаны с тем, что для конфигураций УПП 1.3, УТ 10 не поддерживается использование расширений, поэтому требуется внести изменения в процедуры и функции общих модулей явно с основной конфигурации.
  • Перенести доработки в продуктовую базу после подготовки и тестирования конфигурация переносится в рабочую базу данных через выгрузку конфигурации из тестовой базы и загрузки конфигурации в продуктовую базу. Если за время доработок и тестирования в конфигурацию продуктовой базы были внесены изменения, то их необходимо перенести в тестовую базу через сравнение и объединение с конфигурацией продуктовой базы и дополнительного тестирования.

Настройка правил поддержки конфигурации

Когда конфигурация полностью типовая, без каких-либо изменений, то, скорее всего, отключена возможность её редактирования. Для включения возможность редактирования конфигурации необходимо выполнить настройку правил поддержки. Если для конфигурации или нужных объектов уже включено редактирование, то отдельные пункты можно пропустить. Ниже приведен необходимый минимум включения возможности редактирования конфигурации для встройки подсистемы коннектора:  

  • В настройках поставки включить возможность редактирования конфигурации

    В настройках правил поддержки оставить "Объект поставщика не редактируется"
  • В настройках поставки включить возможность редактирования для корня конфигурации ((warning) НЕ устанавливать флаг "Установить для подключенных объектов")

    Обратить внимание, что у корня конфигурации установилось правило поддержки "Редактируется с сохранением поддержки", а у подчиненных объектов конфигурации осталось правило поддержки "Не редактируется"
    • Только для конфигураций УПП 1.3 и УТ 10.3: в настройках поставки включить возможность редактирования для отдельных типовых объектов для внесения в них изменений

ОбъектТип конфигурации
Общие модулиУПП 1.3, УТ 10.3

БиблиотекаОбновленияИнформационнойБазыПереопределяемый

Только УПП 1.3
ОбновлениеИнформационнойБазыУПП 1.3, УТ 10.3

ОбновлениеИнформационнойБазыПереопределяемый

Только УТ 10.3
ПодсистемыКонфигурацииПереопределяемыйТолько УТ 10.3
ЭлектронныеДокументыКлиентУПП 1.3, УТ 10.3
ДокументыУПП 1.3, УТ 10.3
ЗаказПокупателяУПП 1.3, УТ 10.3

Для заказа покупателя НЕ включать флаг "Установить для подчиненных объектов"


Результат

Если для заказа было ранее включено редактирования с подчиненными объектами или включено редактирование отдельных реквизитов, то для реквизитов заказа может быть уже установлен режим поддержки "Редактируется с сохранением поддержки".

Закрыть диалог настройки поддержки и сохранить изменения конфигурации (Ctrl+S)

Установка подсистемы Маркет.Коннектор

  • Выполнить сравнение/объединение c конфигурацией Маркет.Коннектор из файла, на вопрос о постановке на поддержку с Конфигурацией поставщика нажать Да

  • Снять все флажки в окне сравнения/объединения

  • Выполнить отметку по объектам подсистемы файла, для этого выполнить команду Действия → Отметить по подсистемам файла..., в открывшемся диалоге отметить только подсистемы с префиксом "рдв_"

    Результат
  • Проверить, что флажки объединения свойств конфигурации сняты
  • Перенести изменения в типовых объектах только для УПП 1.3 и УТ 10.3, для этого установить фильтр сравнения/объединения в значение "Показывать измененные", чтобы перенести точечно изменения объектов, общих модулей и дополнительных реквизитов (см. таблицу ниже)

    Код для переноса окружен открывающим (//++) и закрывающим (//--) комментариями

    Установить фильтр сравнения/объединения в значение "Показывать присутствующие только в файле" и выделить реквизиты заказа для добавления в основную конфигурацию
     
ОбъектОписаниеТип конфигурации
Общие модули
УПП 1.3, УТ 10.3

БиблиотекаОбновленияИнформационной→

БазыПереопределяемый

Добавление обработчиков обновления
Функция ОбработчикиОбновления()

Только УПП 1.3
ОбновлениеИнформационнойБазы

Доработка процедуры для определения необходимости запуска обновления ИБ

Функция НеобходимоОбновление→

ИнформационнойБазы

Функция ОбновитьИнформационнуюБазу

УПП 1.3, УТ 10.3

ОбновлениеИнформационнойБазы→

Переопределяемый

Добавление обработчиков обновления

Функция ОбработчикиОбновления()

Только УТ 10.3

ПодсистемыКонфигурации→

Переопределяемый

Добавление подсистем Маркет.Коннектор

Процедура ПриДобавленииПодситем()

Только УТ 10.3
ЭлектронныеДокументыКлиент

Программная доработок форм конфигурации

Процедура ПриОткрытии(Форма)

УПП 1.3, УТ 10.3
Документы
УПП 1.3, УТ 10.3
ЗаказПокупателяДобавление реквизитов: "рдв_<Имя реквизита>"УПП 1.3, УТ 10.3
  • Выполнить сравнение/объединение. В диалоге настройки правил поддержки оставить флаги без изменения

  • Выполнить контроль переноса изменений (до обновления конфигурации базы данных - F7) можно с помощью сравнения основной конфигурации и конфигурации базы данных. Команда: Меню → Конфигурация → Сравнить конфигурации...

    Например, для УТ 10.3 фильтр "Показывать измененные" должен дать результат

  • Обновить конфигурацию базы данных (F7)
     
  • При первом запуске запускается обновление информационной базы в монопольном режиме (warning), обновление будет не возможно, если в базе работают другие пользователи
  • В конфигурациях, поддерживающих расширения, обновить дополнительное расширение и перезапустить приложение
  • После перезапуска клиента с обновленным дополнительным расширением будет запущено повторно обновление ИБ в монопольном режиме (warning)
  • Проверить после успешного обновления в регистре "Версии подсистем" должны появиться записи с подсистемами Маркет.Коннектор
  • Проверить метаданные после обновления конфигурации базы данных в режиме предприятия
    В управляемом интерфейсе

    В обычном интерфейсе

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

Пример:

Ошибка проверки типа "РегистрСведений.рдв_кн_ЖурналОчередейОбработкиДанных.Измерение.Объект", лишние типы (10):
- Заказ на производство (2.1)
- Заказ материалов в производство
- Заказ переработчику
- Заказ на ремонт

В данном случае необходимо рдв_кн_ЖурналОчередейОбработкиДанных поставить на редактирование с сохранением поддержки и снять флаг у лишних типов для измерения Объект. 

В случае если в ошибке сообщается о недостающих типах - нужно установить флаг для указанных типов.

  • Для конфигураций УТ 11, КА 2, ERP (Внимание! кроме УПП 1.3 или УТ, где не доступно использование расширений): запустить предприятие, в разделе "Маркет.Коннектор" и выполнить подключение дополнительного расширения
  • Дальнейшее обновление подсистемы Маркет.Коннекторы выполняется стандартно механизмом обновления платформы через файл обновления с отбором по дважды измененным, если выполнялась адаптация подсистемы. После обновления подсистемы в основной конфигурации, перед обновлением конфигурации базы данных:
    • Необходимо проверить, что в результате обновления не изменены лишние объекты типовой конфигурации, для этого нужно выполнить сравнение конфигураций база дынных и основной конфигурации: Меню → Конфигурация → Сравнение конфигурации..
    • Если в результате обновления затронуты объекты, которые не должны быть изменены в результате обновления, то их можно восстановить из конфигурации БД путем сравнения, объединения с конфигурацией базы данных: Меню → Конфигурация базы данных → Сравнить, объединить с конфигурацией БД

Обновление подсистемы Маркет.Коннектор

Пошаговый процесс обновления подсистемы Маркет.Коннектор с описанием возможных/типичных ошибок и примерами их исправления

Получение файла обновления

Обновления поставляются как стандартный комплект поставки конфигурации в виде zip-архива. Для установки комплекта необходимо запустить установщик setup.exe, в результате файлы поставки будут установлены в каталог шаблонов конфигураций 1С

Пример файлов поставки коннектора версии 1.0.0.30 для конфигурации УТ 11 в каталоге шаблонов tmplts

Запуск процесса обновления

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

  • Корень конфигурации,
  • Объекты, входящие в подсистему Маркет.Коннектор,
  • Для УПП 1.3, УТ 10: изменяемые типовые объекты.

Запуск обновления выполняется командой конфигуратора: Меню → Конфигурация → Поддержка → Обновить конфигурацию

Выбрать способ получения файла конфигурации вручную из каталога или автоматическим поиском по списку областей (рекомендуемый вариант)

При выполнении поиска по областям, рекомендуется снять флаг с поиском по дополнительным областям в интернете, чтобы ускорить процесс поиска обновлений

Выбрать обновление для Маркет.Коннектор

Подтвердить обновление на новую версию

После выполнения сравнения и объединения может появиться диалог с предупреждением о невозможности обновления части объектов, проверить, что в нем нет объектов с префиксом "рдв_", если объектов нет, то закрыть диалог для продолжения обновления, иначе нужно определить причину, по которой не возможно обновление объектов подсистемы

Важно! В окне сравнения и объединения, если установлен флаг на свойствах конфигурации, его необходимо снять

Установить фильтр "Показывать только дважды измененные свойства". Если Список дважды измененных объектов непустой, то необходимо обработать конфликты вручную, чтобы донести изменения типовой подсистемы и при этом сохранить выполненные доработки объектов.

Необходимо обратить внимание на доработанные предопределенные значения справочников (если таковые имеются). Особенности предопределенных элементов объектов метаданных :: Прочее :: Методическая поддержка для разработчиков и администраторов 1С:Предприятия 8 (1c.ru)

После обработки дважды измененных объектов выполнить объединение (команда Выполнить)

В диалоге настройки правил поддержки оставить настройки по умолчанию

Проверка результата объединения

Важно! После выполнения объединения сохранить конфигурацию (ctrl+s), НЕ выполняя обновление базы данных. Выполнить сравнение основной конфигурации и конфигурации базы данных командой Меню → Конфигурация → Сравнить конфигурации..., выбрать конфигурации Основная конфигурация и Конфигурация базы данных

В списке изменений должны оказаться только объекты подсистемы Маркет.Коннектор (с префиксом "рдв_")

Если в списке есть типовые объекты, то необходимо их вернуть к состоянию базы данных, для этого выполнить команду Меню → Конфигурация → Конфигурация базы данных → Сравнить и объединить с конфигурацией БД, в списке сравнения выделить только типовые объекты.

Завершение обновления

Для применения всех изменений необходимо обновить конфигурации базы данных (клавиша F7).

Важно! В диалоге о реорганизации информации необходимо проверить, что отсутствуют типовые объекты. Пример проблемы, когда ошибочно был изменен типовой справочник Номенклатура

Запустить базу в режиме предприятия и дождаться обновления информационной базы.

Выполнить проверку метаданных подсистемы Маркет.Коннектор (см. выше).

Для конфигураций, поддерживающих расширения, выполнить обновления дополнительного расширения подсистемы Маркет.Коннектор (см. выше).

Обновление коннектора, в случае если клиент обновил КА 2.4 на КА 2.5

Через стандартную процедуру обновления коннектора нет возможности обновить поставку на коннектор для КА 2.5.

Необходимо сделать следующее:

  • Снять Коннектор с поставки.
  • Удалить объекты от КА 2.4 (сравнение-объединение с конфигурацией поставщика).
  • Не обновляя БД (F7), накатить поставку КА 2.5, затем обновить БД.
  • После завершения процесса обновления, установки нового расширения, удалить устаревшее расширение коннектора от КА 2.4.

Описание изменений в типовых модулях

Необходимость внесения изменений в типовые модули конфигурации возникает только при внедрении подсистемы Маркет.Коннектор в конфигурации УПП 1.3 УТ 10.3

  • Для подключения обработчиков обновления информационной базы выполняется доработка функции ОбработчикиОбновления()  в модуле
    УПП 1.3: БиблиотекаОбновленияИнформационнойБазыПереопределяемый
    УТ 10.3: ОбновлениеИнформационнойБазыПереопределяемый
    Добавляемый код в функцию ОбработчикиОбновления()

    //++ МаркетКоннектор
    рдв_кн_ПодсистемыКонфигурацииПереопределяемый.ПриДобавленииОбработчиков(Обработчики);
    //-- МаркетКоннектор
    CPP
  • Для запуска обновления ИБ при изменении версий подсистем Маркет.Коннектор без изменения версии основной конфигурации дорабатывается процедуры проверки необходимости обновления в модуле ОбновлениеИнформационнойБазы,
    переопределение процедуры  НеобходимоОбновлениеИнформационнойБазы()

    В начале процедуры необходимо вставить код в УТ10

     //++ МаркетКоннекторУТ10
    Если рдв_кн_ПодсистемыКонфигурацииПереопределяемый
    	.НеобходимоОбновлениеИнформационнойБазы(НоваяВерсия) Тогда
        Возврат Истина;
    КонецЕсли;
    //-- МаркетКоннекторУТ10
    CPP

    В УПП 1.3 (нет параметра НоваяВерсия)

     //++ МаркетКоннекторУПП13
    Если рдв_кн_ПодсистемыКонфигурацииПереопределяемый.НеобходимоОбновлениеИнформационнойБазы() Тогда
        Возврат Истина;
    КонецЕсли;
    //-- МаркетКоннекторУПП13
    CPP

    В УТ 10.3 переопределить процедуру ОбновитьИнформационнуюБазу(), в начале процедуры изменить условие запуска обновления

    //++ МаркетКоннекторУТ10
    //Если НЕ (НЕ ПустаяСтрока(Метаданные.Версия)
    // И НомерВерсии <> Метаданные.Версия) Тогда
    Если Не НеобходимоОбновлениеИнформационнойБазы() Тогда
    //-- МаркетКоннекторУТ10
        Возврат ВыполненноСОшибками;
    КонецЕсли;
    CPP

    В УПП 1.3 переопределить процедуру ВыполнитьОбновлениеИнформационнойБазы(), изменить условие запуска обновления

    //++ МаркетКоннекторУПП13
    //Если НЕ НеобходимоВыполнитьОбновление(ВерсияМетаданных, ВерсияДанных) Тогда
    Если Не НеобходимоОбновлениеИнформационнойБазы() Тогда
    //-- МаркетКоннекторУПП13
        Возврат Неопределено;
    КонецЕсли;
    CPP
  • Для подключения подсистем Маркет.Коннектор к стандартным механизмам БСП (Обновление информационной базы) дорабатывается процедура ПриДобавленииПодсистем(МодулиПодсистем) в модуле
    Только в УТ 10.3: ПриДобавленииПодсистем(МодулиПодсистем)

    //++ МаркетКоннектор
    рдв_кн_ПодсистемыКонфигурацииПереопределяемый.ПриДобавленииПодсистем(МодулиПодсистем);
    //-- МаркетКоннектор
    CPP
  • Для программной доработки форм используется модуль "ЭлектронныеДокументыКлиент" ("ДополнительныеОтчетыИОбработки"  в старых версиях) в процедуре вызываемой "ПриОткрыти()" формы добавить код

    //++ МаркетКоннектор
    рдв_МодификацияФормОП.ПриОткрытииФормы(Форма);
    //-- МаркетКоннектор
    CPP
  • В старых версиях УТ 11 может быть использовать модуль "ДополнительныеОтчетыИОбработки" в процедуре "ПриСозданииНаСервере" 

    //++ МаркетКоннектор
    рдв_МодификацияФорм.ПриСозданииНаСервере(ЭтаФорма, Отказ, СтандартнаяОбработка);
    //-- МаркетКоннектор
    CPP

Внедрение в ранние версии УТ и УПП

При внедрении в ранние версии конфигураций УТ и УПП может возникнуть необходимость в перенесении дополнительных модулей и переработке функционала

  • При возникновении ошибки: не найдена процедура СтрШаблон и проч. необходимо перенести дополнительный глобальный модуль "ИнтеграцияЕГАИСУТКлиентСерверГлобальный" (для УПП 1.3) или "ИнтеграцияИСУТКлиентСерверГлобальный" (для УТ 11) из поставляемой конфигурации
  • Если в УТ 11 не найдена процедура ЗаполнитьСписокВыбора в модуле менеджера перечисления СтатусыЗаказовКлиентов, то необходимо добавить в модуль менеджера процедуру с предварительным заполнением списка статусов, за образец можно взять процедуру из поставляемой конфигурации с доработкой.

Адаптация подсистемы

Необходимость в адаптации подсистемы Маркет.Коннектор может появиться в следующих случаях:

  • Используется устаревший релиз типовой конфигурации: возникли отличия в программном интерфейсе или структуре данных:

    Например, в старых конфигурациях нужно использовать иные модули для программных доработок интерфейса и может понадобиться доработка механизма длительных операций.
  • Типовая конфигурация изменена или есть особенности заполнения данных: требуется заполнение дополнительных реквизитов или объектов.

Для адаптации подсистемы необходимо:

  • Включать возможность редактирования отдельных объектов конфигурации без снятия поддержки (для дальнейшего обновления) в конфигуратора Меню → Конфигурация → Поддержка → Настройка поддержки...
  • Использовать общий модуль "рдв_МаркетПереопределяемый", где доступны процедуры для доработки процессов:
    • Заполнения и обновления заказов
    • Выгрузки номенклатуры, цен и остатков
    • Работы вспомогательных механизмов

Общие рекомендации по доработкам

TODO: добавить общие рекомендации по доработкам подсистемы, которые позволят упростить дальнейшую поддержку и обновление подсистемы

  • Использование только переопределяемых модулей предназначенных для доработки логики подсистемы
  • Обязательное комментирование изменений с идентификацией начала и окончания внесения изменений открывающим и закрывающим комментариями
  • Минимизация изменяемого кода за счет добавления отдельного модуля и вызова необходимых методов из добавленного однострочными вставками в код

Пример адаптаций

Доработка выгрузки остатков

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

Список изменений:

  • Доработки в переопределяемом модуле:
    • Расширение списка регистров
    • Доработка процедуры заполнения изменений
    • Доработка процедуры получения остатков
  • Доработки подписок событий
    • Перед записью регистра
    • При записи регистра
  • Доработки состава типов объектов очередей
    • Регистр очередей
    • Регистр журнала очередей
  • Проверка метаданных

Доработка заполнения заказа

TODO



Добавление Коннектора в конфигурацию, содержащую в себе "Маркет"

В редких случаях бывает необходимость встроить "Коннектор" в конфигурацию, в которой уже до этого был встроен "Маркет", причем без удаления "Маркета". Т.е. необходимо сделать так, чтобы две системы работали параллельно друг с другом.
В этом случае всё делается по общему алгоритму, с некоторыми особенностями. Особенности возникают на этапе "Сравнения-Объединения" основной конфигурации и конфигурации из файла.
У некоторых объектов "Маркета" и "Коннектора" могут совпадать названия. В случае, если совпадают названия модулей, то модуль нужно объединить по сложной схеме.
Нужно собрать один общий модуль. В него поместить все процедуры и маркета и коннектора, которые отсутствуют в другом модуле.
Те процедуры, которые присутствуют в обоих модулях, необходимо проанализировать - скорей всего, они будут совпадать между собой, и отличаться только какими-то пробелами\знаками табуляции и т.д.
Такие процедуры переносить не нужно.

Также может совпадать название "ПВХ - рдв_кн_НастройкиПрограммы".".
Вернее, название совпадать не будет. В коннекторе будет название "рдв_кн_НастройкиПрограммы", а в маркете "рдв_НастройкиПрограммы" (т.е. сопоставление по-сути отработает не верно - сопоставит объекты с разными именами).
В этом случае, эту ПВХ нужно исключить из объединения, и выполнить объединение без неё.
Затем нужно создать пустую пвх с названием рдв_кн_НастройкиПрограммы, и запустить Сравнение-Объединение. В этот раз сопоставление произойдёт правильно, и можно будет перенести все изменения этого ПВХ в программу.
 

После такого объединения, нужно будет проверить, что оба ПВХ включены в свои подсистемы. Если что-то включено в лишнюю подсистему\не включено в нужную подсистему, то нужно включить возможность изменения этих подсистем, и включить туда\исключить оттуда ПВХ.
Также желательно изменить синоним обоих ПВХ - добавить в него постфикс "Маркет" или "Коннектор", чтобы их можно было отличить в пользовательском режиме.