Имя: Пароль:
1C
1С v8
Передача текущих данных в серверную процедуру
0 rodrigez
 
13.02.12
19:15
Здравствуйте! Хочу автоматически подставить цену с регистра сведений Ценообразование, в котором измерение номенклатура а ресурс - цена в табличную часть документа.
Обращаясь в модуля формы с процедуры с директивой НаСервере, необходимо сравнить данные регистра с текущими данными в ТЧ, но НаСервере не работают ТекущиеДанные. Подскажите как выйти из ситуации? Спасибо.
1 rodrigez
 
13.02.12
19:24
НаСервере
Процедура ПолучитьЦену()
   Цены=РегистрыСведений.ЦеныНоменклатуры;
   Отбор=Новый Структура;
   Отбор.Вставить("Номенклатура",ЭтаФорма.ПодчиненныеЭлементы.СоставПродажи.ТекущиеДанные.Товар);
    ТекЦена=Цены.ПолучитьПоследнее(ТекущаяДата(),Отбор);
   
   
КонецПроцедуры
2 rodrigez
 
14.02.12
18:57
Вот так работает.

&НаКлиенте
Перем ТекущаяНоменклатура;

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

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

Спасибо :-)
3 aleks-id
 
14.02.12
20:05
рукалицо
4 Mort
 
14.02.12
20:34
&НаКлиенте
Перем ТекущаяНоменклатура;

&НаКлиенте
Функция ТекущиеДанныеФормы();
   ТекущаяНоменклатура = Элементы.СоставПродажи.ТекущиеДанные.Товар;
   Возврат ТекущаяНоменклатура;      
КонецФункции

Вот это удалить нафиг, ну и процедуру сделать без контекста, а так ничо.
5 aleks-id
 
14.02.12
21:41
(4) уверен? ты ж вроде в копрокодерстве не был замечен