Конфигурация: Журнал регистрации (управляемое приложение)

Опубликовал Алексей Черданцев (scanner1980) в раздел Администрирование - Журнал регистрации

Конфигурация предназначена для загрузки журнала регистрации из xml файла или через COM подключение.

Получение более быстрого отбора событий журнала регистрации, чем это выполняется стандарными средствами.
Хранение в одном информационном пространстве журналов регистрации нескольких баз.

Описание конфигурации:

Предназначена для загрузки журнала регистрации из 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)

 

 


Это моя первая публикация и практически первый опыт работы с управляемым приложением.

 

Скачать файлы

Наименование Файл Версия Размер
Конфигурация
.cf 1,20Mb
06.02.13
309
.cf 1,20Mb 309 Скачать

См. также

Комментарии
1. Armando Armando (Armando) 1374 09.11.11 12:39 Сейчас в теме
Давно хотел сделать. Руки не доходили.
Сразу хочется регламентное задание добавить.
2. Алексей Черданцев (scanner1980) 157 09.11.11 18:54 Сейчас в теме
Регламентное для сбора журналов? Я сейчас впервые столкнулся с проблемой ограничения объема таблицы в файловой версии. А журнал всего с октября пытался загрузить, журнал почти стандартный Бухгалтерия 2. (( Перехожу на скуль и продолжаю разработку.
3. Armando Armando (Armando) 1374 09.11.11 20:24 Сейчас в теме
(2) Да, задание для сбора журналов по расписанию. С возможностью ручного запуска. Потом захочется настроить почтовые уведомления об ошибках, как в БСП. Очень удобная вещь.
Файловая база однозначно мало пригодна для таких целей. Как и в качестве БД для нормальной системы.
Проблему большого объема можно решить моделью OLTP -> DW.
4. Алексей Черданцев (scanner1980) 157 14.11.11 16:29 Сейчас в теме
(3) Добавлено регламентное задание

Armando пишет:
OLTP -> DW
А можно поподробнее про это? или ссылочку где почитать
5. Александр Крынецкий (echo77) 686 16.11.11 18:38 Сейчас в теме
Как автор оригинала плюсую ;-)
А если в 8.2 ведется учет доступа к данным(http://infostart.ru/public/89244/), работать будет?

Не вижу красивого отчета на СКД :-)
Нет ли желания встроить стандартную подсистему управления пользователями и отчетами?
С отчетом могу помочь
romankoav; scanner1980; +2 Ответить 1
6. Алексей Черданцев (scanner1980) 157 16.11.11 19:30 Сейчас в теме
(5) Спасиб за ссылку.
Отчет на СКД думаю сделаю. Если честно, то пока не смотрел отчет котрый у тебя был реализован, так как не видел в нем особого смысла. Н восле того как журнал одной из баз грузится уже вторые сутки думаю придется сделать отчет ))

Стандартная подсистема зачем? Все же конфигурация больше для администраторов как я думаю.
7. Александр Крынецкий (echo77) 686 16.11.11 19:53 Сейчас в теме
(6)Если встраивание стандартной подсистемы займет продолжительное время - то конечно не стоит.
В отчете есть смысл: чтобы не гонять всю базу период отбора сужаешь до месяцев/недели/а может быть и дней.

Есть еще предложение не делать справочник представлений подчиненным, а сделать его в виде словаря - т.е. при загрузке в базу "журнал регистарции" представление объекта сначала ищем во всем правочнике "Словарь представлений", если не нашли - добавляем - это несколько уменьшит размер базы журнала регистрации.
Выгода очевидна - ссылка на справочник - 16 байт, против - длинной строки или кучи строк с одинаковым наименованием
8. Александр Крынецкий (echo77) 686 19.11.11 12:46 Сейчас в теме
Чего не хватает:
- Управление регламентными заданиями
- Возможности загружать данные из БАЗЫ(а не из файла) за указанный период

