История работы пользователей

26.06.24

База данных - Инструменты администратора БД

Подключаемая обработка для просмотра истории работы конкретного пользователя

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
История работы пользователей:
.epf 16,10Kb ver:1.3
132 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Изучая записи Журнала Регистрации в поисках намеков на действия пользователей, в очередной раз, поймал себя на мысли, что хорошо было бы посмотреть не только сухие данные по изменению объектов ИБ, но и увидеть как пользователь работает с интерфейсом системы. Какими вариантами отчетов пользуется, какие разделы открывает, какие документы открывал. Часто эта информация нужна, чтобы оперативно получить ссылку на объект с которым пользователь работал и у него возникли проблемы.

Опытные разработчики знают, что можно зайти под любым пользователем, подменив на время входа пароль, и все увидеть самому. Но это всегда долго. Нужно запустить инструменты, найти пользователя, дождаться открытия программы и т.д. И я решил изучить вопрос истории работы пользователей детальней.

Читая документацию 1С стало ясно, что последние 200 записей истории каждого пользователя хранятся в ИБ на сервере в таблице _usersworkhistory.

UsersWorkHistory

Документация поведала мне, что есть замечательный метод ИсторияРаботыПользователя.Получить(). Но описание к нему дало ясно понять, что метод этот очень недоработан, т.к. менеджер ИсторияРаботыПользователей позволяет очистить всю историю всех пользователей, но получить всю историю или по какому-либо отдельно взятому пользователю - невозможно. Только под Текущим!

Я подумал, неужели в 1С нет никаких методов запустить отдельно взятую процедуру под нужным мне пользователем? И оказалось, что легких путей - нет! Но есть Регламентные задания, которые умеют выполняться под любым пользователем...

Оставалось понять как решить следующие потянувшиеся проблемы:

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

- регламентные задания невозможно запустить по щелчку мыши в отличие от фоновых;

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

- регламентное задание не вернет мне никаких данных, т.к. оно не знает по какому адресу ему поместить результат (параметры ведь не передать никак), к тому же между сессиями ВременноеХранилище не передается. (несмотря на то что документация заявляет об обратном. Все сделал по инструкции из документации с передачей пустого значения и адреса хранилища)

- нужно как-то ловить момент завершения регламентного задания;

 

Все эти проблемы были решены через трюки и уловки. Скажу только, что обработку обязательно необходимо подключать через механизм БСП: ДополнительныеОтчетыИОбработки, под пользователем с правами Администратора, обязателен Клиент-Серверный вариант базы (иначе рег.задания не работают), обработка в процессе выборки истории создает рег.задание в ИБ, пишет данные в Справочник.ДополнительныеОтчетыИОбработки, удаляет рег.задание по окончании. Никакие внешние компоненты, shell скрипты или COM объекты не используются.

Пользуйтесь на свой страх и риск, на здоровье! Ничего такого серьезного и криминального она не делает. Советы по улучшению приветствуются.

UPDATE:

- 26.06.2024

* Исправление ошибки с ключом "Пользователь"

Проверено на следующих конфигурациях и релизах:

  • 1С:ERP Управление предприятием 2, релизы 2.5.12.270

Вступайте в нашу телеграмм-группу Инфостарт

См. также

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

24900 руб.

20.08.2024    51177    286    145    

262

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С:Предприятие 8 1C:Бухгалтерия Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

16000 руб.

10.11.2023    21182    85    42    

95

Инструменты администратора БД Роли и права Системный администратор Программист Пользователь 1С 8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Документооборот 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 17.06.2025, версия 1.3

20400 руб.

06.12.2023    18978    70    10    

103

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтер Пользователь 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    40828    123    152    

84

Инструменты администратора БД Системный администратор Программист 1С:Предприятие 8 1C:Бухгалтерия Платные (руб)

Брандмауэр для сервера 1С включает в себя управление возможностью начала и возобновления сеансов пользователей по различным условиям, ограничение общего числа возможных сеансов для работы с информационной базой, резервирование возможности работы с информационной базой определенных польззователей, запрет запуска нескольких сеансов для пользователя, журнализация событий начала (возобновления) и завершения (гибернации) сеансов, ведение списка активных сеансов для информационных баз кластера серверов

