Передача текущих данных в серверную процедуру
☑
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) уверен? ты ж вроде в копрокодерстве не был замечен
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс