Logs.Write

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

Функция позволяет добавить одну запись в лог базы данных. Запись описывается 4 аргументами, два из которых служат для классификации события, а остальные два для его описания.

Синтаксис

Logs.Write(<Описание события>,<Объект события (DB)>,<Наименование события (STRING)>="USER",<Тип события (INT)>=1)

Аргументы

  • <Описание события> - Произвольная информация, описывающая событие. В зависимости от установок сервера, размер описания может иметь или не иметь ограничения (обычно), быть в формате Unicode (обычно) или формате ANSI. Если размер описаний в базе данных неограничен, база данных будет расти достаточно быстро при большом количестве событий с длинными описаниями. В этом случае, есть возможность хранить описания в отдельной базе данных. Внимание: при хранении журнала в отдельной базе данных, отмена транзакции при изменениях в объекте не будет приводить к удалению события из журнала!
  • <Объект события (DB)> - (необязательный аргумент) Указывает на объект БД, ассоциирующийся с событием. Это поле не обязательно для заполнения, но если событие связано с каким-либо объектом, заполнение его желательно, так как это позволит формировать отчеты по объектам БД.
  • <Наименование события (STRING)> - (необязательный аргумент) Строковой аргумент, указывающий на наименование события. Длина строки ограничена 10 ANSI символами. Система использует следующие стандартные наименование событий (если фиксация этих событий в журнале задана в конфигурации проекта):
    • NEW -- создание нового объекта
    • WRITE -- сохранение объекта
    • OPEN -- визуальное открытие объекта (не рекомендуется включать по умолчанию)
    • MARK -- удаление объекта (установка пометки Mark)
    • UNMARK -- отмена удаления объекта
    • DELETE -- физическое удаление объекта из БД
    • PUBLISH -- обработка объекта
    • UNPUBLISH -- отмена обработки объекта
    • LOGIN -- вход пользователя в систему
    • LOGOUT -- выход пользователя из системы
    • USER -- пользовательское событие (используется по умолчанию этой функцией, когда третий аргумент опущен).
  • <Тип события (INT)> - (необязательный аргумент) Число, задающее тип события. Аргумент может иметь следующие значения:
    • 0 -- интерактивное событие (операция выполнена пользователем из визуального интерфейса)
    • 1 -- программное событие
    • 2..255 -- тип события может использоваться программой для собственных целей.


Примеры

//Пример создания пользовательского события с наименованием "НАРУШЕНИЯ" для документа aEl при проверке его строчной части aTab
Logs.Write("Созданы отрицательные остатки: "+Trim(aTab.Номенклатура)+" ("+aTab.Номенклатура.Code+"), склад "+aEl.Склад,aEl,"НАРУШЕНИЯ");