Один совсем нехороший момент: при загрузке журнала регистрации из базы на платформе 8.2, работающей в режиме совместимости 8.1 куча информации теряется(т.е. не грузится), скриншот: http://s004.radikal.ru/i205/1111/83/593aeadb5df1.png
9. Алексей Черданцев (scanner1980) 157 20.11.11 12:24 Сейчас в теме
Один совсем нехороший момент: при загрузке журнала регистрации из базы на платформе 8.2, работающей в режиме совместимости 8.1 куча информации теряется(т.е. не грузится), скриншот: http://s004.radikal.ru/i205/1111/83/593aeadb5df1.png


При загрузке необходимо указать что это база версии 8.1

все остальное пока в работе.
10. Алексей Черданцев (scanner1980) 157 23.11.11 13:27 Сейчас в теме
Обновил конфигурацию. Часть запросов реализовал. Возможна не очень корректная интеграция с БСП. Отпишитесь о работе регламентного задания на сервере, насколько корректно все делает.
11. Алексей Черданцев (scanner1980) 157 23.11.11 18:11 Сейчас в теме
Исправлена работа фонового задания. Фоновое задание не запускалось из-за неверного параметра запроса.
12. Сергей Иванов (Pitbull-1C) 27.11.11 21:50 Сейчас в теме
Неудобно что в обработке ЖурналаРегистрации отображаются события не по представлению (скорее это ошибка, т.к. в обработке данные поля "СобытиеПредставление", а отображает наименование). То же самое с ПредставлениеМетаданных, ПредставлениеДанных.

Т.е. отображает
15.01.2011 0:03:48 _$Session$_.Finish

А необходимо
15.01.2011 0:03:48 Сеанс. Завершение
13. Алексей Черданцев (scanner1980) 157 28.11.11 05:10 Сейчас в теме
(12) Видимо у вас одна из первых версий конфигурации. В последних версиях это исправлено - см. общий скриншот. Хотя насколько я помню, то изначально было как на скриншоте.
14. Александр Крынецкий (echo77) 686 29.11.11 07:00 Сейчас в теме
Небольшой баг при входе в базу под пользователем <неавторизован>(когда в списке пользователей ИБ никого нет)
[quote]{ОбщийМодуль.ОбщегоНазначения(2200)}: Ошибка при вызове метода контекста (ПравоДоступа)
Если ПравоДоступа("СохранениеДанныхПользователя", Метаданные) Тогда
по причине:
Указанное право не существует: СохранениеДанныхПользователя[/quote]

p.s. у меня 13 платформа
15. Роман Ложкин (webester) 21 30.11.11 02:42 Сейчас в теме
При попытке загрузить журнал получаю: Неизвестное имя формы: Имя "Обработка.ЗагрузитьXML.ЗагрузкаЖурнала" что делать?
16. Алексей Черданцев (scanner1980) 157 30.11.11 20:47 Сейчас в теме
(15) webester, сообщите версию платформы, режим запуска. Если можно, то вышлите на почту загружаемый вами журнал для проверки.
17. Алексей Черданцев (scanner1980) 157 30.11.11 21:16 Сейчас в теме
(14) echo77, попытка повторить ошибку не получилась. если возможно вышлите базу с ошибкой для анализа на scanner1980@mail.ru
18. Владимир Б (antares_of) 13 02.12.11 15:11 Сейчас в теме
а нельзя посмотреть точно кто что делал в документе? Не просто описание "редактировано,изменено", а что именно изменено или удалено?
19. Алексей Черданцев (scanner1980) 157 02.12.11 19:55 Сейчас в теме
Если данное событие будет отражено в журнале регистрации (например в подписке на событие), тогда можно ...
21. Сергей Иванов (Pitbull-1C) 07.12.11 22:05 Сейчас в теме
(13) scanner1980,
Все хорошо если загружать изначально в этой конфигурации. А я обновил с версии http://infostart.ru/public/93225/
Поэтому такая трабла.
22. Алексей Черданцев (scanner1980) 157 08.12.11 13:17 Сейчас в теме
(21) это разные разработки и несовместимы между собой.
23. Иван Булычев (flybread) 1 13.12.11 11:11 Сейчас в теме
(15) webester, была такая же ошибка.
Я исправил Обработка.ЗагрузитьДанныеXML.ЗагрузкаЖурнала на
ОткрытьФорму("Обработка.ЗагрузитьДанныеXML.Форма.ЗагрузкаЖурнала",, ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.Уникальность, ПараметрыВыполненияКоманды.Окно);

