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

23.10.16

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

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

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

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

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

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

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

См. также

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

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

02.07.2025    484    1c-izh    2    

7

DevOps и автоматизация разработки Обновление 1С Системный администратор Программист 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление холдингом Абонемент ($m)

Продолжаем делиться опытом ICL SOFT – в этой статье рассказываем о сложном обновлении сильно доработанной конфигурации "1С:ERP Управление холдингом с версии 3.1.8.15" до актуальной версии редакции 3.2. Публикации о сложных обновлениях, которые можно найти в открытых источниках, содержат мало подробной информации об использованных инструментах и решениях. Часто в них отсутствует информация о том, что находится под капотом этих решений. Будем рады, если наша статья окажется полезной

1 стартмани

01.07.2025    646    vladimir_iclsoft    1    

15

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

Тестовая база обновлена через все ключевые релизы, всё протестировано, остатки сведены, вы готовы обновить «боевую» базу, но…по замерам для этого потребуется целая неделя, а у вас есть всего пара выходных. Знакомая ситуация? Расскажем, как увеличить скорость отработки промежуточных конфигураций!

18.06.2025    1740    1c-izh    12    

8

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

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

04.06.2025    3048    1c-izh    11    

16

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

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

1 стартмани

23.05.2025    389    0    qrw    0    

0

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

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

29.04.2025    2264    krasnoshchekovpavel    7    

18

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

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

21.04.2025    2525    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    1972    7    Aleksandr    0    

21
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
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 530 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 198 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 530 12.10.16 19:04 Сейчас в теме
(5) Armando, ну для разработок с "нуля" - однозначно, а при доработке типовых конфигураций, не всегда целесообразно ради небольших доработок вносить изменения в типовой функционал, особенно в Бухгалтерии, которая требует регулярного обновления.
8. lvictor58 138 20.10.16 10:24 Сейчас в теме
А не проще ли не нужные подписки просто отключать?. Ну и естественно при обновлении прослеживать "новинки".
И если честно такая нумерация меня тоже удивила: вроде как она должна быть сквозной в пределах года.
9. de0nis 530 20.10.16 13:56 Сейчас в теме
(8) lvictor58, А как их отключать без внесения изменений в типовой функционал? Если типовой документ вызывает типовую подписку? И в данной конкретной задаче типовая тоже нужна, только для всех остальных документов кроме реализации и СФ. Если отключить эти два документа из составного типа, то ОЧЕНЬ не удобно будет обновлять..
Про нумерацию точно не скажу, не юрист, но уже не первый раз сталкиваюсь с такой. Очень удобно когда заносятся документы и текущим и задним числом. Что налоговая про это говорит, не знаю, но по моей информации это допустимо, нужно оформить только соответствующий приказ и возможно в учетной политике внести изменения.
10. rus128 2 20.10.16 17:33 Сейчас в теме
все хорошо, но немного смущают описки ("сверху в низ" - правильно писать слитно) и опечатки ("получадлся").
Оставьте свое сообщение