Имя: Пароль:
1C
1С v8
Подбор товаров на упр формах
0 _Дайвер_
 
17.05.16
08:09
Как организовать подбор товара на упр формах? Например для документа поступление товара вызвать форму подбора справочника номенклатура?
1 Эрик_Шмид
 
17.05.16
08:11
Использовать обработкуПодбора
2 _Дайвер_
 
17.05.16
08:17
была бы она, а так нашел код:

&НаКлиенте
Процедура ПодобратьТовары(Команда)
    
    ПараметрыПодбора = Новый Структура("ЗакрыватьПриВыборе, МножественныйВыбор", Ложь, Истина);
    ОткрытьФорму("Справочник.Номенклатура.ФормаВыбора", ПараметрыПодбора, ЭтаФорма, УникальныйИдентификатор);
    
КонецПроцедуры

Но при выборе номенклатуры никакой реакции
3 lopus
 
17.05.16
08:20
Но у формы твоей же должна быть обработка выбора, или элемент, который должен принимать результат подбора.
4 _Дайвер_
 
17.05.16
08:26
(3) Ага ,вы правы, вот что вышло:
&НаКлиенте
Процедура ПодобратьТовары(Команда)
    
    ПараметрыПодбора = Новый Структура("ЗакрыватьПриВыборе, МножественныйВыбор", Ложь, Истина);
    ОткрытьФорму("Справочник.Номенклатура.ФормаВыбора", ПараметрыПодбора, ЭтаФорма, УникальныйИдентификатор);
    
КонецПроцедуры

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

&НаСервере
Процедура ТоварыОбработкаВыбораНаСервере(ВыбранноеЗначение)
    
    Для Каждого ВыбранныйЭлемент Из ВыбранноеЗначение Цикл
        нСтр = Объект.Товары.Добавить();
        нСтр.Номенклатура = ВыбранныйЭлемент;
    КонецЦикла;
    
КонецПроцедуры
5 _Дайвер_
 
18.05.16
03:51
Всем спасибо, на будущее кому надо Вот подробно рассписано что да как:
#Область ОбработчикиКомандФормы

&НаКлиенте
Процедура ПодобратьТовары(Команда)//Создаем команду, и выводим эту команду на форму
    
    ПараметрыПодбора = Новый Структура("ЗакрыватьПриВыборе, МножественныйВыбор", Ложь, Истина);//указываем параметры
    ОткрытьФорму("Справочник.Номенклатура.ФормаВыбора", ПараметрыПодбора, Элементы.Товары);//1.параметр отвечает за отрытие нужной формы
    //2. параметр определяет параметры отрытия формы 3. указываем ту форму куда будем переносить позиции.
    
КонецПроцедуры

&НаКлиенте
Процедура ТоварыОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка) //создали процедуру ОбработкаВыбора для той формы котрую мы указали в 3 параметре
    
    СтандартнаяОбработка = Ложь;
    ТоварыОбработкаВыбораНаСервере(ВыбранноеЗначение);//переносим обработку выбора на сервер для обработки
    
КонецПроцедуры

&НаСервере
Процедура ТоварыОбработкаВыбораНаСервере(ВыбранноеЗначение)
    
    Для Каждого Элемент Из ВыбранноеЗначение Цикл//здесь указываем свои условия заполнения
        НоваяСтрока = Объект.Товары.Добавить(); //создаем новую строку
        НоваяСтрока.ДатаВыдачиПодЗапись = ТекущаяДата(); //указываем значение строки из выбранного значения
        НоваяСтрока.Номенклатура = Элемент.Ссылка;
        НоваяСтрока.ЕденицаИзмерения = Элемент.Ссылка.ЕдиницаИзмерения;
    КонецЦикла;
    
КонецПроцедуры
#КонецОбласти