gifts2017

Переводим расширения на 8.3.8. Памятка.

Опубликовал Яковлевич Никита (mrXoxot) в раздел Программирование - Практика программирования

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

Коллеги, всем здравствуйте.

На днях вышла тестовая Бухгалтерия Предприятия с отключенным режимом совместимости с платформой 8.3.6.
А значит в этой версии используется новый движок, который по-новому отрисовывает формы.
Прочитать про это можно в Зазеркалье.

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

Памятка:

1. Переводим расширение на новую платформу
2. Устраняем проблемы подключения в новой версии
3. Обновляем формы в расширении
4. Приводим форму к новым правилам движка
5. Проверяем расширение в режиме предприятия
6. Полезные материалы


1. Переводим расширение на новую платформу

Для этого следует привести режим совместимости расширения к режиму совместимости конфигурации.
В версии Бухгалтерия Предприятия установлены следующие свойства:



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



2. Устраняем проблемы подключения

Для этого запускаем конфигурацию в режиме предприятия и смотрим взлетело или нет.
Ошибки, из-за которых не удалось подключить расширение, можно посмотреть в журнале регистрации
(Администрирование - Поддержка и обслуживание - Журнал регистрации)
Нас интересуют события - “Сеанс. Ошибка применения расширения конфигурации”:

Чаще всего проблема подключения решается удалением лишнего реквизита или объекта. 

Основная сложность в том, что расширение не выдает сразу все ошибки (кстати, эта проблема решена в 8.3.9).
Поэтому требуется последовательно запускать конфигурации после исправления каждой ошибки.
Чтобы было удобно запускать журнал регистрации - добавим его в избранное:



3. Обновляем формы в расширении 

Для этого в каждой измененной форме нажимаем на “Обновить расширение формы”
С помощью этой команды мы заново подгружаем форму основной конфигурации в расширение.

 

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


4. Приводим форму к правилам нового движка. 

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

Я составил следующий порядок действий:

  • Убираем все декорации, которые использовались для отступов.
    Вместо них теперь используются группы.
  • Смотрим, что все выглядит хорошо.
    Если что-то пошло не так, то смотрим статью.
    Если все хорошо, то двигаемся дальше.
  • Проверяем новые свойства платформы “Объединенная”, “АвтомаксимальнаяШирина” и “АвтомаксимальнаяВысота”.
    Просто смотрим, что в этих свойства установлены умолчания платформы и форма из-за этого не разъезжается.


5. Проверяем расширение в режиме предприятия

Запускаем конфигурацию и радуемся тому, что все стало хорошо. 


Полезные материалы по теме:

Рекомендации по адаптации форм к 8.3.7
Зазеркалье
Полезные советы для разработки расширений 

Если возникли какие-то вопросы - пишите, попробуем вместе разобраться!

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Яков Коган (Yashazz) 29.07.16 10:09
Не хотите малопонятных, труднодиагностируемых и внезапных проблем - не связывайтесь с расширениями. Ибо они суть убожество и квинтэссенция кривых рук разработчиков платформы.
2. Алексей Ермилов (Alex_E) 29.07.16 10:12
(1) Yashazz, Вы не любите кошек? Вы просто не умеете их готовить! :-)
3. Oleg Solovyeff (Solovyeff) 30.07.16 01:43
(1) Yashazz, с каждой версией платформы они расширяют возможности этого механизма, как по мне, это явно лучше чем "ломать" конфигурацию.
CyberCerber; baracuda; +2 Ответить 1
4. Олег Дмитров (baracuda) 30.07.16 11:56
(3) Solovyeff, пока не будет возможности переопределять любые модули и добавлять свои модули, к сожалению только расширениями не всегда можно обойтись
5. tixis1c tixis1c (qwed557) 30.07.16 13:48
(4) baracuda, в 8.3.9 реализовано, осталось подождать выхода версии платформы.
CyberCerber; cleaner_it; +2 Ответить
6. Павел Александрович (oslokot) 01.08.16 21:01
Полезная статья, спасибо. Плюсую
7. Яков Коган (Yashazz) 03.08.16 09:33
(2) Alex_E, это я-то не умею? Смешно. Я одним из первых, смею надеяться, занялся глубоким и всесторонним изучением этого уродства. Ибо наивно полагал, что какая-то польза всё ж будет. А потом я, знаешь ли, даже публикацию накатал о некоторых нюансах расширений. А потом эксплуатация показала, что более кривой и ненадёжной хрени в 1С трудно отыскать. И я вынужден был у трёх клиентов отказаться от расширений и перейти к нормальной куроченной конфе. И это было хотя бы прозрачно, однозначно и стабильно.

Так что всем минуснувшим мою реплику - ребятки, вы просто ещё не встали как следует на эти грабли. Встанете - будет вам урок)
8. Алексей Ермилов (Alex_E) 03.08.16 09:38
(7) Yashazz, Я не минусовал, расширения использую со дня их появления, публикации то же есть, с что нравится и что нет на тот момент, и ни в одной конторе, где их использовал не отказался - вот такие мы разные, прикинь :-) (и во всех бухгалтериях сразу ставлю отключение регламента и пр. через расширение сразу - закрывать всякие окошки с "а Вы знаете..." хотца нет :-) Это пустяк, конечно, но решается через расширение на счет раз)
9. Антон Антонов (monkbest) 31.08.16 14:56
(8) Alex_E, а что Вы будите делать, когда вызов открытия этих окошек переедет в другой модуль?
т.к. при обновлении Вы проблем не знаете, то Вы даже не узнаете, что эти вызовы исчезли в одном модуле и появились в другом.
10. Алексей Ермилов (Alex_E) 31.08.16 15:28
(9) monkbest, вообще-то это вызовет ошибку - 1С таки бейсик - компилируется по мере открытия.... А вы в продакшн без тестирование всё вываливаете? Я вот проверять пытаюсь...
11. Алексей Лустин (lustin) 29.09.16 12:51
(0) меня больше порадовало вот это https://github.com/Oxotka?tab=repositories

добавил плюсики ко всем вашим статьям ;-)
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа