Платформа 1С:Предприятие 8 имеет штатный механизм захвата изменений данных своих объектов. Эта подсистема реализуется в рамках платформы при помощи объектов "План обмена". Данный механизм аналогичен по своему назначению захвату изменений данных (change data capture) классических СУБД. Однако, более точной аналогией будет механизм отслеживания изменений (change tracking) MS SQL Server, так как планы обмена 1С регистрируют только уникальные ключи изменённых объектов без их данных.
Подробное исследование и описание работы планов обмена 1С
Язык запросов DaJet реализует возможность обращения к таблицам регистрации изменений объектов 1С. Идентификатором такой таблицы является полное наименование объекта 1С, дополненное служебным словом "Изменения".
Пример ниже демонстрирует запрос получения изменений справочника "Номенклатура" из плана обмена "ПланОбменаDWH" для узла обмена (подписчика) с кодом "DWH-01".
SELECT TOP 10
ПланОбмена.Код AS Получатель,
Данные.Ссылка AS Товар,
Данные.Код AS КодТовара,
Данные.Наименование AS Наименование
-- Таблица регистрации изменений
FROM Справочник.Номенклатура.Изменения AS Изменения
-- Таблица плана обмена - список подписчиков
INNER JOIN ПланОбмена.ПланОбменаDWH AS ПланОбмена
ON Изменения.УзелОбмена = ПланОбмена.Ссылка
-- Основная таблица данных
LEFT JOIN Справочник.Номенклатура AS Данные
ON Изменения.Ссылка = Данные.Ссылка
WHERE ПланОбмена.Код = 'DWH-01'
Получатель | Ссылка | Код | Наименование |
DWH-01 | {215:150015af-b8e9-8dc4-11e0-50911643ef2e} | ЦБ-0022 | Товар 22 |
DWH-01 | {215:150015af-b8e9-8dc4-11e0-50911643ef32} | ЦБ-0033 | Товар 33 |