Убрать крайние пробелы у записываемого комментария

Учебные задачи

Перед серверной записью меняем настоящий объект из параметра ТекущийОбъект, а не произвольную копию строки. Контекст: Общие → Общие формы → УчебныеКонтрольныеКонстанты.

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

Модуль управляемой формы: Общие → Общие формы → УчебныеКонтрольныеКонстанты. Серверная и клиентская директивы уже указаны; не вставляйте процедуру внутрь другой.

Подготовка

  1. Все действия выполняйте только в отдельной учебной конфигурации.

  2. Создайте две учебные константы: УчебноеКонтрольноеЧисло (Число 15.2), УчебныйКомментарий (Строка 100).

  3. Создайте управляемую форму констант УчебныеКонтрольныеКонстанты конструктором форм: основной реквизит Объект типа КонстантыНабор, в наборе обе созданные константы. Не используйте форму одной константы.

  4. Основной реквизит формы должен называться Объект. Если мастер дал другое имя, переименуйте основной реквизит и исправьте пути данных его полей в редакторе формы.

  5. Выведите основной числовой реквизит и комментарий на форму. Добавьте отдельный реквизит формы Статус (Строка 200), выведите его недоступным для редактирования.

  6. Откройте Общие → Общие формы → УчебныеКонтрольныеКонстанты → Модуль формы. Назначьте событие ПередЗаписьюНаСервере одноимённой процедуре. Обновите только учебную базу.

  7. Примеры соседних событий можно объединить в одном модуле: каждая процедура должна существовать только один раз. Для обычного опыта задайте число 25 и комментарий Учебный объект.

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

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

  1. Платформа вызывает назначенный обработчик, передавая параметры именно своего расширения формы.

  2. Перед серверной записью меняем настоящий объект из параметра ТекущийОбъект, а не произвольную копию строки.

  3. Работа ведётся с реквизитами объекта, который полностью объявлен в подготовке.

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

  1. Введите комментарий с пробелами по краям и запишите: сохранённая строка без крайних пробелов.

  2. Закройте и снова откройте объект: результат нормализации сохранён.

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

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

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

  1. Событие выполняется вне транзакции записи: здесь нельзя считать объект уже записанным.

  2. Не вызывайте Записать повторно из обработчика записи формы.

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

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

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

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

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