В модуле команды обработки ЗагрузитьДанныеXML.

scanner1980, классная конфа, оказалась очень полезной, спасибо.
24. Иван Булычев (flybread) 1 13.12.11 12:02 Сейчас в теме
flybread пишет:

(15) webester, была такая же ошибка.

Я исправил Обработка.ЗагрузитьДанныеXML.ЗагрузкаЖурнала на

ОткрытьФорму("Обработка.ЗагрузитьДанныеXML. Форма. ЗагрузкаЖурнала",, ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.Уникальность, ПараметрыВыполненияКоманды.Окно);



В модуле команды обработки ЗагрузитьДанныеXML.



scanner1980, классная конфа, оказалась очень полезной, спасибо.




кстати забыл сказать платформа у меня была старая 8.2.14.528, думаю поэтому такая ошибка вышла.
25. Алексей Черданцев (scanner1980) 157 13.12.11 16:34 Сейчас в теме
(15) (23) (24) Ошибка действительно присутствовала в конфигурации. Исправил и выложил обновленный файл конфигурации.
Кто не хочет качать и обновлять - см. (23)

Спасибо за найденную ошибку. Постараюсь быть внимательнее.
26. Игорь Дзеса (Kamikadze) 44 14.12.11 02:37 Сейчас в теме
Ошибку, о которой пишет flybread исправлял тоже.

Что не понравилось:
- зачем форму списку регистра сведений "втюхивать" в командный интерфейс? При большом количестве данных это сильно будет тормозить работу;
- Отчетность не выведена в отдельный блок;
- как по мне отбор по данных журнала регистрации надо бы "допилить"
- как было сказано раньше - управление регламентными заданиями не помешало бы.

Однозначный плюс за реализацию - программный код мне понравился.

Что я реализую допишу под себя:

- выгрузка в режиме фона за каждый рабочий день журнала для отмеченных баз данных;
27. Алексей Черданцев (scanner1980) 157 14.12.11 05:08 Сейчас в теме
1) альтернатива какая?
2) в работе
3) поподробнее
4) управление регламентными заданиями есть в последней версии от 23.11.11
28. PavelAkaev (pavelakaev) 95 21.12.11 23:01 Сейчас в теме
(14) echo77, Не дочитал до конца возможно уже ответили. Дело в платформе. Обновись по крайней мере до 8,2,14
29. Александр Че (chmod660) 410 12.01.12 17:43 Сейчас в теме
обновил до версии от 23.11.11 - очень много хороших изменений!
и так был полезный инструмент, а стал еще удобнее!
спасибо вам за ваш труд!
30. Евгений Малышев (kgp) 12 13.02.12 11:43 Сейчас в теме
При добавлении новой учетной записи электронной почты получаю ошибку:

Ошибка в ограничении доступа к данным.
объект: 'Справочник.УчетныеЗаписиЭлектроннойПочты'; право: 'Чтение'
Синтаксическая ошибка "Параметр ОграничиватьДоступПоВиду не существует"
по причине:
Синтаксическая ошибка "Параметр ОграничиватьДоступПоВиду не существует"

