Порядок выполнения подписок на события и опасности с ними при обновлении

23.10.16

База данных - Обновление 1С

Коротко по сути: подписки на события для одинаковых источников и действия выполняются в порядке размещения подписок в конфигураторе сверху вниз. Т.е. если для документа Реализация товаров в конфигурации есть две подписки на событие ПриЗаписи, то в начале выполнится та, которая расположена выше. При этом если в типовой конфигурации есть добавленные свои подписки, то при обновлении конфигурации на новый релиз поставщика, может измениться порядок размещения объектов и добавленные подписки могут "съехать" выше типовых. Если в конфигурации есть типовая подписка на это же событие с этим же источником, то может измениться и порядок вызова типовой и добавленной подписки, что может привести к изменению логики работы.

Собственно сабж, обновил доработанную базу Бухгалтерия 3.0, всё проверил, пересмотрел, всё правильно. Порадовался и спать. Добавленные модули и подписки даже не посмотрел, что там может случиться? :)

А случиться, оказывается, может, слетела доработанная нумерация счетов-фактур и реализаций. (Префиксы должны формироваться по дате, что б  была сквозная нумерация за каждый день: 161011-0001, 161011-0002 и тд,)

Начал разбираться, оказалось, что добавленная подписка на событие ПриУстановкеНовогоНомера съехала вверх и оказалась выше типовой подписки ПриУстановкеНовогоНомера, которая формирует префикс по узлу обмена и организации. В итоге в начале запускалась доработанная подписка, а потом типовая добавляла стандартный префикс, получался номер типа ОРИБ-161011, дальше не хватает символов, ошибка не уникального номера и тд.

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

Подписки на события порядок выполнения обновление базы

См. также

Обновление 1С Программист Стажер Платформа 1С v8.3 Бесплатно (free)

Наша компания перманентно занимаемся обновлением «старых» и, к тому же, сильно нетиповых конфигураций. Хочется поделиться опытом по работе с важным этапом подобных проектов — поиску и оптимизации промежуточных конфигураций 1С. Первый материал будет полезен начинающим специалистам 1С, а в последующих, надеемся, найдется интересная информация и для матерых разработчиков.

04.06.2025    2333    1c-izh    4    

14

Обновление 1С Платформа 1С v8.3 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Абонемент ($m)

Добавление в Справочник "Статьи затрат" отсутствующих предопределённых элементов.

1 стартмани

23.05.2025    244    0    qrw    0    

0

БСП (Библиотека стандартных подсистем) Обновление 1С Программист 1C:ERP Бесплатно (free)

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

29.04.2025    1872    krasnoshchekovpavel    7    

16

Рефакторинг и качество кода Обновление 1С Программист Платформа 1С v8.3 Бесплатно (free)

Методика, описанная в статье, выработана при переезде с 1С:ДО 2.1 на 1С:ДО 3.0. Может также применяться при переходе с 1С:УПП на 1C:ERP, 1C:ERP на 1C:ERP УХ и т. п. Учтены все необходимые доработки при переезде на новую конфигурацию и предупреждены возможные ошибки.

21.04.2025    1970    PROSTO-1C    4    

4

Обновление 1С Программист Платформа 1С v8.3 1C:Бухгалтерия 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1C:ERP Абонемент ($m)

Внешняя обработка для обновления расширений и дополнительных обработок 1С из GitHub. Поддерживает как публичные, так и приватные репозитории, фильтрацию релизов по версии конфигурации, скачивание .cfe, .epf, .erf.

1 стартмани

15.04.2025    1784    6    Aleksandr    0    

21

Обновление 1С Системный администратор Программист Платформа 1С v8.3 Абонемент ($m)

Скрипт для загрузки конфигурации в 1С, обновления базы и архивации файла с логированием.

1 стартмани

02.04.2025    931    3    DoubleT    8    

5

Обновление 1С Linux Системный администратор Программист Бесплатно (free)

Пошаговая инструкция для обновления платформы 1С на сервере Linux Debian.

28.03.2025    1630    California_Dreaming    2    

5

Обновление 1С Программист Платформа 1С v8.3 Россия Бесплатно (free)

При обновлении релиза конфигурации УТ появилась ошибка "Ошибка формата потока".

21.03.2025    1322    Gummi_pr    10    

8
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. qwinter 684 12.10.16 09:40 Сейчас в теме
Коротко по сути: подписки на события для одинаковых источников и действия выполняются в порядке размещения подписок в конфигураторе сверху в низ.
Серьезное заблуждение. Подписки могут выполняться в любом порядке.
Windsor77; tetraren; portwein; Ali1976; theshadowco; dgolovanov; +6 1 Ответить
3. dgolovanov 12.10.16 11:05 Сейчас в теме
(1) qwinter, на практике выполняются сверху вниз, я не встречал ситуации, чтобы было иначе. Но разработчики однозначно говорят, что ориентироваться на этот порядок нельзя и что "Подписки могут выполняться в любом порядке".
freeek; Merkalov; portwein; de0nis; +4 Ответить
4. de0nis 523 12.10.16 11:40 Сейчас в теме
(1) qwinter, где-то для 8.2 видел видел информацию, что по порядку, сейчас говорят, что в любом порядке, но на деле ни разу не сталкивался, что б не в порядке в конфигурации вызывались. Видимо не хотят отвечать, в случае изменений в алгоритмах платформы. :)) Описанная ошибка в частности это подтверждает, изменение порядка в конфигураторе, приводит к изменению порядка вызова. (платформа 8.3.8.2054)
Еще момент, что подписки с источником общего типа ДокументОбъект, СправочникОбъект выполняются позже, чем с источником конкретного типа, даже если он составной.
mike1970; +1 Ответить
11. 20tanush 21.05.18 12:17 Сейчас в теме
(4)
Еще момент, что подписки с источником общего типа ДокументОбъект, СправочникОбъект выполняются позже, чем с источником конкретного типа, даже если он составной.

Увы, убеждаюсь, что это не так.
7. cleaner_it 208 19.10.16 13:19 Сейчас в теме
(1) qwinter, раньше, может, выполнялись в произвольном порядке. Проблему, решенную автором, подтверждаю - месяц назад подобную исправил. Решил точно переносом своей подписки в конец всех подписок.
freeek; de0nis; swiss-garant; +3 Ответить
2. TODD22 20 12.10.16 10:50 Сейчас в теме
А случиться, оказывается, может, слетела доработанная нумерация счетов-фактур и реализаций. (Префиксы должны формироваться по дате, что б была сквозная нумерация за каждый день: 161011-0001, 161011-0002 и тд,)

И как налоговая относится к такой нумерации? Бухи какую только ерунду не придумывают :)
rudnitskij; +1 Ответить
5. Armando 1402 12.10.16 18:53 Сейчас в теме
Приложения должны быть устойчивы к такого рода изменениям. Разрабатывать на так, будто не существует никакой зависимости
6. de0nis 523 12.10.16 19:04 Сейчас в теме
(5) Armando, ну для разработок с "нуля" - однозначно, а при доработке типовых конфигураций, не всегда целесообразно ради небольших доработок вносить изменения в типовой функционал, особенно в Бухгалтерии, которая требует регулярного обновления.
8. lvictor58 138 20.10.16 10:24 Сейчас в теме
А не проще ли не нужные подписки просто отключать?. Ну и естественно при обновлении прослеживать "новинки".
И если честно такая нумерация меня тоже удивила: вроде как она должна быть сквозной в пределах года.
9. de0nis 523 20.10.16 13:56 Сейчас в теме
(8) lvictor58, А как их отключать без внесения изменений в типовой функционал? Если типовой документ вызывает типовую подписку? И в данной конкретной задаче типовая тоже нужна, только для всех остальных документов кроме реализации и СФ. Если отключить эти два документа из составного типа, то ОЧЕНЬ не удобно будет обновлять..
Про нумерацию точно не скажу, не юрист, но уже не первый раз сталкиваюсь с такой. Очень удобно когда заносятся документы и текущим и задним числом. Что налоговая про это говорит, не знаю, но по моей информации это допустимо, нужно оформить только соответствующий приказ и возможно в учетной политике внести изменения.
10. rus128 2 20.10.16 17:33 Сейчас в теме
все хорошо, но немного смущают описки ("сверху в низ" - правильно писать слитно) и опечатки ("получадлся").
Оставьте свое сообщение