Потребовалось выгружать изменения в строго определенном порядке.
Готовлю массив объектов и передаю его в 3-й параметр метода ПланыОбмена.ВыбратьИзменения. Но в документации не нашел упоминания, в каком порядке будут выбираться объекты. Эксперименты показали, что вроде бы он совпадает с порядком объектов в массиве. Но мне нужна уверенность.
"Совпадение порядка следует считать случайностью. В общем случае ничего не гарантируется. Да и при разработке задача обеспечения заданного извне порядка в выборке не ставилась."
На партнерском форуме предложили следующее решение.
ПланыОбмена.ВыбратьИзменения(Узел, МассивКлючейОбъектов);
Для каждого КлючОбъекта Из МассивКлючейОбъектов Цикл
Объект = ПолучитьОбъектПоКлючуДляВыгрузки(КлючОбъекта, Узел);
ЗаписьXML.Записать(Объект);
КонецЦикла;
Правда тут есть тонкий момент с возможностью отсутствия изменения по какому то объекту. Если на вход подаются только объекты, по которым гарантировано есть изменения или наличие изменения объекта не важно, то способ полностью решает задачу.
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.