Журнал регистрации по конкретному документу или справочнику

26.06.15

База данных - Журнал регистрации

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

Данное решение рассчитано на управляемый интерфейс. Для обычного интерфейса подход будет другой, и здесь он не рассматривается.
Описанный механизм будет работать на УТ 11, Комплексной автоматизации в режиме управляемого приложения, и в принципе на любой конфигурации на управляемых формах.

Скачать файл

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

Наименование По подписке [?] Купить один файл
Конфигурация Журнал регистрации по конкретному объекту
.cf 29,96Kb
6
6 Скачать (1 SM) Купить за 1 850 руб.

Добрый день, уважаемые читатели!
Однажды меня окончательно замучало лазить в журнал регистрации и каждый раз его настраивать, чтобы посмотреть лог изменения документа или справочника.
Как известно, лень - двигатель прогресса. Вот и мне стало лень клацать лишние кнопки, и я решил немного упростить себе жизнь.
Итак - задача. Из любого документа или справочника сделать возможным открытие журнала регистрации по текущему выбранному элементу.
В данной небольшой статье я опишу простейший способ реализации - через вывод таблицы значений.
Статья будет дополняться по мере доработки механизма. Основной функционал мы рассмотрим ниже, а красивости и фишки будем добавлять по ходу.

Итак, определим, что же нам понадобится.
В рассматриваемом варианте реализации (а я прекрасно понимаю, что одну и ту же задачу можно решить кучей способов) нам понадобится

Общая команда "ЖурналРегистрацииПоОбъекту";
Группа команд "ЖурналРегистрации";
Отчет "Журнал регистрации по объекту".

Общую команду размещаем в нашей группе команд (можно обойтись без группы, но лично мне так удобее в дальнейшем добавлять/удалять команды), и указываем режим использования параметра - "Одиночный"
Обязательно указываем типы параметра команды - нужно отметить флажками все справочники и все документы. А также можно добавить и другие метаданные, если вдруг мы захотим. Например, планы видов характеристик.

В модуле команды пишем

&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)

ОткрытьФорму("Отчет.ЖурналРегистрацииПоОбъекту.ФормаОбъекта",Новый Структура("ПараметрОбъект", ПараметрКоманды));

КонецПроцедуры

В отчете создаем форму отчета. В форме создаем пустой реквизит с типом "Таблица значений" и добавляем его на форму.

В модуле формы пишем

 

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

Перем ПараметрКоманды;

ПараметрКоманды = Параметры.ПараметрОбъект;

ТЗ_рез = РеквизитФормыВЗначение("ТаблицаЖурналаРегистрации");
ВыгрузитьЖурналРегистрации(ТЗ_рез,Новый Структура("Данные", ПараметрКоманды),,,10000);
Для Каждого СтрокаТЗ Из ТЗ_рез Цикл
СтрокаТЗ.Уровень = Строка(СтрокаТЗ.Уровень);
СтрокаТЗ.СтатусТранзакции = Строка(СтрокаТЗ.СтатусТранзакции);
КонецЦикла; 
МассивРеквизитов = Новый Массив;
Для Каждого Колонка ИЗ ТЗ_рез.Колонки Цикл
НоваяКолонка = Новый РеквизитФормы(Колонка.Имя, Колонка.ТипЗначения, "ТаблицаЖурналаРегистрации");
МассивРеквизитов.Добавить(НоваяКолонка);
КонецЦикла; 
ИзменитьРеквизиты(МассивРеквизитов); 
ЗначениеВРеквизитФормы(ТЗ_рез, "ТаблицаЖурналаРегистрации");

//Создаем элементы на форме для отображения колонок
ЭлементТЗ = Элементы["ТаблицаЖурналаРегистрации"];
Для Каждого Колонка ИЗ ТЗ_рез.Колонки Цикл
НовыйЭлементФормы = Элементы.Добавить("ТаблицаЖурналаРегистрации"+Колонка.Имя, Тип("ПолеФормы"), ЭлементТЗ);
НовыйЭлементФормы.Вид = ВидПоляФормы.ПолеВвода;
НовыйЭлементФормы.ПутьКДанным = "ТаблицаЖурналаРегистрации" + "." + Колонка.Имя;
КонецЦикла;
КонецПроцедуры

Вот и все. Простейший вариант открытия журнала регистрации по конкретному объекту готов.
Небольшое замечание. На клиенте недоступны типы УровеньЖурналаРегистрации и СтатусТранзакцииЗаписиЖурналаРегистрации, поэтому преобразуем их в строку.

 Журнал регистрации

 Журнал регистрации 2

Что можно улучшить в данном варианте?
Ну, во первых - сделать фильтр видимости колонок. Во-вторых, сделать отборы по видам событий, пользователям, дате и т.д.
А что нам в этом поможет? Верно - загрузить нашу таблицу как Набор данных Объект в схему компоновки данных. Но это, как говорится, совсем другая история!

Следите за обновлениями статьи, оставляйте голоса и комментарии! Спасибо!

Журнал регистрации отчет по журналу регистрации

См. также

Журнал регистрации Системный администратор Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Россия Платные (руб)

История изменений реквизитов и табличных частей справочников, документов, независимых регистров сведений, возможность отката изменения, восстановление удаленных объектов, сбор статистики использования базы 1С. Альтернативный журнал регистрации.

22800 руб.

22.02.2018    36143    60    54    

57

Журнал регистрации Системный администратор Платформа 1С v8.3 1C:Бухгалтерия Платные (руб)

Конфигурация LogiCH эффективно решает проблему хранения и анализа записей журналов регистрации. Разработка использует столбцовую СУБД ClickHouse, одну из самых быстрых Big Data OLAP СУБД. Любой анализ журнала можно выполнить в одном отчете, в котором доступны все возможности СКД с учетом ограничений RLS. Количество подключаемых баз не ограничено и не влияет на скорость построения анализа.

6000 руб.

28.11.2018    21559    19    7    

44

Журнал регистрации Мониторинг Системный администратор Программист Бизнес-аналитик Руководитель проекта Платформа 1С v8.3 Платные (руб)

В сферу обязанностей при работе с клиентами входит контроль работы баз данных и серверов 1С. Нужно понимать что происходит в базах, есть ли ошибки, зависания у пользователей и фоновых задач, блокировки или какое-то необычное поведение системы, получение информации о причинах возникновения проблем и их оперативное устранение и т.д. В качестве источников информации использую консоль кластеров 1С, технологический журнал 1С, журналы регистрации базы 1С. Для автоматизации части операций мониторинга и анализа создал инструмент на основе 1С.

9000 руб.

28.08.2019    35418    29    21    

78

Журнал регистрации Программист Россия Бесплатно (free)

В материале рассматривается сравнение двух инструментов для работы с журналом регистрации 1С: утилиты ibcmd и платформы Vector. Описаны их функциональные возможности, тестирование производительности и практическое применение для преобразования логов в формат JSON.

20.11.2024    2339    user1913000    13    

20

Журнал регистрации Тестирование QA Программист Бесплатно (free)

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

21.10.2024    4372    leemuar    8    

24

Инструменты администратора БД Журнал регистрации Системный администратор Платформа 1С v8.3 1С:Управление торговлей 11 Абонемент ($m)

Внешняя обработка для регламентного сокращения журнала регистрации для конфигураций на базе БСП и платформы 8.3.20+

1 стартмани

29.12.2023    2791    45    dima_gsv    3    

14

Журнал регистрации Мониторинг Системный администратор Программист Абонемент ($m)

Как легко и быстро с помощью специализированных решений собирать, парсить и передавать логи и метрики.

1 стартмани

19.11.2023    1956    6    AlexSTAL    0    

8
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Pavean 10.06.15 16:32 Сейчас в теме
Я так понимаю что пока от http://infostart.ru/public/338203/ ничем не отличается по функционалу?
2. axelerleo 324 10.06.15 16:48 Сейчас в теме
(1) Pavean, Пока что да, за исключением того, что БСП не используется:)
Оставьте свое сообщение