0
Черный всадник
28.06.16
✎
18:57
|
Доброго времени суток.
Поделитесь, пожалуйста, идеями, как реализовать наблюдателя в 1С? Есть хитро мудрый модуль с расчётами, по итогам расчёта надо записать логи. Хотелось бы сделать логи через наблюдателя, чтобы автоматизированное тестирование не обращалось к базе данных. Пока я сделал через локатор сервисов, выглядит примерно так:
Общий модуль ЛокаторСервисов:
Функция ПолучитьНаблюдателейСобытия(ИмяСобытия) Экспорт
Результат = Новый Массив;
Если ЗапущеныАвтоТесты тогда
...
Иначе
Если ИмяСобытия = "Событие" Тогда
Результат.Добавить(Обработчик);
КонецЕсли;
КонецЕсли;
Возврат Результат;
КонецФункции
Хитро мудрый модуль:
Процедура Рассчитать() Экспорт
...
Обработчики = ЛокаторСервисов.ПолучитьНаблюдателейСобытия("ХитрыйРасчетВыполнен");
Для каждого ТекОбработчик Из Обработчики Цикл
ТекОбработчик .ПриЗавершенииРасчета();
КонецЦикла;
...
КонецПроцедуры
Выглядит криво вся эта конструкция. Можно ли её как то упростить, что-то наподобие метода Оповестить на стороне сервера? Спасибо.
|
|