Журнал регистрации 1С: путь к пониманию процессов клиента

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

Как понять процессы документооборота клиента, имея доступ к его базе и не общаясь с ним.

Хочу поделиться своим кратким опытом анализа процессов и документооборота с помощью журнала регистрации. Надеюсь, он многим поможет.

1С использует в своих продуктах такую уникальную вещь, как журнал регистрации. Многие понимают журнал регистрации как способ ловли пользователей и их действий. Я давно его использую как способ понимания, с чем работает клиент: документы, справочники и регистры.
К сожалению, в отчеты в конфигурациях 1С не встроены функции проверки запуска отчетов, но эта вещь решаемая.
Если вы понимаете, с чем работают конкретные пользователи, то для вас этот материал очень полезен для решения следующих задач:
 
  1. Ограничения границ будущего внедрения.
  2. Настройки прав доступа
  3. Построения программ обучения по используемому функционалу
  4. Аудита системы
 
Что делать:
1. Выбрать период журнала регистрации для анализа. Квартал отличный период, который покрывает, как правило, весь бизнес-процесс клиента, начиная от ввода первичных документов и заканчивая закрытием месяца.
 
 
 
 
2. Определить перечень объектов и действий в системе для анализа.
 
Действие - добавление, объекты: справочники (все), документы (все), регистры сведений (не подчиненные регистратору)
 
//infostart.ru/upload/iblock/763/2.png 
 
 
список  объектов метаданных для отбора
 
//infostart.ru/upload/iblock/09c/2-1.png
 
 
Получаем журнал регистрации
 
Далее настраиваем список для удобной выгрузки в эксель.
 
Мне нужны поля "Пользователь" и "Метаданные".
После фильтров список получится  такой
//infostart.ru/upload/iblock/9e9/3.png
 
 
 
Сохраняем в эксель и фильтром "только уникальные записи" получаем такой список.

//infostart.ru/upload/iblock/db4/4.png
 
 
На основании такого списка уже понятен функционал, используемый пользователем. Области использования можете представить сами.

См. также

Комментарии
1. С К (kraynev-navi) 193 11.06.15 16:01 Сейчас в теме
Эх, если бы журнал регистрации еще события "чтение" показывал. Вот тогда бы можно было точно все права можно было настроить. А так, увы, только изменения/добавления....
2. Владимир Доброродный (Kindman1980) 50 11.06.15 16:04 Сейчас в теме
(1) kraynev-navi, Почему же - это реально. Сделайте в при открытии процедуру "ЗаписьЖурналаРегистрации" запись в журнал. Я же говорю о том что в стандартном функционале этого нет , а так есть.

Как минимум я бы озаботился о внедрении такой процедуры при запуске отчетов. Тогда будет понятно с какими отчетами человек работает.
3. борян петров (TODD22) 15 11.06.15 16:26 Сейчас в теме
(2) Kindman1980, А просто посидеть рядом и посмотреть что делает человек? И его расспросить о его работе? Так можно узнать гораздо больше.
4. С К (kraynev-navi) 193 11.06.15 16:38 Сейчас в теме
(2) Kindman1980,
вряд ли. Это мне надо во всех справочниках внедриться во все формы с этим кодом, чтобы просто собрать инфу...
(3) TODD22,
а можно и не узнать. Человек говорит, что ему, мол, надо ВАЩЕ все. А так проанализировал пару месяцев и отключил ненужное.
5. Владимир Доброродный (Kindman1980) 50 11.06.15 18:42 Сейчас в теме
(3) TODD22, Конечно я с вами согласен. Но иногда можно сэкономить время, сократить время общения с пользователем, задать границы внедрения сразу. Плюс пользователь это человек, а он может забыть, что использует или просто не сказать. В этом фикус. Но опять же технический способ лишь дополняет, но не исключает человеческое общение.
6. Алексей Аверьянов (avryanovalexey) 11.06.15 22:07 Сейчас в теме
А что мешает подписку на событие сделать? При открытии? И "одним ударом" внедриться во все нужные справочники и документы. в отчеты правда придется внедряться "вручную"
kostyaomsk; Kindman1980; +2 Ответить 1
7. С К (kraynev-navi) 193 15.06.15 09:00 Сейчас в теме
(6) avryanovalexey, я может чего-то не знаю... Как сделать подписку при открытии на формы справочника?
8. Алексей Аверьянов (avryanovalexey) 15.06.15 10:06 Сейчас в теме
(7) kraynev-navi, беру свои слова назад )) Для формы для события ПриОткрытии() подписка не подходит.
9. С К (kraynev-navi) 193 15.06.15 10:09 Сейчас в теме
(8) avryanovalexey, ну на самом деле жалко ))) Было бы очень удобно.
Господа, отплюсовавшие 6 пост, может вы в курсе?
10. Allexey (alex_4x) 72 15.06.15 12:23 Сейчас в теме
(7) kraynev-navi, По имеющейся у меня информации на открытие любой формы событие можно повесить только для управляемого приложения.
Для толстого клиента - сразу на все формы повесить нельзя.
Вариант - при открытии каждой формы вызывть процедуру в процедуре ПриОткрытии().

