ПланВидовХарактеристикОбъект.<Имя плана видов характеристик>.ПриУстановкеНовогоКода

События · OnSetNewCode

Возникает в момент, когда выполняется установка нового кода.

Синтаксис

ПриУстановкеНовогоКода(<СтандартнаяОбработка>, <Префикс>)
Полное описание, параметры и ограничения

ПланВидовХарактеристикОбъект.<Имя плана видов характеристик>.ПриУстановкеНовогоКода (ChartOfCharacteristicTypesObject.<Chart of characteristic types name>.OnSetNewCode)

ПланВидовХарактеристикОбъект.<Имя плана видов характеристик> (ChartOfCharacteristicTypesObject.<Chart of characteristic types name>)

ПриУстановкеНовогоКода (OnSetNewCode)

Доступен, начиная с версии 8.0.

Синтаксис:
ПриУстановкеНовогоКода(<СтандартнаяОбработка>, <Префикс>)
Параметры:

<СтандартнаяОбработка>
Тип: Булево.
В данный параметр передается признак выполнения стандартной (системной) обработки события. Если в теле процедуры-обработчика установить данному параметру значение Ложь, стандартная генерация нового кода производиться не будет.
Значение по умолчанию: Истина.

<Префикс>
Тип: Строка.
Префикс, который будет использоваться для генерации кода. Может быть изменен в процедуре-обработчике события.
Описание:

Возникает в момент, когда выполняется установка нового кода.

Доступность:

Сервер, толстый клиент, внешнее соединение.

Замечание:

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

Доступен, начиная с версии 8.0.

Методическая информация

Практические примеры

Добавить префикс к штатно генерируемому коду: УчебныеХарактеристики

Возникает в момент, когда выполняется установка нового кода. Изменяется параметр Префикс, не весь код. Здесь код получен в памяти; запись остаётся отдельным действием.

Где и как запускать

Модуль объекта УчебныеХарактеристики. Дополнительный блок — тело отдельной серверной команды учебной обработки.

Подготовка

  1. Работайте только в собственной пустой учебной конфигурации. В Конфигураторе создайте ПланВидовХарактеристик УчебныеХарактеристики; не добавляйте эти учебные объекты в рабочую базу.

  2. Код — строковый длиной 10, наименование длиной 100. Для справочника, плана обмена и плана видов характеристик включите автонумерацию. Для счетов и видов расчёта код назначается явно в примере.

  3. У плана видов характеристик разрешите тип значения Число. Новый элемент получает ТипЗначения = Новый ОписаниеТипов("Число").

  4. Добавьте реквизиты Комментарий (Строка 100), Лимит (Число 15.2 с разрешённым отрицательным знаком), ЗапретУдаления (Булево). Не делайте их автоматически обязательными: дополнительные правила описаны отдельными обработчиками.

  5. Откройте ПланыВидовХарактеристик → УчебныеХарактеристики → Модуль объекта и вставьте основной обработчик на уровне модуля без директивы НаКлиенте.

  6. Дополнительный блок запускайте в теле серверной команды собственной учебной обработки. Он вызывает настоящий метод подготовленного объекта; обработчик события вручную не вызывайте.

  7. Каждое событие проверяйте как отдельный урок. Обновите только учебную базу; примеры не исполняются HTML-справочником.

Процедура ПриУстановкеНовогоКода(СтандартнаяОбработка, Префикс)
    Если ПустаяСтрока(Префикс) Тогда
        Префикс = "УЧ";
    КонецЕсли;
    Сообщить("Префикс нового кода: " + Префикс);
КонецПроцедуры
Настоящий вызов события подготовленным объектом
Объект = ПланыВидовХарактеристик.УчебныеХарактеристики.СоздатьЭлемент();
Объект.Наименование = "Учебная карточка";
Объект.ТипЗначения = Новый ОписаниеТипов("Число");
Объект.Лимит = 100;
Объект.Комментарий = "Учебный пример";
Объект.УстановитьНовыйКод("");
Сообщить(Объект.Код);

Разбор по шагам

  1. Дополнительный код создаёт реальный объект УчебныеХарактеристики штатным менеджером.

  2. Изменяется параметр Префикс, не весь код. Здесь код получен в памяти; запись остаётся отдельным действием.

  3. Параметры события передаёт платформа; модуль обращается к собственным реквизитам из подготовки.

Как проверить результат

  1. УстановитьНовыйКод с пустым префиксом формирует строковый код, начинающийся с УЧ.

  2. СтандартнаяОбработка не выключается: номерную часть генерирует платформа, а не присвоение константы всем объектам.

Ожидаемый результат

Добавить префикс к штатно генерируемому коду для подготовленного учебного объекта.

На что обратить внимание

  1. Работайте только с объектом, созданным дополнительным кодом, и только в своей учебной базе.

  2. Сообщение внутри события записи не доказывает завершение всей транзакции; не отправляйте оттуда письма и не вызывайте внешние сервисы.

  3. Правила объекта не надо обходить повторной записью из его же обработчика.

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

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.