Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Расширения - несколько активных

Расширения -  несколько активных
Я
   ЭЦ
 
15.07.21 - 12:40
Господа!

Имеется конфигурация ERP.
В ней два расширения. Оба активны, назначение у обоих - Адаптация.
Могут ли в обоих расширениях быть заимствованы одни и те-же объекты (например форма документа)
и как понять как они будут обрабатываться в случае одновременной правки.
Прошу подсказать
   Ненавижу 1С
 
1 - 15.07.21 - 12:43
(0) могут, обрабатываться последовательно
https://its.1c.ru/db/content/pubextensions/src/02_78.png?_=1623788215
   ЭЦ
 
2 - 15.07.21 - 12:44
Сори - ошибка в заголовке.
Вместо  "несколько активных обновлений" над читать "несколько активных расширений"
   acht
 
3 - 15.07.21 - 12:45
https://its.1c.ru/db/pubextensions#content:11:hdoc

Расширение с назначением Исправление предназначено для исправления ошибок в конфигурации. Поэтому оно применяется к конфигурации первым. Затем применяется расширение с назначением Адаптация. Оно содержит доработки конфигурации при внедрении у конкретного заказчика. И последним применяется расширение с назначением Дополнение. Оно содержит различные дополнительные сервисы, предназначенные для конфигурации (например, набор дополнительных отчетов).

Предполагается, что расширения с одинаковым назначением не должны «пересекаться» по функционалу и «мешать друг другу».
   acht
 
4 - 15.07.21 - 12:47
Внутри назначения порядок применения раширения неопределен. При пересечении функционала применяется схема из (1)
   ЭЦ
 
5 - 15.07.21 - 12:47
(1) А как задать какое расширение после или до какого?
(3) А что будет если они всетаки пересекаются и мешают?
   Новиков
 
6 - 15.07.21 - 12:50
(0) В этом случае, вам лучше всего сделать "кумулятивное" одно расширение, и совместить всю логику в одном расширении.

(5) >>А что будет если они всетаки пересекаются и мешают?
Выполнять в режиме 1С предприятие будет полученная одна форма, которая слепилась (если все ок) по всем расширениям.
   Garykom
 
7 - 15.07.21 - 12:51
(6) с &Вместо будет обломс
   ptiz
 
8 - 15.07.21 - 12:57
(0) Проверил. Как-то корявенько оно работает.
Платформа 8.3.18.
Захватил одну и ту же форму в 2 расширения. Изменил в обоих заголовок одного поля.
Первое - Адаптация. Второе - назначаю хоть Исправление, хоть Адаптация, хоть Дополнение - всё равно его изменения "перебивают" первое. Хотя при самом первом запуске с режимом Адаптация у второго расширения - первое "перебивало" второе.
   ЭЦ
 
9 - 15.07.21 - 13:34
(8) Я тоже подобное проделал. Но так и не понял как этим управлять.
   AlvlSpb
 
10 - 15.07.21 - 14:07
На самом деле все просто. Расширения применяются по времени создания. Первое созданное применяется первым и, если, второе пребывает изменения из первого, так тому и быть, будет как указано в последнем созданном расширении. Поэтому рекомендации итс ещё с 8.3.6 одну форму менять в одном расширении. Или делать в нескольких но не задействовать одинаковые реквизиты или элементы формы
   Ненавижу 1С
 
11 - 15.07.21 - 14:30
(10) просто надо признать, что средств для управления этим нет
   Garykom
 
12 - 15.07.21 - 15:19
(11) угу косякс
не первый уже в архитектуре платформы 1С
   Garykom
 
13 - 15.07.21 - 15:19
(12) технически надо саму конфу сделать самым первым расширением
и механизм сравнения/объединения расширений
   Garykom
 
14 - 15.07.21 - 15:20
(13)+ а и разделения тоже, чтобы одну конфу/расширение не несколько делить расширений
   Garykom
 
15 - 15.07.21 - 15:20
(14) *на несколько
   ДедМорроз
 
16 - 16.07.21 - 00:51
А всего то надо было сделать применение,как в списке расширений и стрелочки для перестановки.

Слепить одно расширение из нескольких часто чревато тем,что оно при обновлении отвалится.
Когда несколько,то не факт,что отвалятся все и сразу.
   rphosts
 
17 - 16.07.21 - 02:27
(11) Это нормально. У оракла если есть 2 триггера например на изменение разных полей 1 таблицы(update) и меняются значения обоих полей - порядок выполнения не определен... и никто от этого не страдает.

Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.