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

29.07.16

Разработка - Механизмы платформы 1С

Типовые конфигурации переходят на новую платформу 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С Программист Стажер Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Эта небольшая статья - некоторого рода шпаргалка по файловым потокам: как и зачем с ними работать, какие преимущества это дает.

23.06.2024    7412    bayselonarrend    20    

154

Механизмы платформы 1С Программист Стажер Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Пример использования «Сервисов интеграции» без подключения к Шине и без обменов.

13.03.2024    5938    dsdred    16    

80

Механизмы платформы 1С Программист Стажер Платформа 1С v8.3 Бесплатно (free)

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

24.01.2024    17626    YA_418728146    26    

71

Перенос данных 1C Механизмы платформы 1С Системный администратор Программист Стажер Платформа 1С v8.3 Бесплатно (free)

Вы все еще регистрируете изменения только на Планах обмена и Регистрах сведений?

11.12.2023    11209    dsdred    44    

130

Механизмы платформы 1С Программист Бесплатно (free)

Язык программирования 1С содержит много нюансов и особенностей, которые могут приводить к неожиданным для разработчика результатам. Сталкиваясь с ними, программист начинает лучше понимать логику платформы, а значит, быстрее выявлять ошибки и видеть потенциальные узкие места своего кода там, где позже можно было бы ещё долго медитировать с отладчиком в поисках источника проблемы. Мы рассмотрим разные примеры поведения кода 1С. Разберём результаты выполнения и ответим на вопросы «Почему?», «Как же так?» и «Зачем нам это знать?». 

06.10.2023    23748    SeiOkami    48    

135

Механизмы платформы 1С Системный администратор Платформа 1С v8.3 Бесплатно (free)

Начиная с версии платформы 8.3.22 1С снимает стандартные блокировки БД на уровне страниц. Делаем рабочий скрипт, как раньше.

14.09.2023    18814    human_new    27    

80

WEB-интеграция Универсальные функции Механизмы платформы 1С Программист Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

28.08.2023    14723    YA_418728146    7    

166
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Yashazz 4790 29.07.16 10:09 Сейчас в теме
Не хотите малопонятных, труднодиагностируемых и внезапных проблем - не связывайтесь с расширениями. Ибо они суть убожество и квинтэссенция кривых рук разработчиков платформы.
triviumfan; monkbest; +2 10 Ответить
2. Alex_E 2374 29.07.16 10:12 Сейчас в теме
(1) Yashazz, Вы не любите кошек? Вы просто не умеете их готовить! :-)
Neuroproton; +1 Ответить
7. Yashazz 4790 03.08.16 09:33 Сейчас в теме
(2) Alex_E, это я-то не умею? Смешно. Я одним из первых, смею надеяться, занялся глубоким и всесторонним изучением этого уродства. Ибо наивно полагал, что какая-то польза всё ж будет. А потом я, знаешь ли, даже публикацию накатал о некоторых нюансах расширений. А потом эксплуатация показала, что более кривой и ненадёжной хрени в 1С трудно отыскать. И я вынужден был у трёх клиентов отказаться от расширений и перейти к нормальной куроченной конфе. И это было хотя бы прозрачно, однозначно и стабильно.

