Здравствуйте, как добавлять при выборе из справочника в табличную часть что - либо?
Вот есть документ, выбираем номенклатуру колбаса, в табличной части товары выбираем единицу измерения(установил отбор).
Открываю форму

```1c
    на сервере

    ФормаВыб = Справочники.ЕдиницыИзмерения.ПолучитьФорму("ФормаВыбора", ЭтаФорма);
    ФормаВыб.Отбор.Владелец.Значение = объект.Номенклатура;
    ФормаВыб.Отбор.Владелец.Использование = Истина;
    ФормаВыб.РежимВыбора = Истина;
    ФормаВыб.Открыть();
```

потом при изменении единицы измерения

на клиенте

```1c
    СтандартнаяОбработка=Ложь;
    ПолучателиЕдиницаИзмеренияПриИзмененииНаСервере();
```

Все открывает как надо, но он не подставляет в табличную часть то значение которое я выбрал(допустим штуки)
подсмотрел на форумах, нужно чтото такое дописать

&НаКлиенте

```1c
    Процедура ПолучателиОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)

    СтандартнаяОбработка=Ложь;

    НоваяСтрока = Элементы.Получатели.ДобавитьСтроку();

    НоваяСтрока.ЕдиницаИзмерения = ВыбранноеЗначение;

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

и не пашет, что не так?
---
```1c
    &НаКлиенте
    Процедура ЕдИзмНачалоВыбора()
    СтандартнаяОбработка = ЛОЖЬ;
    НФорма = ПолучитьФорму("Справочник.ЕдиницыИзмерения.ФормаВыбора",,ЭтаФорма);
    НФорма.ОткрытьМодально();
    НоваяСтрока = Элементы.Получатели.ДобавитьСтроку();
    НоваяСтрока.ЕдиницаИзмерения = НФорма.ТекущийЭлемент.ТекущиеДанные;
    КонецПроцедуры
```

в форме ОбработкаВыбора появится выбранное значение, там можно получателю добавить ед. изм.
---
```1c
    &НаКлиенте
    Процедура ЕдИзмНачалоВыбора()
    СтандартнаяОбработка = ЛОЖЬ;
    НФорма = ПолучитьФорму("Справочник.ЕдиницыИзмерения.ФормаВыбора",,ЭтаФорма);
    НФорма.ОткрытьМодально();
    НоваяСтрока = Элементы.Получатели.ДобавитьСтроку();
    НоваяСтрока.ЕдиницаИзмерения = НФорма.ТекущийЭлемент.ТекущиеДанные;
    КонецПроцедуры
```

в форме ОбработкаВыбора появится выбранное значение, там можно получателю добавить ед. изм.
---
```1c
    ФормаВыб = Справочники.ЕдиницыИзмерения.ПолучитьФорму("ФормаВыбора", ЭтаФорма)
```

Поставь владельцем не всю форму, а "Получатели".
---
Плюсанул (2), но перечитал пост и теперь вообще не понимаю, что хочет автор.
Какая-то доп-табличная часть "Получатели", куда параллельно добавляются единицы измерения из ТЧ товаров... Фигня какая-то. А если поменяют? А еще куча других "если"?
---
Ну я так образно ее обозвал, чтобы проще было объяснить, у меня одна табчасть - получатели(свого рода данные о номенклатуре)
тоесть форма такая, 1 реквизит = Номенклатура(выбрали, допустим - колбаса), далее в табличной части *получатели* автоматически создается строка с единицей измерения(шт), характеристикой(вкусное мясо) и контрагента(тому кому мы отправляем колбасу(получатель).
---
щас попробую.
---
Нет. ничего не изменилось.
---
Либо перехватывай обработку выбора у самой формы и делай там что тебе нужно. Но это плохой вариант.
---
```1c
    &НаСервере
    Процедура ПолучателиЕдиницаИзмеренияПриИзмененииНаСервере(ЕдиницаИзмерения)
    ФормаВыб = Справочники.ЕдиницыИзмерения.ПолучитьФорму("ФормаВыбора", Элементы.Получатели);
    ФормаВыб.Отбор.Владелец.Значение = объект.Номенклатура;
    ФормаВыб.Отбор.Владелец.Использование = Истина;
    ФормаВыб.РежимВыбора = Истина;

    ФормаВыб.ОткрытьМодально();
    КонецПроцедуры

    &НаКлиенте
    Процедура ПолучателиЕдиницаИзмеренияНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    СтандартнаяОбработка=Ложь;
    СтрТЧ = Элементы.Получатели.ТекущиеДанные;
    ВыбранноеЗначение=ТекущийЭлемент;
    ПолучателиЕдиницаИзмеренияПриИзмененииНаСервере(стрТЧ.ЕдиницаИзмерения);

    ПолучателиОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка);

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

    &НаКлиенте
    Процедура ПолучателиОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)

    СтандартнаяОбработка=Ложь;

    Элементы.Получатели.ДобавитьСтроку();
    стрТЧ= Элементы.Получатели.ТекущиеДанные;
    стрТЧ.ЕдиницаИзмерения = ВыбранноеЗначение;

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

