DB.Mark

From SunFlurry wiki
Jump to: navigation, search
  Mark (Установка или снятие пометки удаления объекта)
Объект:Объект базы данных
Статус разработки: Реализована
Тип:Функция
Обращение к БД:Сервер и БД
Исключения:Невозможно превратить в число
Визуальность:Нет

Функция производит удаление или отменяет удаления документа или элемента справочника. Если документ до удаления был обработан, функция также пытается отменить обработку документа. Также может быть инициировано удаление подчиненных объектов, если в этом есть необходимость. Функция также вызывает изменение статуса формы, если объект открыт для редактирования визуально.

Синтаксис

DB.Mark(<Удалить 1, отменить удаление 0 (INT)>,<Режим удаления подчиненных элементов (INT)>,<Элемент для изменения триггера или значение триггера (DB,INT)>):<Результат (INT)>

Аргументы

  • <Удалить 1, отменить удаление 0 (INT)> - Задает режим функции:
    • 1 -- установить пометку удаления на объекте. Если функция выполняется на обработанном документе, будет произведена попытка отменить обработку.
    • 0 -- снять пометку удаления с объекта.
  • <Режим удаления подчиненных элементов (INT)> - (необязательный аргумент) Задает режим установки или снятия пометки удаления для подпапок и элементов справочников, находящихся в данной папке справочника, и для элементов других справочников, подчиненных данному элементу. По умолчанию этот аргумент равен 0 (не устанавливать или снимать пометку удаления для таких элементов).
  • <Элемент для изменения триггера или значение триггера (DB,INT)> - (необязательный аргумент) Параметр может иметь следующий тип:
    • Для типа объект базы данных, параметр определяет дополнительный элемент (чаще всего элемент родителя), на котором нужно установить триггер изменения (1) в случае, если пометка элемента изменена успешно. Таким образом, удобно устанавливать триггеры на родителях элементов без триггеров (однако, можно подставлять не только элементы родителей). Система самостоятельно выполняет установку триггера на родителе элемента в случае, если сам элемент не имеет триггера, а его родитель имеет, и удаление происходит из пользовательского интерфейса (не программно).
    • Для типа целое число, параметр определяет значение триггера текущего объекта после выполнения функции, если объект имеет триггер изменения. По умолчанию для объектов с триггерами удаление (или отмена удаления) будет вызывать их установку в единицу, но использование данного параметра позволяет установить произвольное значение, таким образом исключается дополнительная операция SetTrigger. Нужно также заметить, что это значение триггера будет транслировано на все изменяемые подчиненные элементы (к примеру, элементы внутри удаляемой папки).

Возвращаемое значение

Возвращается 1, если установка/снятие пометки прошло успешно, иначе возвращает 0 (были обнаружены блокировки объектов и пр.).

Примеры

//Пример производит удаление найденного элемента справочника Номенклатура
aEl:=Ref.Номенклатура;
aEl.Find("Code","000000008636");
aEl.Mark(1,0);