Рассмотрим случай, когда настроен двустронний обмен между базами.
1. Объект (элемент справочника, документ) может быть введен в любую из связанных баз. В процессе обмена между базами данный объект создается в другой базе. Таким образом можно сказать что при обмене есть база источник (из которой происходит выгрузка) база приемник (в которую загружабтся данные из базы источника) и одновременно какя-то из этих баз для объекта будет являться родительской базой (т.е. базой в которой этот объект был изначально создан пользователем).
2. При обмене данные переносятся только из родительской базы в базу приемник, а это значит, что редактировать объекты необходимо в той базе в которой они были созданы. Например: если в УТ создан документ "Расходный кассовый ордер", после обмена он создается в базе БП. Если обнаружена ошибка и РКО необходимо исправить, то это надо делать в базе УТ, и после очердного обмена исправления появятся в базе БП. Если исправления сделать в базе БП, то после обмена в базе УТ документ останется в "первозданном" виде (т.к. база БП не является родительской для данного документа и данные из нее не будут перенесены в базу примник), а в базе БП документ будет в исправленном состояниии (потому что там мы его отредактировали), т.е. данные в связанных базах данных будут в рассогласованном состоянии. Если теперь в базе УТ перепровести этот РКО или как то изменить, то он встанет в очередь на обмен и при последующем обмене, в базе БП РКО будет приведен в состояние как в базе УТ. Таким образом данные в двух базах данных придут в согласованное состоние, но наши изменения будут потеряны.
Остюда делаем простой вывод - Изменять (редактировать, помечать на удлаение) объекты надо в той базе в которой они созданы.
Теперь можно написать регламент как правильно помечать на удаление объекты:
1. Делаем резервные копии баз данных.
2. Помечаем на удаление объекты в той базе в которой они созданы.
3. Делаем обмен и получаем две базы данных, данные в которых согласованы.
4. Запускаем обработку "Удаление помеченных объектов".
Что делать если нет уверенности, что пользователи помечали на удаление объекты в соотвтествии с регламентом? Теоретически надо сравнить состояние объектов в двух базах и сделать выводы, что с ними делать. Для сравниения состояния помеченных на удлаение объектов написана обработка представленная в данной публикации.
Как пользоваться обратокой:
1. Запускаем обработку в базе УТ. На вкладке "Рассматривать объекты", галочками помечаем интересующие нас объекты.
2 Переходим на вкладку "Помеченные на удаление объекты". Кликаем по кнопке "Найти объекты", в результате заполнится таблица с помеченными на удаление объектами, в текущей базе (базе УТ).
3.Задаем имя файла и сохраняем таблицу в файл (кликаем по кнопке 3).
4. Запускаем обработку в базе БП. Переходим на вкладку "Помеченные на удаление объекты". Восстанавливаем из файла таблицу из базы УТ (задаем имя файла и кликаем по кнопке 4)
5. Переходим на вкладку "Помеченные на удаление объекты" и кликаем по кнопке "Сравнить". Заполняет ся таблица с результатами анализа.
Потом повторяем все шаги с начала, только наинаем с базы БП. Таким образом получаем две таблицы с резуьтатми поиска помеченных на удаление объектов. А дельше думаем что со всем этим делать :)
Удачи.