В УТ10 есть типовая команда изменить, которая вызывает обработку «Обработка табличной части товары», где можно переносить товары из одного документа в другой и делать прочие вещи. Но она реализована не для всех документов.
Описывается методика ее использования для других документов, например, для документа «Переоценка в розницу».
Можно было бы поместить всю обработку во внешнюю, чтобы не менять код конфигурации, но тогда обработка не работает, т.к. не может получить метаданные внешней обработке внутри одного из алгоритмов.
Поэтому необходимо сделать маленькое косметическое изменение в самой обработке.
Нужно для реквизита ДокументОбъект формы обработки добавить тип документа, который мы хотим обрабатывать:
Внешняя обработка, приложенная к статье, просто вызывает обработку ОбработкаТабличнойЧастиТовары из конфигурации.
Ее код модуля:
Процедура Инициализировать(Объект, ИмяТабличнойЧасти, ТабличноеПоле) Экспорт;
О = Обработки.ОбработкаТабличнойЧастиТовары.Создать();
ФормаИзменениеТабличнойЧастиТовары = О.ПолучитьФорму();
ФормаИзменениеТабличнойЧастиТовары.ДокументОбъект = Объект;
ФормаИзменениеТабличнойЧастиТовары.мФормаДокумента = Объект.ПолучитьФорму();
ФормаИзменениеТабличнойЧастиТовары.мЕстьНДС = Ложь;
ФормаИзменениеТабличнойЧастиТовары.мЕстьЦенаВРознице = Истина;
ФормаИзменениеТабличнойЧастиТовары.мСпособЗаполненияЦен = Неопределено;
//Перенесем табличную часть
О.Товары.Загрузить(Объект.Товары.Выгрузить());
// Открываем форму обработки
ФормаИзменениеТабличнойЧастиТовары.Открыть();
КонецПроцедуры
Теперь нужно только добавить ее в внешние обработки табличных частей:
После этого в документе «Переоценка товаров в розницу» (или любом другом) появится нужная обработка:
Причины почему 1С не сделалала обработку для всех документов можно попытаться узнать на партнерском.