Так что всем минуснувшим мою реплику - ребятки, вы просто ещё не встали как следует на эти грабли. Встанете - будет вам урок)
Andreeei; lmm; endym; AndrewVVS; +4 Ответить
8. Alex_E 2374 03.08.16 09:38 Сейчас в теме
(7) Yashazz, Я не минусовал, расширения использую со дня их появления, публикации то же есть, с что нравится и что нет на тот момент, и ни в одной конторе, где их использовал не отказался - вот такие мы разные, прикинь :-) (и во всех бухгалтериях сразу ставлю отключение регламента и пр. через расширение сразу - закрывать всякие окошки с "а Вы знаете..." хотца нет :-) Это пустяк, конечно, но решается через расширение на счет раз)
9. monkbest 114 31.08.16 14:56 Сейчас в теме
(8) Alex_E, а что Вы будите делать, когда вызов открытия этих окошек переедет в другой модуль?
т.к. при обновлении Вы проблем не знаете, то Вы даже не узнаете, что эти вызовы исчезли в одном модуле и появились в другом.
10. Alex_E 2374 31.08.16 15:28 Сейчас в теме
(9) monkbest, вообще-то это вызовет ошибку - 1С таки бейсик - компилируется по мере открытия.... А вы в продакшн без тестирование всё вываливаете? Я вот проверять пытаюсь...
3. Solovyeff 30.07.16 01:43 Сейчас в теме
(1) Yashazz, с каждой версией платформы они расширяют возможности этого механизма, как по мне, это явно лучше чем "ломать" конфигурацию.
more; Anchoret; CyberCerber; baracuda; +4 Ответить
4. baracuda 2 30.07.16 11:56 Сейчас в теме
(3) Solovyeff, пока не будет возможности переопределять любые модули и добавлять свои модули, к сожалению только расширениями не всегда можно обойтись
5. qwed557 30 30.07.16 13:48 Сейчас в теме
(4) baracuda, в 8.3.9 реализовано, осталось подождать выхода версии платформы.
CyberCerber; cleaner_it; +2 Ответить
13. starik-2005 3087 20.08.21 12:26 Сейчас в теме
(1) прошло 5 лет, все поменялось. Вы бы подписались сегодня пож этими словами?
14. Yashazz 4790 20.08.21 14:22 Сейчас в теме
(13) Однозначно подписался бы. Я уже давно махнул рукой и не коллекционирую баги расширений, но они всё столь же грубые, критичные и опасные, даже ещё хуже кое-где стало. В некоторых случаях падают Предприятие или Конфигуратор, в некоторых теряются или искажаются данные, а уж мелких милых косячков не счесть. Я ж постоянно с расширениями дело имею, к сожалению...
15. starik-2005 3087 20.08.21 15:25 Сейчас в теме
(14)
Я ж постоянно с расширениями дело имею, к сожалению...
Так баги не только из-за них - в самой платформе их тоже хватает. Но расширения помогают быстро "и без дополнительной возни в гиперпространстве" сделать простые и нужные штуковины, не особо напрягаясь. Так что, имхо, Вы тут зря мнение не поменяли. Видел ситуации, когда даже внешняя обработка приводила к падению системы - я вот их использую, и расширения (хоть и меньше). Что, от обоих отказаться и только в конфигураторе пилить? )))
16. Yashazz 4790 20.08.21 15:53 Сейчас в теме
(15) С внешками даже после замутов с профилями безопасности и "защитой от опасных действий" на порядок меньше проблем и больше стабильности, чем с расширениями. А расширения - моё мнение такое: если надо слегка изменить/добавить форму, то можно. Во всех остальных случаях - ни-ни.

Из недавнего: делаю я, значит, расширение для БП, в рамках общеизвестного 534 новые СчФ и УПД. Заимствую из конфы макет 1137, и макет 981. Дорабатываю код. Запускаю: макет 981 видит, про 1137 говорит, что такого нету. Вот нет такого общего макета, совсем. Метод "ПолучитьОбщийМакет" даёт невосстановимую ошибку. Ладно, работаю с тем, что есть. Спустя часа полтора работы понадобилось мне обновить в расширении 981-й, жму "Добавить в расширение", он меня спрашивает, обновить ли в расширении, иии... и конфигуратор тихо рушится. Ситуация воссоздаваемая, пятый раз я ронял конфигуратор, уже показывая этот "эффект" в Энидеске заказчику, который спросил, фигли так долго.

Кончилось тем, что тупо добавил в расширении свои макеты-копии типовых. И что, это называется стабильная работа? Когда бишь макеты-то в расширениях появились?.. Ладно, я молчу, что мало кто копал, как именно они "расширяются" и как себя ведёт наследование а) именованных областей, б) примечаний, в) внедрённых объектов, типа компоненты штрихкода, г) элементов управления. Да, мало кто это знает.

