Имя: Пароль:
1C
 
Помогите сделать подбор в нетленке на упр форм
0 picom
 
11.11.16
13:19
Полно статей как передать параметры на форму, а как их обратно получить при закрытии, кроме открывания модально не знаю.
Посвятите пожалуйста.
...
Форма документа
На ней кнопка с открытием подбора
&НаКлиенте
Процедура Подбор(Команда)
    ОткрытьФормуМодально("Обработка.ПодборТоваров.Форма.ПодборТоваров",,ЭтаФорма);
    ОкончаниеПодбора ();    
КонецПроцедуры
...
В окне подбора перед закрытием это
&НаКлиенте
Процедура ПередЗакрытием(Отказ, ЗавершениеРаботы, ТекстПредупреждения, СтандартнаяОбработка)
    Закрыть(ПередЗакрытиемС());
КонецПроцедуры
&НаСервере
Функция ПередЗакрытиемС()
    НовТЗ = Новый ТаблицаЗначений ;
    НовТЗ.Колонки.Добавить("Номенклатура") ;
    НовТЗ.Колонки.Добавить("Количество") ;
    
    Для каждого стр из Объект.Товары Цикл
        Если стр.Количество > 0 Тогда
            НовСтр = НовТЗ.Добавить();
            НовСтр.Номенклатура = стр.Номенклатура ;
            НовСтр.Количество  = стр.Количество
        КонецЕсли;
    КонецЦикла;
    
    Возврат(НовТЗ);
КонецФункции
...
НО КАК ПЕРЕДАТЬ ПОЛУЧЕННУЮ ТАБЛИЦУЗНАЧЕНИЙ НА ФОРМУ ДОКУМЕНТА МНЕ ОБРАТНО ТО?
1 Cyberhawk
 
11.11.16
13:22
Оповестить
2 Cyberhawk
 
11.11.16
13:22
Также во владельце подчиненной формы сидит главная
3 picom
 
11.11.16
13:23
(1) Если выдавите из себя чуть больше информации буду безмерно благодарен
4 Cyberhawk
 
11.11.16
13:23
ТЗ "сериализуй" в виде массива структур, ну или передавай адрес ВХ со структурой
5 Cyberhawk
 
11.11.16
13:23
(3) СП в помощь
6 Garykom
 
гуру
11.11.16
13:24
(3) Поймите это блин самые основы УФ, без знания их лучше не подступать к современным конфам
7 picom
 
11.11.16
13:25
(4) т.е. открывать все же модально?
8 vyaz
 
11.11.16
13:25
В форме подбора:    АдресВХранилище = ПоместитьДанныеВоВременноеХранилище();
    
    СтруктураОповещения = Новый Структура;
    СтруктураОповещения.Вставить("АдресПодобранныхДанных", АдресВХранилище);
    
    ОповеститьОВыборе(СтруктураОповещения);
9 Garykom
 
гуру
11.11.16
13:25
10 Garykom
 
гуру
11.11.16
13:26
(7) не нужна никакая модальность совершенно
11 Cyberhawk
 
11.11.16
13:26
(7) Нет, разве при немодальном открытии во владельце не будет сидеть форма-источник?
12 vyaz
 
11.11.16
13:26
в документе:
&НаКлиенте
Процедура ОбработкаВыбора(ВыбранноеЗначение, ИсточникВыбора)
    
    Если ТипЗнч(ВыбранноеЗначение) = Тип("Структура") И
        ВыбранноеЗначение.Свойство("АдресПодобранныхДанных") Тогда
        
        ОбработатьПодборНоменклатуры(ВыбранноеЗначение.АдресПодобранныхДанных);
        
    КонецЕсли;

КонецПроцедуры
13 vyaz
 
11.11.16
13:27
&НаСервере
Функция ПоместитьДанныеВоВременноеХранилище()

    Возврат ПоместитьВоВременноеХранилище(Объект.ПодобраннаяНоменклатура.Выгрузить(), УникальныйИдентификатор);

КонецФункции // ПоместитьДанныеВоВременноеХранилище()
14 vyaz
 
11.11.16
13:28
&НаСервере
Процедура ОбработатьПодборНоменклатуры(АдресПодобранныхДанных)

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

дальше сам давай :)
15 picom
 
11.11.16
13:36
(8) через хранилище я сделал, но мне так не нравится почему-то
16 picom
 
11.11.16
13:56
Спасибо, все получилось
(1) + СП и все вышло