Лог событий. Справочник или регистр сведений? #319594


#0 by Remadan
День добрый. Есть вопрос. Задача: Нужно хранить в базе что-то вроде лога событий с произвольным количеством записей. Записи большой информационной ценности не представляют. Чило записей может быть довольно значительно. Как реализовать этот лог? 1. В виде справочника. Так, вроде как проще, да и проблем с количеством записей нет. 2. В виде Регистра сведений. Т.к. количество записей произвольно, то значит у регистра сведений должно быть измерение, которое представляло бы собой Число или строку (что нибудь вроде "НомерЗаписи"). Как лучше реализовать подобную задачу: в виде справоника или в виде регистра? На сколько неправильно использование подобного измерения в регистре?
#1 by Hadgehogs
Справочник - зло.(удаление объектов, контроль ссылочной целостности при ТИИ) Регистр сведений - лучше, но тоже не гуд. Внешний dbf и работа через Xbase? Текстовый файл?
#2 by Рэйв
Обычно все логи в текстовый файл и пишутся.Зачем изобретать велосипед?
#3 by i-rek
если регистр, то поля не ссылочного типа. Чтоб ТИИ на нём не спотыкалось ))
#4 by Hadgehogs
Для текстового файла индексацию сам строить будет? Весщь геморойная. В Xbase это уже есть. В регистре сведений тоже, но он в базе...
#5 by i-rek
очень большие регистры сведений долго открываются почему-то. И вообще форма списка тормозит. Справочники этим не страдают. В принципе если ссылочных полей не делать, то ТИИ спотыкаться не будет об него, можно и справочник
#6 by Hadgehogs
Хм, ну если только непосредственное удаление, без пометок. Тогда удалениеобъектов будет не спотыкаться
#7 by Remadan
В логе храниться история отправки/получения/проверки сообщений плана обмена. В записях присутствует ссылка на справочник пользователей, план обмена и на перечисление. На данный момент лог реализован справочником. Форма в которой отображается лог открывается довольно долго, да и авто-очистка справочника (через непосредственное удаление) также занимает не мало времени при серьезном количестве записей. Интересно есть ли смысл переделывать в регистр сведений, будет ли прирост в скорости ощутим?
#8 by i-rek
просто если скажем есть реквизит "сотрудник", то удаление объектов будет спотыкаться если есть помеченный на удаление сотрудник
#9 by i-rek
ужас. Ни в коем случае. Сообщения могут иметь огромный размер, зачем захламлять базу. Потом рез. копию фиг сделаешь
#10 by Hadgehogs
Жёско.
#11 by Remadan
Сами сообщения плана обмена там не хранятся, только история.
#12 by Hadgehogs
База под терминалом?
#13 by i-rek
я вместо этой истории храню в отдельной папке сами сообщения. Они же - и история. Куда практичнее
#14 by Hadgehogs
Если под терминалом - то могу вообще предложить чудовищную весщь. Довериться Microsoft-у. Хранить в журнале событий. Не знаю не плюсов, не минусов. Просто альтернатива. ;-)
#15 by Remadan
Да Пользователям зачастую желательно знать также историю проверки наличия сообщений.
#16 by Remadan
Журнал событий это слишком сурово.
#17 by Hadgehogs
Реальные пацаны 1С не ищут легких путей.
#18 by i-rek
историю _проверки_ ??? а не пошли бы они ? ужос сделай им проверку каждые 30 секунд пусть подавятся
#19 by hhhh
самое лучшее - делать запись в журнал регистрации. Он для этого и предназначен.
#20 by Remadan
История проверки хороша тем, что она устраняет вопросы вроде ("Почему нет обмена? Где продажи за вчера?!"). Пользователь сам может убедиться, что обмен работает, просто с другого узла не отправили сообщения. Кстати сообщения от разных узлов могут храниться в разных каталогах или компах. Всё-таки есть ли смысл переделывать справочник в регистр сведений? Я так понял ссылки из записей в любом случае надо убрать?
#21 by Remadan
А можно по человечески получить данные обратно из журнала регистрации для вывода в форму?
#22 by Remadan
Up!
#23 by hhhh
пока только вижу ВыгрузитьЖурналРегистрации. Наверно, это не очень удобно. ВыгрузитьЖурналРегистрации(<Имя выходного файла>, <Фильтр>, <Колонки>, <Имя входного файла>) Параметры: <Имя выходного файла> (обязательный) Тип: Строка. Строка, содержащая имя выходного XML файла. <Фильтр> (необязательный) Тип: Структура. Структура фильтра журнала регистрации и условия сравнения: ДатаНачала(StartDate) - Дата, Если задана на больше или равно. Значение по умолчанию Неопределено; ДатаОкончания(EndDate) - Дата, Если задана на меньше или равно. Значение по умолчанию Неопределено; Уровень(Level) - УровеньЖурналаРегистрации или массив уровней, Равенство, если массив, то в списке. Значение по умолчанию Неопределено; ИмяПриложения(ApplicationName) - Строка или массив строк, Равенство, если массив, то в списке. Значение по умолчанию Неопределено; Пользователь(User) - ПользовательИнформационнойБазы или массив пользователей. Равенство, если массив, то в списке. Значение по умолчанию Неопределено; Компьютер(Computer) - Строка или массив строк, Равенство, если массив, то в списке. Значение по умолчанию Неопределено; Событие(Event) - Строка или массив строк, Равенство, если массив, то в списке. Значение по умолчанию Неопределено; Метаданные(Metadata) - ОбъектМетаданных или их массив. Равенство, если массив, то в списке. Значение по умолчанию Неопределено; Данные(Data) - Значение, тип значения – ссылка на объект (СправочникСсылка и т.д.), Равенство. Значение по умолчанию Неопределено; ПредставлениеДанных(DataPresentation) - Строка. Содержит; Комментарий(Comment) - Строка. Содержит. <Колонки> (необязательный) Тип: Строка. Для выгрузки в XML формате доступны следующие колонки: Уровень(Level); ПредставлениеМетаданных(MetadataPresentation) Для того, чтобы выгрузить определенные колонки журнала регистрации необходимо перечислить их имена, при этом необходимо имя каждой колонки отделять запятой. <Имя входного файла> (необязательный) Тип: Строка. Строка, содержащая имя входного файла. Описание: Позволяет выгрузить журнал регистрации в XML формате. Существует возможность установить фильтр, задаваемый структурой специального формата, указывающий, какие записи журнала регистрации выгружать, а также указать колонки, которые необходимо выгружать. Если указано имя входного файла, то происходит выгрузка из указанного файла.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С