Платформа 8.2.15.294
scanner1980; +1 Ответить
31. Алексей Черданцев (scanner1980) 157 13.02.12 13:00 Сейчас в теме
Спасибо за сообщение об ошибке. Наверное из-за некорректного сопряжения с БСП. Постараюсь решить в ближайшее время.
33. Andrey Dyak (electronik) 03.04.12 16:57 Сейчас в теме
Вещь хорошая давно искал Автору 5+ за работу и терпение, работоспособность будем тестировать
34. Andrey Dyak (electronik) 19.06.12 11:39 Сейчас в теме
При вигрузке пишет следующую ошибку
{ОбщийМодуль.ЗагрузкаЖурналаСервер.Модуль(1130)}: Ошибка чтения журнала регистрации: C:\Users\electronik\AppData\Local\Temp\v8_564A_30.xml
{ОбщийМодуль.ЗагрузкаЖурналаСервер.Модуль(438)}: Неверный формат выгрузки журнала регистрации
ВызватьИсключение Ошибка;

Пожалуйста подскажите в чем причина
35. Алексей Черданцев (scanner1980) 157 20.06.12 13:21 Сейчас в теме
(34) electronik, проверьте формат информационной базы в настройках.
36. simuljakr (simuljakr) 153 28.06.12 13:11 Сейчас в теме
Из xml файла загрузка не прошла:


Ошибка в ограничении доступа к данным.
объект: 'Справочник.УчетныеЗаписиЭлектроннойПочты', поле: 'Ссылка'; право: 'Чтение'
Синтаксическая ошибка "Параметр ОграничиватьДоступПоВиду не существует"
по причине:
Синтаксическая ошибка "Параметр ОграничиватьДоступПоВиду не существует"

База УТ 10.3, платформа 8.1

п.с. Попробовал загрузить тот же файл в первоисточник:
http://infostart.ru/public/71896/
- загрузилось без ошибок.
37. Роман М (ROM_NN) 24.07.12 23:36 Сейчас в теме
Очень интересует скорость работы. Можно из опыта хотя бы примерно оценить порядок? Скажем, количество записей регистра в минуту или в час?
И есть ли возможность параллельной загрузки из нескольких баз?
38. EfiopReal (Созинов) 26.07.12 13:34 Сейчас в теме
Это я удачно зашел :-) Начал было писать свой велосипед, потом решил на инфостаре посмотреть. Пожалуй возьму вашу конфигурацию и добавлю то, что мне надо. Спасибо. Однозначно +
39. Алексей Черданцев (scanner1980) 157 26.07.12 18:53 Сейчас в теме
(38) EfiopReal, Параллельная загрузка не предусматривалась из-за блокировок при параллельной записи в регистр, хотя можете попробовать (запустить несколько клиентов и загрузка из файла).

По поводу скорости тут все субъективно и от железа зависит. У меня журнал из порядка 2х миллионов записей грузился около 9 часов.
40. Babys (babys) 63 28.08.12 16:37 Сейчас в теме
При загрузке частями через COM выдёт ошибку:
Ошибка чтения журнала регистрации: C:\Windows\Temp\v8_F7C2_2d.xml
{ОбщийМодуль.ЗагрузкаЖурналаСервер.Модуль(438)}: Неверный формат выгрузки журнала регистрации


База на 8.2, версия платформы установлена "1С:Предприятие 8.2"
Как побороть, xml выгрузка тоже не грузится (~20G).
41. Алексей Черданцев (scanner1980) 157 29.08.12 07:50 Сейчас в теме
(40) babys, база не в режиме совместимости с 8.1?
42. Babys (babys) 63 29.08.12 09:04 Сейчас в теме
(41) scanner1980, нет, 8.2.13 Релиз 8.2.15.318, КА 1.1.21.1
43. Алексей Черданцев (scanner1980) 157 29.08.12 09:11 Сейчас в теме
(42) babys, Файлик можете прислать?
44. Babys (babys) 63 29.08.12 09:20 Сейчас в теме
(43) scanner1980, Файлик чего? Полный журнал? Так я сейчас в режиме ручной загрузки через COM пытаюсь загрузиться по месячно.
45. Babys (babys) 63 29.08.12 10:37 Сейчас в теме
(43) scanner1980, понял, при файлике без событий, такое сообщение выскакивает.
46. Алексей Черданцев (scanner1980) 157 29.08.12 13:09 Сейчас в теме
(45) babys,
Ошибка чтения журнала регистрации: C:\Windows\Temp\v8_F7C2_2d.xml 