Чутка похимичил
он тупо не добавляет данные - Элементы.Получатели.ДобавитьСтроку(); строку то он добавляет и все, даже если указать специально, что мол стрТЧ. ЕдиницаИзмерения = "штукарь"; то ничего не произойдет.
---
```1c
    &НаСервере
    &НаСервере
    функция ПолучателиЕдиницаИзмеренияПриИзмененииНаСервере()
    ФормаВыб = Справочники.ЕдиницыИзмерения.ПолучитьФорму("ФормаВыбора",ЭтаФорма);
    ФормаВыб.Отбор.Владелец.Значение = объект.Номенклатура;
    ФормаВыб.Отбор.Владелец.Использование = Истина;
    ФормаВыб.РежимВыбора = Истина;

    ФормаВыб.ОткрытьМодально();
    ном = ФормаВыб.ТекущийЭлемент.ТекущиеДанные;
    возврат ном.ссылка;
    Конецфункции

    &НаКлиенте
    Процедура ПолучателиЕдиницаИзмеренияНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    СтандартнаяОбработка=Ложь;
    СтрТЧ = Элементы.Получатели.ТекущиеДанные;
    Элементы.Получатели.ДобавитьСтроку();

    ВыбранноеЗначение = ПолучателиЕдиницаИзмеренияПриИзмененииНаСервере();

    ПолучателиОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка);

    ВыбранноеЗначение = объект.ЕдиницаИзмерения;

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

    &НаКлиенте
    Процедура ПолучателиОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)

    СтандартнаяОбработка=Ложь;
    Элементы.Получатели.ДобавитьСтроку();
    стрТЧ= Элементы.Получатели.ТекущиеДанные;
    стртч.единицаИзмерения = ВыбранноеЗначение;
    КонецПроцедуры
```

Всем спасибо, все работает.)
---
Очень плохой код. Очень запутанный и кривой. Модальное открытие формы на сервере? Это жесть. Бизнес-логика тоже нифига непонятная. Получается, при выборе единицы измерения в строке табличной части автоматом создается две следующие строки (Элементы.Получатели.ДобавитьСтроку в ПолучателиЕдиницаИзмеренияНачалоВыбора и в ПолучателиОбработкаВыбора)? Но какой бы кривой не была бизнес-логика, никакой необходимости в нестандартных обработчиках я не вижу.
Чтобы единица измерения выбиралась в подчинении к номенклатуре, в УФ достаточно настроить связи параметров выбора у реквизита формы. Ни строчки кода.
А для выполнения каких-то действий по факту изменения реквизита предназначен прямой как железная дорога обработчик "ПриИзменении". Ну ладно, если почему-то хочется в обработке выбора - пожалуйста. Но в стандартной.
И как не крути, остается ощущение неправильной постановки задачи. Если постановка как в (5), то не надо никаких кривых автоматизаций непонятно чего.
Простая табличная часть с ручным добавлением строк, в которых при добавлении проставляется дефолтная единица измерения и характеристика. Надо поменять - откроют и поменяют. Связанные отборы форм выбора, как я уже сказал, в УФ настраиваются параметрически.
Если первую строку надо создать автоматом при изменении номенклатуры - не вопрос. Так и делай. Просто заполняй дефолтными значениями. Не надо никаких выпрыгивающих форм. Тем более - модальных на сервере.
---
В управляемых формах использовать модальные окна - ужасных грех.

```1c
    &НаКлиенте
    Процедура КомандаОткрытияФормыВыбора(Команда)

    Параметры = Новый Структура("Отбор", ВашаСтруктураОтбора);
    ОткрытьФорму("Справочник.Валюты.ФормаВыбора",Параметры, ЭтаФорма,,,,,Новый ОписаниеОповещения("ПолучитьЧтоТоИзФормыВыбора", ЭтотОбъект));

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

    &НаКлиенте
    Процедура ПолучитьЧтоТоИзФормыВыбора(Результат, ДополнительныеПараметры) Экспорт

    //В параметре результат, выбранное значение
    Если Результат = Неопределено Тогда
    Возврат;
    КонецЕсли;

    //Что-то делает с полученным значением

    КонецПроцедуры // ПолучитьЧтоТоИзФормыВыбора()
```