12000 руб.

06.02.2017    34451    148    18    

53

Архивирование (backup) Инструменты администратора БД 1С:Предприятие 8 1C:Бухгалтерия 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Данная разработка позволит решить вопрос с резервным копированием Ваших баз в автоматическом режиме, расположенных на сервере 1С. Система умеет ставить блокировки на вход, блокировать фоновые задания, принудительно отключать сеансы пользователей. И все это система делает в автоматически при создании бэкапа (или через команду). Выгрузка происходит в родной формат 1С - .dt. Так же система умеет архивировать данные выгрузки с установкой пароля. Умеет менять расширение файла zip или dt на любое указанное вами, что позволит сохранить выгрузки от шифровальщика. Может удалять старые копии выгрузок, оставляя указанное количество резервных копий, начиная с самой поздней. Только для WINDOWS!

6000 руб.

06.11.2012    77052    633    45    

91
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. user929348 13.08.18 01:17 Сейчас в теме
При выборе любого пользователя вылетает с ошибкой
{ВнешняяОбработка.ПросмотрИсторииРаботыПользователя.Форма.ОсновнаяФорма.Форма(93)}: Ошибка при вызове метода контекста (ОжидатьЗавершения)
Задания[0].ОжидатьЗавершения();
по причине:
Выполнение одного или нескольких заданий завершилось с ошибкой
2. PerlAmutor 160 13.08.18 13:03 Сейчас в теме
(1) В ЖР пишет что-нибудь?
19. user2008729 11.12.23 11:13 Сейчас в теме
(2) Тоже такая ошибка вышла, можете пожалуйста подсказать.
Ошибка при вызове метода контекста (ОжидатьЗавершения)
{ВнешняяОбработка.ПросмотрИсторииРаботыПользователя.Форма.ОсновнаяФорма.Форма(111)}:Задания[0].ОжидатьЗавершения();
{ВнешняяОбработка.ПросмотрИсторииРаботыПользователя.Форма.ОсновнаяФорма.Форма(86)}:Если ПроверкаФоновыхЗаданийСервер(УникальныйИдентификаторРегламентногоЗадания) Тогда

по причине:
Выполнение одного или нескольких заданий завершилось с ошибкой
3. user929348 15.08.18 12:55 Сейчас в теме
Только такая

РегламентноеЗаданиеПолученияИсторииПользователя, Предупреждение безопасности

Открывается "Просмотр истории работы пользователя".

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

Разрешить открывать данный файл?
4. PerlAmutor 160 15.08.18 14:34 Сейчас в теме
(3) Этот вопрос будет у Вас выскакивать на попытку открыть любую внешнюю обработку. Это механизм защиты от опасных действий в новых версиях платформы. Есть несколько вариантов отключения этой проверки. Выберите тот, который принят у вас в организации политикой безопасности.
5. user929348 15.08.18 16:22 Сейчас в теме
Я в курсе. Вопрос в первом сообщении
6. PerlAmutor 160 15.08.18 18:12 Сейчас в теме
(5) Уточните версию платформы и конфигурацию.
7. user929348 17.08.18 15:13 Сейчас в теме
Управление торговлей, редакция 11.1 (11.1.10.167)
1С:Предприятие 8.3 (8.3.10.2580)

Аналогичная ошибка в 1С:ERP Управление предприятием 2 (2.4.5.54)
8. PerlAmutor 160 20.08.18 21:28 Сейчас в теме
(7) Проверил на платформе 8.3.11. Ошибок не обнаружил, однако сделал некоторые изменения для подстраховки некоторых моментов. Ссылку на новую версию обработки отправил в личку. Также обновил обработку в публикации.
9. user929348 21.08.18 10:55 Сейчас в теме
Та же ошибка, проверил на платформе 8.3.12.1440 в файловом варианте.
Интересно, у других 21 скачавших нет таких ошибок?
10. PerlAmutor 160 21.08.18 19:32 Сейчас в теме
(9) Развернул файловую демо-базу ERP, все работает. Обратил внимание на то, что в файловой базе история пользователя на УФ может появиться не сразу, а спустя несколько секунд (возможно даже больше 10-20). Видимо для файловых баз есть какая-то задержка в запуске регламентных заданий.
Прикрепленные файлы:
11. TreeDogNight 22 24.09.18 10:30 Сейчас в теме
В последних версиях платформы можно обойтись без использования Регламентных заданий, используя Систему взаимодействия. Можно дать запрос всем активным пользователям на получение истории работы, либо записи ей в какой-нибудь регистр.
12. PerlAmutor 160 24.09.18 11:30 Сейчас в теме
(11) Как Вы и сказали новая возможность ограничена списком активных пользователей и новой версией платформы. Еще там вроде бы нужно ставить отдельный корпоративный сервер взаимодействий, который тоже немалых денег стоит. В общем нужно тему изучить детальней, может быть пригодится еще в чем-то.
TreeDogNight; +1 Ответить
13. romankoav 4 28.09.18 15:26 Сейчас в теме
Вопрос немного не по теме.
Никто не сталкивался с тем, что по одним объектам метод ИсторияРаботыПользователя.Получить() выдает инфу, а по другим нет?
У меня в частности по справочнику пользователей работает, а по справочнику, например ВидыБюджета, - нет!!
Платформа 1С:Предприятие 8.3 (8.3.12.1567). Конфигурация УПП 1.3. База файловая
14. romankoav 4 28.09.18 15:44 Сейчас в теме
Нда... применение аналитических способностей выявило, что у этих объектов управляемые формы... вот косяк. Получается в обычных формах не работает?
15. PerlAmutor 160 28.09.18 17:19 Сейчас в теме
16. romankoav 4 28.09.18 17:44 Сейчас в теме
в документы при открытии еще можно просто (в 1 месте) принудительно поставить запись в историю, а вот в отчеты, справочники - уже нет. Печалька ((((
17. Godfather85 02.09.22 11:37 Сейчас в теме
1С:Предприятие 8.3 (8.3.20.1674)
1С:Комплексная автоматизация 2 (2.4.13.103)

Клиент-сервер( MSSQL)
чистый экран при запуске
18. PerlAmutor 160 02.09.22 17:16 Сейчас в теме
(17) Скриншот можете показать? Выполнение регламентных заданий включено в базе?
20. user2008729 11.12.23 11:16 Сейчас в теме
При выборе другого пользователя выходит такая ошибка:
Поле объекта не обнаружено (Пользователь)
{ВнешняяОбработка.ПросмотрИсторииРаботыПользователя.Форма.ОсновнаяФорма.Форма(125)}:РезультатПользователя = Настройки.Пользователь;
{ВнешняяОбработка.ПросмотрИсторииРаботыПользователя.Форма.ОсновнаяФорма.Форма(86)}:Если ПроверкаФоновыхЗаданийСервер(УникальныйИдентификаторРегламентногоЗадания) Тогда
21. user2008729 11.12.23 12:50 Сейчас в теме
22. ptgb 24.06.24 13:07 Сейчас в теме
Не работает на версии ERP 2.5.12.270

Поле объекта не обнаружено (Пользователь)
{ВнешняяОбработка.ПросмотрИсторииРаботыПользователя.Форма.ОсновнаяФорма.Форма(125)}:РезультатПользователя = Настройки.Пользователь;
{ВнешняяОбработка.ПросмотрИсторииРаботыПользователя.Форма.ОсновнаяФорма.Форма(86)}:Если ПроверкаФоновыхЗаданийСервер(УникальныйИдентификаторРегламентногоЗадания) Тогда

[ОшибкаВоВремяВыполненияВстроенногоЯзыка, ОшибкаИспользованияВстроенногоЯзыка]
23. PerlAmutor 160 26.06.24 21:36 Сейчас в теме
24. VladimirArtyushin 9 11.10.24 20:39 Сейчас в теме
ERP 2.5.19.63 (8.3.25.1374) - работает!
25. PiotrLoginov 22.11.24 12:00 Сейчас в теме
Правильно я понимаю, что история работы пользователя примерно через 70 дней удаляется платформой автоматически?
В документации об этом сказано вот что: ровным счетом ничего. Видимо, тот из разработчиков платформы, кто решил, что лучше будет регулярно необратимо удалять какую-то информацию из БД, не хотел акцентировать внимание на этой своей маленькой шалости
Для отправки сообщения требуется регистрация/авторизация