Отчет об изменениях в объектах
База данных - Журнал регистрации
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
Таблица строится по сравнению реквизитов объекта и ссылки
Обработа универсальная, не требует изменений в конфигурации, тестировалась в обычном приложении (для тонкого клиента надо переделывать вывод таблицы)
Первоначальные реквизиты объектов хранятся в табличной части обработки.
Обработка удобна для проверки результатов загрузки, или корректировки базы. Для постоянного подключения лучше воспользоваться другими обработками, учитывающими изменения в нескольких сеансах.
Для удобства можно добавить ее в общие обработчики записи и включать при необходимости отладки (без изменения обработок загрузки)
Можно использовать как аналог версионирования - хранить в рег.сведений только изменения ссылок, но тогда обработку надо доработать чтобы не терялась информация при удалени/добвлении строк
Пока обрабатываются только справочники и документы (без учета движений).
Для того, что бы обработка начала слушать запись объекта перед его записью, например при создании, надо его подписать методом обработки .РегистрироватьИзменения(объект):
(ЛогИзменений = ВнешниеОбработки.Создать("c:\Epf\Trans\ОтчетОбИзменнииОбъетов.epf"); )
Док = Ссылка.ПолучитьОбъект();
ЛогИзменений.РегистрироватьИзменения(Док);
Можно включить возможность отмены изменений: ЛогИзменений.ИспользоватьТранзакцию();
Когда все изизменения завершены (документы загруженны) можно показать отчет: ЛогИзменений.ПоказатьРезультат();
Если включили транзакцию - форма откроется в модальном режиме, и в меню действия добавиться диалог сохранить / отменить изменения (не придумал как это сделать без модального режима?)
Что бы отчет по изменнеиям не был слишком большим - реквизиты табличной части проверяются только если не изменилось количество строк (+/- строки). Выводится не больше 20 изменений одной таб.части.
Созданные-измененные документы можно сразу провести - действия => провести документы.
Обнаружил не очевидную вещь: Если для одного объета два раза вызвать ДобавитьОбработчик Объект.ПередЗаписью, ЭтаОбработка.ПередЗаписьюДокумента; то обработчик будет вызываться два раза (!)
В обработку V8Exchan82.epf добавлен пример вызова ЛогИзменений - теперь можно посмотреть, что загрузилось в базу, и при необходимости отменить загрузку (галочка на фоме "фл использовать транзакцию лог изменений").
( было интересно отследить откуда вызывается запись в V8Exchan82.epf ;-) )
Идея обработки довольно проста, но похожей на ИнфоСтарте не нашел
(такое уже сделано в //infostart.ru/public/16654/ ,но по дуругому -через добавление текста в обработчики при записи)
В качестве примеров работы с СКД использовались :
//infostart.ru/public/16408/
//infostart.ru/public/72280/
-Спасибо!
Точно такого использования СКД не нашел - обработка может быть полезнна как пример програмного создания СКД по таблице значений, с группировками, ресурсами и возможностью пере-настроить СКД (гораздо легче было бы сразу делать отчетом с готовой схемой компановки)
Похожие обработки:
Визуальный контроль изменений документа
Изменения объектов (версионирование)
Универсальная выгрузка/загрузка XML (2.0.26) С АНАЛИЗОМ ИЗМЕНЕННЫХ ОБЪЕКТОВ ПРИ ЗАГРУЗКЕ
Подсистема восставноления и регистрации изменени данных
Журнал регистрации изменений
Еще интересный вариант проверки изменнеий -сравнивать с эталонной базой: //infostart.ru/public/102176/
что то подобное есть в обработке СопоставлениеОбъектовИнформационныхБаз из библиотеке стандартных подсистем, но описаний работы не нашел, и пока не разобрался как это работает. -если кто видел описание -киньте ссылку.
upd 27/12/2011: Добавлен проведедение созданных-изменных документов, добавлены кнопки сворачивания групп
upd 24/11/2011: Добавлен пример вызова из V8Exchan82.epf
Вступайте в нашу телеграмм-группу Инфостарт