Вызывается перед началом интерактивного добавления строки.
Синтаксис
ПередНачаломДобавления(<Отказ>, <Копирование>, <Родитель>, <ЭтоГруппа>, <Параметр>)Полное описание, параметры и ограничения
ТаблицаФормы.ПередНачаломДобавления (FormTable.BeforeAddRow)
ТаблицаФормы (FormTable)
ПередНачаломДобавления (BeforeAddRow)
Доступен, начиная с версии 8.2.
Синтаксис:
ПередНачаломДобавления(<Отказ>, <Копирование>, <Родитель>, <ЭтоГруппа>, <Параметр>)
Параметры:
<Отказ>
Тип: Булево.
Признак отказа от добавления объекта. Если в теле процедуры-обработчика установить данному параметру значение Истина, то добавление объекта выполнено не будет.
Значение по умолчанию: Ложь.
<Копирование>
Тип: Булево.
Определяет режим копирования. Если установлено Истина, то происходит копирование строки.
<Родитель>
Тип: Неопределено, СправочникСсылка.<Имя справочника>, ПланСчетовСсылка.<Имя плана счетов>.
Ссылка на элемент, который будет использован при добавлении в качестве родителя.
<ЭтоГруппа>
Тип: Булево.
Признак добавления группы.
Истина - будет добавлена группа.
<Параметр>
Тип: Произвольный.
Параметр команды, выполняемой при добавлении строки в таблицу.
Для стандартной команды "Создать по параметру" содержит тип создаваемого документа.
В остальных случаях значение параметра равно Неопределено.
Значение по умолчанию: Неопределено.
Описание:
Вызывается перед началом интерактивного добавления строки.
Доступность:
Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, мобильное приложение (клиент).
Примечание:
В обработчике данного события нельзя использовать серверные методы формы с директивой компиляции &НаСервере, а также изменять свойства, которые могут привести к серверному вызову.
Использование в версии:
Доступен, начиная с версии 8.2.
Описание изменено в версии 8.3.15.
Методическая информация
Практические примеры
Ограничить учебную таблицу пятью строками
Ограничение применяется перед интерактивным добавлением, включая копирование.
Где и как запускать
Клиентский модуль собственной управляемой формы. Параметр Элемент передаёт платформа; он уже включён в сигнатуру.
Подготовка
Создайте внешнюю учебную обработку с управляемой формой. Реквизит формы Товары — ТаблицаЗначений: Наименование (Строка 100), Количество (Число 10.0), Фиксирована (Булево). Перетащите Товары на форму; имя элемента-таблицы тоже Товары.
Разрешите интерактивное добавление, изменение и удаление строк, редактирование непосредственно в таблице. Добавьте реквизиты формы ИтогКоличество (Число 10.0), Статус (Строка 200), РазрешитьУдаление (Булево) и выведите их на форму.
Для уроков с существующей строкой вручную добавьте Книга, количество 2, Фиксирована Ложь; ещё одну строку Ручка, количество 3. Данные находятся в форме, не в справочнике или документе.
В свойствах элемента Товары назначьте указанному событию процедуру из примера. Вставляйте её на уровне модуля формы; открывайте обработку в тонком клиенте учебной базы.
Событие ПередНачаломДобавления назначьте процедуре ТоварыПередНачаломДобавления.
&НаКлиенте
Процедура ТоварыПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, ЭтоГруппа, Параметр)
Если Товары.Количество() >= 5 Тогда
Отказ = Истина;
Сообщить("В учебной таблице разрешено не больше пяти строк");
КонецЕсли;
КонецПроцедурыРазбор по шагам
Платформа передаёт элемент таблицы в параметре Элемент.
Ограничение применяется перед интерактивным добавлением, включая копирование.
Обработчик работает только с реквизитами и строками из подготовки.
Как проверить результат
Добавьте строки до количества 5: шестая не добавляется.
Копирование шестой строки тоже отменяется этим событием.
Ожидаемый результат
Ограничить учебную таблицу пятью строками для собственной таблицы формы.
На что обратить внимание
Эти данные не являются строками рабочего динамического списка.
Не вызывайте серверные процедуры из этих клиентских обработчиков и не заменяйте ими проверки модуля объекта базы.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.