вот именно этот файлик, т.е. журнал выгружен, ошибка при загрузке. Либо попробуйте поиграться с версиями ИБ в настройках.
47. Babys (babys) 63 31.08.12 11:06 Сейчас в теме
(46) scanner1980, ну зачем же файл, там данных то всего ничего :)
<?xml version="1.0" encoding="UTF-8" ?>
<
v8e:EventLog xmlns:v8e="http://v8.1c.ru/eventlog" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" />

Вынужден согласиться с программой, я тоже не смог определить версию лога.
48. Adapter Бахтыреев (adapter) 405 24.01.13 15:37 Сейчас в теме
хорошая штука. Поставил закачку логов из рабочих БД.

В справочниках
Данные
ИменаПользователей
Компьютеры
ОбъектыМетаданных

Добавил владельца ИнформационныеБазы и подправил ПрочитатьЖурналВРегистр
49. Adapter Бахтыреев (adapter) 405 11.02.13 09:01 Сейчас в теме
после всех изменений решил выложить результат
http://infostart.ru/public/172875/
50. Александр Фомин (alex15650) 103 18.06.13 16:35 Сейчас в теме
Загрузил журнал из xml файла за один день. Журнал загрузился пустой, все с "ушами". В чем причина?
51. Александр Фомин (alex15650) 103 18.06.13 16:54 Сейчас в теме
(50) alex15650, разобрался, все работает!
52. Александр Фомин (alex15650) 103 18.06.13 17:11 Сейчас в теме
А за какой период журнал загружается если фоновым заданием?
53. Алексей Черданцев (scanner1980) 157 18.06.13 18:48 Сейчас в теме
(52) Журнал загружается с момента последних, загруженных данных.
54. Александр Фомин (alex15650) 103 19.06.13 10:53 Сейчас в теме
(53) scanner1980, спасибо, все отлично работает! )
55. Сергей Лесовой (Synoecium) 91 31.03.14 12:45 Сейчас в теме
Не получилось загрузить логи по СОМ-соединению, при попытке загрузки выдало следующую ошибку:

При попытке подключения к информационной базе произошла ошибка:
{ОбщийМодуль.ОбменДаннымиСервер.Модуль(50)}: Ошибка при вызове конструктора (COMObject): Класс не зарегистрирован: Класс не зарегистрирован

С чем может быть связано такое сообщение?
56. Алексей Черданцев (scanner1980) 157 31.03.14 12:52 Сейчас в теме
(55) Synoecium, зарегистрируйте COM объект вручную или переустановите платформу, при установке класс регистрируется автоматически.
57. Сергей Лесовой (Synoecium) 91 15.04.14 06:55 Сейчас в теме
(56) scanner1980, Спасибо, получилось. Сделал как написано здесь http://infostart.ru/public/197627/
58. Александр Романько (romankoav) 05.06.14 12:28 Сейчас в теме
Установил конфу. При заведении базы обнаружил что сервер задается строкой, а можно переделать на справочник? А то миграция планируется - придется все перебивать. Да и статистику по серверам удобней смотреть так...
59. Алексей Черданцев (scanner1980) 157 05.06.14 13:38 Сейчас в теме
(58) romankoav, конфигурация является открытой, можете самостоятельно расширить функционал. Тем не менее спасибо за идею, возможно в будущем сделаю.
lllmartylll; +1 Ответить
60. Евгений Чернявский (otrazhenie) 16.02.15 15:58 Сейчас в теме
61. Игорь Дзеса (Kamikadze) 44 17.12.16 18:50 Сейчас в теме
(36)
ОграничиватьДоступПоВиду


Отключите РЛС - и будет вам счастье. Это быстрый вариант решения.
62. Канат Джумадылов (Fox-trot) 49 17.12.16 19:18 Сейчас в теме
(61) они уже все уволились :)
63. Игорь Дзеса (Kamikadze) 44 18.12.16 00:22 Сейчас в теме