Получение более быстрого отбора событий журнала регистрации, чем это выполняется стандарными средствами.
Хранение в одном информационном пространстве журналов регистрации нескольких баз.
Описание конфигурации:
Предназначена для загрузки журнала регистрации из xml.
Позволяет хранить в одной БД несколько журналов (при загрузке используется идентификатор, который вводиться вручную).
Реализованы 2 роли: ПолныеПрава, ЧтениеЖурналаРегистрации.
Позволяет очищать журнал за период, по выбранной базе.
При неудачной загрузкем (ошибочной, тестовой …) возможна полная очистка БД.
Материалы используемые при разработке:
//infostart.ru/public/93225/ (взято за основу)
//infostart.ru/public/71896/ (оригинальная разработка)
Изменения и дополнения:
Возможность загрузки напрямую из базы 1С;
Добавлена возможность ведения журналов по разным информационнам базам;
Добавлена возможность очистки как журнала регистрации, так и всех данных (справочников и регистра сведений);
Форма журнала приведена к привычному виду (построена на основе стандартного журнала);
Форма записи журнала построена на основе стандартной.
Изменения от 14.11.2011:
Добавлена возможность загрузки журнала через COM соединение.
Расширена форма настройки прараметров подключения к внешней информационной базе.
Добавлено регламентное задание, для возможность загрузки журналов по расписанию. Журналы будут загружаться по всем ИБ для которых корректно настроено соединение.
Исправлены замеченные недоработки и ошибки.
Изменения от 23.11.2011
Новое в версии 1.0.0.1
Общие изменения и улучшения
Пароль доступа к информационной базе отображается звездочками.
Добавлен отчет по журналу регистрации.
Добавлена заставка.
Реализовано удаление временного файла после загрузки журнала.
Добавлена загрузка журнала за период при COM соединении. Работает только при ручном варианте запуска из формы Информационной базы.
Важные изменения
Добавлена новая версия «8.2 в режиме совместимости с 8.1» (COM Connector используется от 8.2, а журнал выгружается в версии 8.1)
В настройки ИБ добавлен флаг «Фоновый обмен» (используется для указания использования фонового обмена, по ИБ у которых флаг не установлен фоновый обмен производиться не будет)
Исправлена процедура выполнения регламентного задания. Регламентное задание не выполнялось из-за отсутствующего параметра.
Произведена интеграция с Библиотекой стандартных подсистем. Перенесены подсистемы: Пользователи, Адресный классификатор, Управление контактной информацией, Регламентные задания, обновление версии ИБ, Базовая функциональность, Физические лица, Получение файлов из интернета, Дополнительные отчеты и обработки, Работа с электронной почтой.
Прилагаемые файлы:
Файл конфигурации (cf)
Это моя первая публикация и практически первый опыт работы с управляемым приложением.
Давно хотел сделать. Руки не доходили.
Сразу хочется регламентное задание добавить.
Регламентное для сбора журналов? Я сейчас впервые столкнулся с проблемой ограничения объема таблицы в файловой версии. А журнал всего с октября пытался загрузить, журнал почти стандартный Бухгалтерия 2. (( Перехожу на скуль и продолжаю разработку.
(2) Да, задание для сбора журналов по расписанию. С возможностью ручного запуска. Потом захочется настроить почтовые уведомления об ошибках, как в БСП. Очень удобная вещь.
Файловая база однозначно мало пригодна для таких целей. Как и в качестве БД для нормальной системы.
Проблему большого объема можно решить моделью OLTP -> DW.
(3) Добавлено регламентное задание
OLTP -> DW
А можно поподробнее про это? или ссылочку где почитать
Как автор оригинала плюсую 😉
http://infostart.ru/public/89244/) , работать будет?
А если в 8.2 ведется учет доступа к данным(
Не вижу красивого отчета на СКД 🙂
Нет ли желания встроить стандартную подсистему управления пользователями и отчетами?
С отчетом могу помочь
(5) Спасиб за ссылку.
Отчет на СКД думаю сделаю. Если честно, то пока не смотрел отчет котрый у тебя был реализован, так как не видел в нем особого смысла. Н восле того как журнал одной из баз грузится уже вторые сутки думаю придется сделать отчет ))
Стандартная подсистема зачем? Все же конфигурация больше для администраторов как я думаю.
(6)Если встраивание стандартной подсистемы займет продолжительное время — то конечно не стоит.
В отчете есть смысл: чтобы не гонять всю базу период отбора сужаешь до месяцев/недели/а может быть и дней.
Есть еще предложение не делать справочник представлений подчиненным, а сделать его в виде словаря — т.е. при загрузке в базу «журнал регистарции» представление объекта сначала ищем во всем правочнике «Словарь представлений», если не нашли — добавляем — это несколько уменьшит размер базы журнала регистрации.
Выгода очевидна — ссылка на справочник — 16 байт, против — длинной строки или кучи строк с одинаковым наименованием
Чего не хватает:
— Управление регламентными заданиями
— Возможности загружать данные из БАЗЫ(а не из файла) за указанный период
Один совсем нехороший момент: при загрузке журнала регистрации из базы на платформе 8.2, работающей в режиме совместимости 8.1 куча информации теряется(т.е. не грузится), скриншот:http://s004.radikal.ru/i205/1111/83/593aeadb5df1.png
При загрузке необходимо указать что это база версии 8.1
все остальное пока в работе.
Обновил конфигурацию. Часть запросов реализовал. Возможна не очень корректная интеграция с БСП. Отпишитесь о работе регламентного задания на сервере, насколько корректно все делает.
Исправлена работа фонового задания. Фоновое задание не запускалось из-за неверного параметра запроса.
Неудобно что в обработке ЖурналаРегистрации отображаются события не по представлению (скорее это ошибка, т.к. в обработке данные поля «СобытиеПредставление», а отображает наименование). То же самое с ПредставлениеМетаданных, ПредставлениеДанных.
Т.е. отображает
15.01.2011 0:03:48 _$Session$_.Finish
А необходимо
15.01.2011 0:03:48 Сеанс. Завершение
(12) Видимо у вас одна из первых версий конфигурации. В последних версиях это исправлено — см. общий скриншот. Хотя насколько я помню, то изначально было как на скриншоте.
Небольшой баг при входе в базу под пользователем <неавторизован>(когда в списке пользователей ИБ никого нет)
[quote]{ОбщийМодуль.ОбщегоНазначения(2200)}: Ошибка при вызове метода контекста (ПравоДоступа)
Если ПравоДоступа(«СохранениеДанныхПользователя», Метаданные) Тогда
по причине:
Указанное право не существует: СохранениеДанныхПользователя[/quote]
p.s. у меня 13 платформа
При попытке загрузить журнал получаю: Неизвестное имя формы: Имя «Обработка.ЗагрузитьXML.ЗагрузкаЖурнала» что делать?
(15) webester, сообщите версию платформы, режим запуска. Если можно, то вышлите на почту загружаемый вами журнал для проверки.
(14) echo77, попытка повторить ошибку не получилась. если возможно вышлите базу с ошибкой для анализа на scanner1980@mail.ru
а нельзя посмотреть точно кто что делал в документе? Не просто описание «редактировано,изменено», а что именно изменено или удалено?
Если данное событие будет отражено в журнале регистрации (например в подписке на событие), тогда можно …
(13)
http://infostart.ru/public/93225/
Все хорошо если загружать изначально в этой конфигурации. А я обновил с версии
Поэтому такая трабла.
(21) это разные разработки и несовместимы между собой.
(15) webester, была такая же ошибка.
Я исправил Обработка.ЗагрузитьДанныеXML.ЗагрузкаЖурнала на
ОткрытьФорму(«Обработка.ЗагрузитьДанныеXML.Форма.ЗагрузкаЖурнала»,, ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.Уникальность, ПараметрыВыполненияКоманды.Окно);
В модуле команды обработки ЗагрузитьДанныеXML.
scanner1980, классная конфа, оказалась очень полезной, спасибо.
Я исправил Обработка.ЗагрузитьДанныеXML.ЗагрузкаЖурнала на
ОткрытьФорму(«Обработка.ЗагрузитьДанныеXML. Форма. ЗагрузкаЖурнала»,, ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.Уникальность, ПараметрыВыполненияКоманды.Окно);
В модуле команды обработки ЗагрузитьДанныеXML.
scanner1980, классная конфа, оказалась очень полезной, спасибо.
Показать
кстати забыл сказать платформа у меня была старая 8.2.14.528, думаю поэтому такая ошибка вышла.
(15) (23) (24) Ошибка действительно присутствовала в конфигурации. Исправил и выложил обновленный файл конфигурации.
Кто не хочет качать и обновлять — см. (23)
Спасибо за найденную ошибку. Постараюсь быть внимательнее.
Ошибку, о которой пишет flybread исправлял тоже.
Что не понравилось:
— зачем форму списку регистра сведений «втюхивать» в командный интерфейс? При большом количестве данных это сильно будет тормозить работу;
— Отчетность не выведена в отдельный блок;
— как по мне отбор по данных журнала регистрации надо бы «допилить»
— как было сказано раньше — управление регламентными заданиями не помешало бы.
Однозначный плюс за реализацию — программный код мне понравился.
Что я реализую допишу под себя:
— выгрузка в режиме фона за каждый рабочий день журнала для отмеченных баз данных;
1) альтернатива какая?
2) в работе
3) поподробнее
4) управление регламентными заданиями есть в последней версии от 23.11.11
(14) echo77, Не дочитал до конца возможно уже ответили. Дело в платформе. Обновись по крайней мере до 8,2,14
обновил до версии от 23.11.11 — очень много хороших изменений!
и так был полезный инструмент, а стал еще удобнее!
спасибо вам за ваш труд!
При добавлении новой учетной записи электронной почты получаю ошибку:
Ошибка в ограничении доступа к данным.
объект: ‘Справочник.УчетныеЗаписиЭлектроннойПочты’; право: ‘Чтение’
Синтаксическая ошибка «Параметр ОграничиватьДоступПоВиду не существует»
по причине:
Синтаксическая ошибка «Параметр ОграничиватьДоступПоВиду не существует»
Платформа 8.2.15.294
Спасибо за сообщение об ошибке. Наверное из-за некорректного сопряжения с БСП. Постараюсь решить в ближайшее время.
Вещь хорошая давно искал Автору 5+ за работу и терпение, работоспособность будем тестировать
При вигрузке пишет следующую ошибку
{ОбщийМодуль.ЗагрузкаЖурналаСервер.Модуль(1130)}: Ошибка чтения журнала регистрации: C:UserselectronikAppDataLocalTempv8_564A_30.xml
{ОбщийМодуль.ЗагрузкаЖурналаСервер.Модуль(438)}: Неверный формат выгрузки журнала регистрации
ВызватьИсключение Ошибка;
Пожалуйста подскажите в чем причина
(34) electronik, проверьте формат информационной базы в настройках.
Из xml файла загрузка не прошла:
Ошибка в ограничении доступа к данным.
объект: ‘Справочник.УчетныеЗаписиЭлектроннойПочты’, поле: ‘Ссылка’; право: ‘Чтение’
Синтаксическая ошибка «Параметр ОграничиватьДоступПоВиду не существует»
по причине:
Синтаксическая ошибка «Параметр ОграничиватьДоступПоВиду не существует»
База УТ 10.3, платформа 8.1
п.с. Попробовал загрузить тот же файл в первоисточник:
http://infostart.ru/public/71896/
— загрузилось без ошибок.
Очень интересует скорость работы. Можно из опыта хотя бы примерно оценить порядок? Скажем, количество записей регистра в минуту или в час?
И есть ли возможность параллельной загрузки из нескольких баз?
Это я удачно зашел 🙂 Начал было писать свой велосипед, потом решил на инфостаре посмотреть. Пожалуй возьму вашу конфигурацию и добавлю то, что мне надо. Спасибо. Однозначно +
(38) EfiopReal, Параллельная загрузка не предусматривалась из-за блокировок при параллельной записи в регистр, хотя можете попробовать (запустить несколько клиентов и загрузка из файла).
По поводу скорости тут все субъективно и от железа зависит. У меня журнал из порядка 2х миллионов записей грузился около 9 часов.
При загрузке частями через COM выдёт ошибку:
{ОбщийМодуль.ЗагрузкаЖурналаСервер.Модуль(438)}: Неверный формат выгрузки журнала регистрации
База на 8.2, версия платформы установлена «1С:Предприятие 8.2»
Как побороть, xml выгрузка тоже не грузится (~20G).
(40) babys, база не в режиме совместимости с 8.1?
(41) нет, 8.2.13 Релиз 8.2.15.318, КА 1.1.21.1
(42) babys, Файлик можете прислать?
(43) Файлик чего? Полный журнал? Так я сейчас в режиме ручной загрузки через COM пытаюсь загрузиться по месячно.
(43) понял, при файлике без событий, такое сообщение выскакивает.
(45) babys,
вот именно этот файлик, т.е. журнал выгружен, ошибка при загрузке. Либо попробуйте поиграться с версиями ИБ в настройках.
(46) ну зачем же файл, там данных то всего ничего 🙂
http://v8.1c.ru/eventlog « xmlns:xs=»http://www.w3.org/2001/XMLSchema « xmlns:xsi=»http://www.w3.org/2001/XMLSchema-instance » />
<?xml version=»1.0″ encoding=»UTF-8″ ?>
<v8e:EventLog xmlns:v8e=»
Вынужден согласиться с программой, я тоже не смог определить версию лога.
хорошая штука. Поставил закачку логов из рабочих БД.
В справочниках
Данные
ИменаПользователей
Компьютеры
ОбъектыМетаданных
Добавил владельца ИнформационныеБазы и подправил ПрочитатьЖурналВРегистр
после всех изменений решил выложить результат
http://infostart.ru/public/172875/
Загрузил журнал из xml файла за один день. Журнал загрузился пустой, все с «ушами». В чем причина?
(50) alex15650, разобрался, все работает!
А за какой период журнал загружается если фоновым заданием?
(52) Журнал загружается с момента последних, загруженных данных.
(53) спасибо, все отлично работает! )
Не получилось загрузить логи по СОМ-соединению, при попытке загрузки выдало следующую ошибку:
При попытке подключения к информационной базе произошла ошибка:
{ОбщийМодуль.ОбменДаннымиСервер.Модуль(50)}: Ошибка при вызове конструктора (COMObject): Класс не зарегистрирован: Класс не зарегистрирован
С чем может быть связано такое сообщение?
(55) Synoecium, зарегистрируйте COM объект вручную или переустановите платформу, при установке класс регистрируется автоматически.
(56) Спасибо, получилось. Сделал как написано здесьhttp://infostart.ru/public/197627/
Установил конфу. При заведении базы обнаружил что сервер задается строкой, а можно переделать на справочник? А то миграция планируется — придется все перебивать. Да и статистику по серверам удобней смотреть так…
(58) romankoav, конфигурация является открытой, можете самостоятельно расширить функционал. Тем не менее спасибо за идею, возможно в будущем сделаю.
спасибо, все работает!
(36)
Отключите РЛС — и будет вам счастье. Это быстрый вариант решения.
(61) они уже все уволились 🙂
(62) 🙂
Правильно ли я поняла что ЖР файловой базы хранится внутри 1Cv8.1CD?
Можно ли проанализировать при помощи этой конфигурации длительность операций? Например обновление базы данных с достаточно старого релиза заняло 2 дня.
80% времени ушло на загрузку и парсинг новостей (которые за полтора года уже никому не интересны).
И как то это поменять в конфигураторе.
(64) Да журнал загружается из файла логов в регистры для дальнейшего, более удобного и быстрого просмотра. Данная конфигурация уже не поддерживалась несколько лет, но если у вас есть интерес, то готов к вашим идеям. Лучше ее использовать на SQL, так как в файловом варианте размеры таблиц ограничены.