Всем здравствуйте.
Как определить новые (и удаляемые) записи в РС через запрос?
Есть загрузка откуда то. Загружаются некие данные в некий Регистр Сведений (далее РС).
Когда записей в РС нет, то все быстро и красиво. Пишем в набор РС из таблицы.
А если записи есть, то нужно определить есть ли изменения в наборе.
Входной параметр запроса - таблица регистра которая собирается и которую нужно записать.
Каким должен быть запрос, чтобы определить что есть изменения?
Не перезаписывая при этом регистр вхолостую.
РС независимый, непериодический?
Запросом соединяешь полным соединением текущий РС и новую таблицу. По всем полям "=". Таким образом получаешь возможность проверить. Где "ЕСТЬ NULL" какое-то поле из текущего РС - значит строку надо добавить. Где "ЕСТЬ NULL" какое-то поле из новой таблицы - удалить. Если нуллов нет - не трогать.
РежимЗамещения (ReplacementMode)
Слияние (Merge)
Описание:
Будет выполнено слияние записей из набора записей с существующими записями регистра:
Существующие записи регистра, совпадающие по значениям ключевых полей с записями из набора записей, будут перезаписаны.
Записи набора, для которых нет соответствия среди существующих записей регистра, будут добавлены.
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс