УТ11.4
При создании заказа клиента есть стандартный механизм импорта из Excel. Открывается форма, в которую можно вставить код, наименование, артикул товара, его кол-во и цену.
Нужно сделать то же для инвентаризации. Скажите, это подключаемая к документам форма, или она работает только в заказе? Было бы очень удобно подключить ее в инвентаризацию.
---
нужно посмотреть процедуру ОбработкаВыбора в модуле формы ЗаказКлиента, и сделать аналогичную в нужной форме (модуле формы), например как у вас ПересчетТоваров
---
Может пригодится кому... Вставляла в расширение.

```1c
    &НаКлиенте
    Процедура РП_ОбработкаВыбораПосле(ВыбранноеЗначение, ИсточникВыбора)
    Если ИсточникВыбора.ИмяФормы = "Обработка.ЗагрузкаДанныхИзВнешнихФайлов.Форма.Форма" Тогда

    ПолучитьЗагруженныеТоварыИзХранилища(ВыбранноеЗначение.АдресТоваровВХранилище);
    конецесли;
    КонецПроцедуры

    &НаСервере
    Процедура ПолучитьЗагруженныеТоварыИзХранилища(АдресТоваровВХранилище)

    СтруктураДействий = Новый Структура;
    КэшированныеЗначения = ОбработкаТабличнойЧастиКлиентСервер.ПолучитьСтруктуруКэшируемыеЗначения();

    ТоварыИзХранилища = ПолучитьИзВременногоХранилища(АдресТоваровВХранилище);

    Для Каждого СтрокаТоваров Из ТоварыИзХранилища Цикл
    СтрокаТЧТовары = Объект.Товары.Добавить();
    ЗаполнитьЗначенияСвойств(СтрокаТЧТовары, СтрокаТоваров,,"НомерСтроки");

    ОбработкаТабличнойЧастиСервер.ОбработатьСтрокуТЧ(СтрокаТЧТовары, СтруктураДействий, КэшированныеЗначения);

    КонецЦикла;

    КонецПроцедуры
```
---
подключаемая
---
Спасибо, нашла код в форме ЗаказКлиента.
Добавила форму ПересчетТоваров в расширение. Создала кнопку на закладке Товары. Перенесла код, закомментировав ненужное из формы ЗаказКлиента.

```1c
    &НаКлиенте
    Процедура РП_ЗагрузитьИзВнешнегоФайлаПосле(Команда)
    ПараметрыФормы = Новый Структура();
    ПараметрыФормы.Вставить("ЗагружатьЦены", ложь);
    //ПараметрыФормы.Вставить("ЦенаВключаетНДС", Объект.ЦенаВключаетНДС);
    //ПараметрыФормы.Вставить("НалогообложениеНДС", Объект.НалогообложениеНДС);
    //ПараметрыФормы.Вставить("ВернутьМногооборотнуюТару", Объект.ВернутьМногооборотнуюТару);
    //ПараметрыФормы.Вставить("Соглашение", Объект.Соглашение);
    ПараметрыФормы.Вставить("Дата", Объект.Дата);

    //ПараметрыФормы.Вставить("Валюта", Объект.Валюта);

    //Если Объект.ХозяйственнаяОперация = ПредопределенноеЗначение("Перечисление.ХозяйственныеОперации.ПередачаНаКомиссию") Тогда
    // ПараметрыФормы.Вставить("ОтборПоТипуНоменклатуры", Новый ФиксированныйМассив(НоменклатураКлиентСервер.ОтборПоТоваруМногооборотнойТаре()));
    //КонецЕсли;

    ОткрытьФорму(
    "Обработка.ЗагрузкаДанныхИзВнешнихФайлов.Форма.Форма",
    ПараметрыФормы,
    ЭтаФорма,
    УникальныйИдентификатор);
    КонецПроцедуры
```

Гениально открывается форма обработки, позволяет добавить товары, производит сопоставление и благополучно закрывается...
Обратила внимание, что не заполнен параметр ИмяТЧ. Передала его явно:

```1c
    ПараметрыФормы.Вставить("ИмяТЧ", Объект.Товары);
```

Тот же результат. Кстати, из формы ЗаказКлиента он также не передается :-(

Как же их подружить-то теперь :-(((((
---
нужно посмотреть процедуру ОбработкаВыбора в модуле формы ЗаказКлиента, и сделать аналогичную в нужной форме (модуле формы), например как у вас ПересчетТоваров
---
Спасибо!!!
---
Может пригодится кому... Вставляла в расширение.

```1c
    &НаКлиенте
    Процедура РП_ОбработкаВыбораПосле(ВыбранноеЗначение, ИсточникВыбора)
    Если ИсточникВыбора.ИмяФормы = "Обработка.ЗагрузкаДанныхИзВнешнихФайлов.Форма.Форма" Тогда

    ПолучитьЗагруженныеТоварыИзХранилища(ВыбранноеЗначение.АдресТоваровВХранилище);
    конецесли;
    КонецПроцедуры

    &НаСервере
    Процедура ПолучитьЗагруженныеТоварыИзХранилища(АдресТоваровВХранилище)

    СтруктураДействий = Новый Структура;
    КэшированныеЗначения = ОбработкаТабличнойЧастиКлиентСервер.ПолучитьСтруктуруКэшируемыеЗначения();

    ТоварыИзХранилища = ПолучитьИзВременногоХранилища(АдресТоваровВХранилище);

    Для Каждого СтрокаТоваров Из ТоварыИзХранилища Цикл
    СтрокаТЧТовары = Объект.Товары.Добавить();
    ЗаполнитьЗначенияСвойств(СтрокаТЧТовары, СтрокаТоваров,,"НомерСтроки");

    ОбработкаТабличнойЧастиСервер.ОбработатьСтрокуТЧ(СтрокаТЧТовары, СтруктураДействий, КэшированныеЗначения);

    КонецЦикла;

    КонецПроцедуры
```