Самому очень интересно как организовать вызов некой процедуры при открытии ЛЮБОЙ формы. Мне это надо немного для другой цели, но сути это не меняет.
Вариант предложенный мало того что трудоемкий (в каждый модуль вызов вставить - заколебешься), так еще и не сработает при открытии всяких внешних отчетов и обработок, про которые заранее не известно что они есть.
11. Алексей 1 (AlX0id) 15.06.15 16:06 Сейчас в теме
(9) kraynev-navi,
Ну разве что выгрузить конфигурацию в XML, обработать его и загрузить )
12. Евгений Неизвесный (Mantis) 134 17.06.15 10:09 Сейчас в теме
Делал так же сделал регистр и пишу туда по подписке )
(11) AlX0id,
Проделывал такое с ролями ) выгрузил проставил реквизиты, загрузил
13. Никита Грызлов (nixel) 74 17.06.15 10:26 Сейчас в теме
(10) alex_4x, можно сделать подписку на ОбработкуПолученияФормы менеджеров объектов. Там определять имя предлагаемой формы и так же вести статистику.
14. Алексей Драчков (Bassgood) 569 17.06.15 13:18 Сейчас в теме
15. Алексей Драчков (Bassgood) 569 17.06.15 13:22 Сейчас в теме
(10) alex_4x, ответ на вопрос в предыдущем комментарии
16. Артем Артеменко (dock) 19 22.06.15 15:42 Сейчас в теме
Замечательно, собирать статистику...
но есть один нюанс - а если сам пользователь не знает о наличии требуемого отчета/документа ? :)
Kindman1980; fomix; +2 Ответить 1
17. Алексей Драчков (Bassgood) 569 30.06.15 10:37 Сейчас в теме
(16) dock, если пользователю требуется отразить что-то в программе или просмотреть какую-то информацию, то никто не мешает ему спросить как это сделать, в противном случае пользователю это и не нужно для повседневной работы
18. Василий Коровин (vasyak319) 124 30.06.15 10:56 Сейчас в теме
(9) kraynev-navi, я не из "отплюсовавших господ" (ибо нету такой подписки), но в типовых конфах это не проблема, ибо там есть процедуры общих модулей, которые вызываются при открытии форм и можно сесть этим процедурам на хвост. Для дополнительных отчётов тоже просто - они из одного места вызываются.
19. С К (kraynev-navi) 193 02.07.15 13:26 Сейчас в теме
(14) Bassgood, спасибо, не знал.
Однако, это "НО" перечеркивает ценность использования.
20. Allexey (alex_4x) 72 02.07.15 18:29 Сейчас в теме
Долго ли коротко ли... но процесс идет.
Выгрузил все файлы конфы в каталог (спасибо научили) оказывается есть такая возможность Конфигурация -> ВыгрузитьФайлыКонфигурации.
В функции ПриОткрытии, ПередОткрытием, ПередЗаписью, ПриЗаписи, в другие разные интересные места вписываю вызовы своих процедур (не руками конечно, а скриптом). Вообщем процесс идет. Получится очередной велосипед, замена всяких там подписок и прочих по идее штатных вещей. И всё из за того что на простых формах для 8.2
В Управляемых формах на 8.3 все в подписаках на события делать можно.
Посмотрим что получится. Пока конца края "задумкам" не видно.
21. Алексей Драчков (Bassgood) 569 02.07.15 22:00 Сейчас в теме
(20) alex_4x, читайте коммент (18) по поводу обычных форм (если конечно речь идет о типовой конфе) - практически во всех формах прикладных объектов вызываются одни и те же процедуры общих модулей, можно действовать через них.
22. Allexey (alex_4x) 72 03.07.15 16:15 Сейчас в теме
Нет, далеко не во всех. Процентов 20 вообще ничего не вызывают

Справочник.ВложенияЭлектронныхПисем.МодульОбъекта.txt

Процедура ПередЗаписью(Отказ)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;

Если ТипЗнч(Объект) = Тип("ДокументСсылка.ЭлектронноеПисьмо")
И ТипЗнч(Объект.ПредметКонтакта) = Тип("СправочникСсылка.ФизическиеЛица") Тогда
Предмет = Объект.ПредметКонтакта;
Иначе
Предмет = Справочники.ФизическиеЛица.ПустаяСсылка();
КонецЕсли;

КонецПроцедуры
Оставьте свое сообщение