Но сам факт таких косяков, и невозможности выполнить вроде бы простую и давно якобы работающую операцию - характеризует.
17. starik-2005 3087 20.08.21 15:58 Сейчас в теме
(16)
новые СчФ и УПД
Один раз с этим столкнулся - просто просят иногда ерундой страдануть. Там очень древняя УТ (10.3.27, сейчас вроде уже 90-я). Да, в таком случае просто скопировал макет, добавил в него строку с документом реализации и поправил колонки (очень классное сочетание клавиш Ctrl + M - пользуйтесь) - 10 минут дел в конфигураторе, + 3 минуты на условие 01-07-2021. Скука ))
18. Yashazz 4790 20.08.21 16:06 Сейчас в теме
(17) Мне ещё параллельно надо было другие старые доработки сохранить, они ранее были в ВПФ, меня попросили, раз уж так, загнать всё в расширение. Там слегка нетипично второстепенные поля СчФ формируются, основная фишка вообще не в макетах была.

Ах да, у заимствованных макетов не все изменения свойств объединённых ячеек применяются. А иногда она в конфигураторе объединённая, а в предприятии оказывается первая-одиночная, и спасает только программно Объединить() ещё раз. От так...
19. starik-2005 3087 20.08.21 16:27 Сейчас в теме
20. e.kogan 1895 15.09.21 15:07 Сейчас в теме
(13) Вот только что - делаю расширение, малюсенькое, добавка одного реквизита к документу, вывод его на форму через код и автозаполнение перед записью через подписку.
Всё кошерно, всё штатно, ошибок при сохранении и проверках нет...
Только вот при попытке F7 валится без текста ошибки. С одним восклицательным знаком в жёлтом треугольнике и выбором - закрыть или перезапустить.
Платформа .18.1289 )

Да, валится именно тогда, когда добавляешь реквизит. Обычный строковый реквизит длины 25, неиндексируемый, без контроля заполнения, без ничего. Сколько раз так делала.
21. starik-2005 3087 15.09.21 15:10 Сейчас в теме
(20)
латформа .18.128
Ужс. Кэш чистили?
24. e.kogan 1895 15.09.21 15:12 Сейчас в теме
(21) Сейчас пойду чистить. Меня забавляет сам факт падения без ошибки.
25. starik-2005 3087 15.09.21 15:14 Сейчас в теме
(24)
Меня забавляет сам факт падения без ошибки.
Мы как-то разбирались с проблемой невозможности обновления 1С на один замечательный релиз, в котором в одним из перечислений имя содержало символ окончания файла. MS SQL просто выдавал ошибку без имени, и только при обновлении на посгресе увидели информацию о том, что имя перечисления содержит символ конца файла (да, есть такой символ). Что, перестать юзать MS SQL? ))) Кстати, файловую базу этот символ не смутил...
22. Yashazz 4790 15.09.21 15:10 Сейчас в теме
(13) Так что, ещё осталось желание юзать расширения?))
23. starik-2005 3087 15.09.21 15:11 Сейчас в теме
(22)
ещё осталось желание юзать расширения
Да, у меня с ними проблем не было давно уже.

В 1С может все вальнуться и без расширений - черный ящик.
26. e.kogan 1895 07.10.21 22:42 Сейчас в теме
(23) Ну вот с той же падавшей базой всплыло: задублились строки ТЧ ВСЕХ затронутых видов документов.
Збс?
27. starik-2005 3087 08.10.21 11:12 Сейчас в теме
28. e.kogan 1895 14.10.21 17:02 Сейчас в теме
(27) Пришлось просто всё прочёсывать и сворачивать исходя из предположения, что руками две строки с полностью идентичными реквизитами не могли заносить...
6. oslokot 194 01.08.16 21:01 Сейчас в теме
Полезная статья, спасибо. Плюсую
11. lustin 29.09.16 12:51 Сейчас в теме
(0) меня больше порадовало вот это https://github.com/Oxotka?tab=repositories

добавил плюсики ко всем вашим статьям ;-)
12. buval 66 28.08.20 11:12 Сейчас в теме
Только пробую расширения. Мне статья помогла
Оставьте свое сообщение