Difference between revisions of "Студия/OnBeforeElementSaved"

From SunFlurry wiki
Jump to: navigation, search
 
m (1 revision imported)
 
(No difference)

Latest revision as of 08:55, 7 February 2021

  OnBeforeElementSaved (Визуальные события)
Применимость:Таблица значений
Тип события:Прерывающее
Статус разработки: Реализована

Событие, возникающее непосредственно перед записью элемента БД в таблице элементов, либо строки в строчной части элемента. Событие вызывается только для таблиц, связанных со строчной частью редактируемого объекта или таблиц, отображающих элементы справочника или документы, когда их редактирование происходит непосредственно в таблице (форма редактирования не открывается). Событие позволяет запретить сохранение строки (или объекта).

Аргументы

  • <Element (DB)> - Элемент, который будет сохранен после окончания выполнения события. Для строчных частей переменная содержит пустое значение.
  • <Line (INT)> - Для строчных частей содержит номер строки строчной части, для которой происходит редактирование. Для обычных элементов, эта переменная равна нулю.
  • <Result (INT)> - (возможен аргумент-переменная (ByRef)) Переменная результата может принимать значения:
    • 0 (по умолчанию) -- Разрешить сохранение элемента.
    • 1 -- Запретить сохранение, запретить потерю фокуса редактируемой строкой.

Примеры

//Пример обработчика OnBeforeElementSaved

If Length(Trim(Element.Name))<2 Then
  Box("Вы не заполнили наименование улицы!",Q_STOP);
  Result:=1;
  Exit;
EndIf;

//Заполнить реквизиты, если они не были заполнены
If Element.ТипУлицы.Selected()=0 Then
  Element.ТипУлицы:=Enum.ТипыУлиц.Улица;
EndIf;