Изменить префикс в номере документа при изменении магазина (Розница 2.3)
Конфигурация Розница 2.3, релиз 2.3.11.43
Пользователем поставлена задача – создать префиксы в справочнике Магазины и прописать их работу при вводе новых документов или изменении уже существующих.
С вводом новых документов проблем не возникло.
В справочник «Магазины» добавила реквизит «Префикс».
В Общем модуле, в процедуре ПрефиксацияОбъектовСобытия. УстановитьПрефикс(Источник, Префикс, УстановитьПрефиксИнформационнойБазы, УстановитьПрефиксОрганизации)
прописала формирование префикса с учетом префикса магазина.
А вот с изменением префикса при изменении магазина в документах засада. Так как в Общем модуле нет общей процедуры, отрабатывающей изменения магазина в любом документе, создала Подписку на события и привязалась к событию ПередЗаписью для документов-объектов. На скрине для одного вида документа (для тестирования)
В обработчике подписки создала незамысловатую процедуру УстановитьПрефиксПередЗаписью(Источник, Отказ, РежимЗаписи, РежимПроведения), отрабатывающий типовую процедуру из ПрефиксацияОбъектовСобытия. УстановитьПрефикс
УстановитьПрефикс(Источник, "", Истина, Истина);
Если смотреть отладчиком, то префикс даже меняется на новый. Но только в отладчике…
Он ни фига не меняется в документе - не в форме, не в объекте.
Какие нюансы я не учла, подскажите, пожалуйста?
Или как еще можно поменять префиксы во всех документах при изменении магазина, не меняя модуль формы каждого документа?
Ниже приложила скрины.
Пользователем поставлена задача – создать префиксы в справочнике Магазины и прописать их работу при вводе новых документов или изменении уже существующих.
С вводом новых документов проблем не возникло.
В справочник «Магазины» добавила реквизит «Префикс».
В Общем модуле, в процедуре ПрефиксацияОбъектовСобытия. УстановитьПрефикс(Источник, Префикс, УстановитьПрефиксИнформационнойБазы, УстановитьПрефиксОрганизации)
прописала формирование префикса с учетом префикса магазина.
А вот с изменением префикса при изменении магазина в документах засада. Так как в Общем модуле нет общей процедуры, отрабатывающей изменения магазина в любом документе, создала Подписку на события и привязалась к событию ПередЗаписью для документов-объектов. На скрине для одного вида документа (для тестирования)
В обработчике подписки создала незамысловатую процедуру УстановитьПрефиксПередЗаписью(Источник, Отказ, РежимЗаписи, РежимПроведения), отрабатывающий типовую процедуру из ПрефиксацияОбъектовСобытия. УстановитьПрефикс
УстановитьПрефикс(Источник, "", Истина, Истина);
Если смотреть отладчиком, то префикс даже меняется на новый. Но только в отладчике…
Он ни фига не меняется в документе - не в форме, не в объекте.
Какие нюансы я не учла, подскажите, пожалуйста?
Или как еще можно поменять префиксы во всех документах при изменении магазина, не меняя модуль формы каждого документа?
Ниже приложила скрины.
Прикрепленные файлы:
По теме из базы знаний
Ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
(1)
Имкнно ДокументОбъектТакойто.Записать();
(1)
Какие нюансы я не учла, подскажите, пожалуйста?
В какой момент происходит запись документа с новым префиксом.
Имкнно ДокументОбъектТакойто.Записать();
(1)
Или как еще можно поменять префиксы во всех документах при изменении магазина, не меняя модуль формы каждого документа?
- Обработкой изменения нумерации - их на форуме достаточно.
Вакансии
Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)