Имя: Пароль:
1C
1С v8
Подбор товаров в документ продажи прикрутить к еще одному документу
0 Double_Medved
 
14.05.13
09:51
Подскажите пожалуйста - УТ11, есть дописанный и переписанный документ "УстановкаЦенНоменклатуры" - в нем хотят упростить поиск, нужно прикрутить к нему обработку - подбор товаров в документ продажи. Дело в том, что мне удалось ее вызвать, но я не понял как она переносит данные в мой документ. То есть пока не переносит. В самой обработке мы набиваем список нужной номенклатуры, и потом при закрытии она делает следующее:
&НаКлиенте
Процедура ПриЗакрытии()
   
   СохранитьНастройкиФормыНаСервере();
   АдресТоваровВХранилище = АдресТоваровВХранилище();
   
   Если ПеренестиВДокумент И АдресТоваровВХранилище <> Неопределено Тогда
       Структура = Новый Структура("АдресТоваровВХранилище", АдресТоваровВХранилище);
       ОповеститьОВыборе(Структура);
   КонецЕсли;
   
КонецПроцедуры

Это она типа положила в хранилище, и теперь надо в документе оттуда забрать? Кто-то может подсказать как примерно работает эта обработка?
1 Double_Medved
 
14.05.13
09:52
&НаСервере
Функция АдресТоваровВХранилище()
   
   АдресВХранилище = Неопределено;
   
   Если ПеренестиВДокумент Тогда
       АдресВХранилище = ПоместитьТоварыВХранилище();
   КонецЕсли;
   
   Возврат АдресВХранилище;
   
КонецФункции
2 Double_Medved
 
14.05.13
09:52
&НаСервере
Функция ПоместитьТоварыВХранилище()
   
   Товары = Объект.Корзина.Выгрузить();
   АдресТоваровВХранилище = ПоместитьВоВременноеХранилище(Товары, УникальныйИдентификатор);
   
   Возврат АдресТоваровВХранилище;
   
КонецФункции
3 Double_Medved
 
14.05.13
10:27
Разобрался, данные получает  процедура в самом документе
&НаКлиенте
Процедура ОбработкаВыбора(ВыбранноеЗначение, ИсточникВыбора)
   
   Если ИсточникВыбора.ИмяФормы = "Обработка.ПодборТоваровВДокументПродажи.Форма.Форма" Тогда
       
       ДанныеДляРасчетаВычисляемыхЦенНаКлиенте = ОбработкаВыбораПодборНаСервере(ВыбранноеЗначение);
       Если ДанныеДляРасчетаВычисляемыхЦенНаКлиенте <> Неопределено Тогда
           РассчитатьВычисляемыеЦеныНаКлиенте(ДанныеДляРасчетаВычисляемыхЦенНаКлиенте);
       КонецЕсли;
       
   КонецЕсли;
   
КонецПроцедуры