Имя: Пароль:
1C
1С v8
Передать цену в переменную
0 ArturJayn
 
23.04.15
15:29
Имеется документ "Реализация товаров и услуг". Строки заполняю запросом, только еще необходимо заполнять реквизит "Цена", данные которого "сидят" в прикрепленной спецификации договора. Можно ли данные "Цена" передать в переменную, а уж дальше попробую сам?
1 asady
 
23.04.15
15:30
(0) можно
2 DrShad
 
23.04.15
15:31
(0) я не против
3 ArturJayn
 
23.04.15
15:31
)))) Как?
4 DrShad
 
23.04.15
15:32
да как угодно
5 ЧеловекДуши
 
23.04.15
15:33
(3) ПеременнаяЦены = ВыборкаЗапроса.Цена;
6 ArturJayn
 
23.04.15
15:33
Какой самый "короткий" вариант?
7 ЧеловекДуши
 
23.04.15
15:34
(6) Цена = Сумма / Количество :)
8 Кадош
 
23.04.15
15:35
&твояпеременная
Запрос.УстановитьПараметр("ТвояПеременная",Договор.Цена)
9 DrShad
 
23.04.15
15:36
(7) +1 и про НДС не забыть сверху или в том числе
10 ArturJayn
 
23.04.15
15:38
В переменную  необходимо передать "цену" находящуюся в справочнике "Договора контрагентов" как
11 DrShad
 
23.04.15
15:39
да ты уже покажи свой мега запрос - тогда и подскажем как
12 ArturJayn
 
23.04.15
15:42
Этим Процедурой Заполняю табличное поле документа    Процедура КоманднаяПанельУслугиСогласованнаяПлощадь(Кнопка)
                
    Услуги.Очистить();
    
    ПеременнаяХозяйство = ЭлементыФормы.Контрагент.Значение;
    
    

    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    |    А_СогласованнаяПлощадьПаспортПоляОбороты.ДатаПлюсМинус КАК РаботыВелись,
    |    А_СогласованнаяПлощадьПаспортПоляОбороты.ОсновнойОтряд КАК Отряд,
    |    А_СогласованнаяПлощадьПаспортПоляОбороты.Кластер КАК Кластер,
    |    А_СогласованнаяПлощадьПаспортПоляОбороты.ВидРабот КАК Содержание,
    |    А_СогласованнаяПлощадьПаспортПоляОбороты.ОтметкаСогласованного,
    |    А_СогласованнаяПлощадьПаспортПоляОбороты.СогласованнаяПлощадьОборот КАК Количество,
    |    А_СогласованнаяПлощадьПаспортПоляОбороты.НомерПоля КАК НомерПоля
    |ИЗ
    |    РегистрНакопления.А_СогласованнаяПлощадьПаспортПоля.Обороты КАК А_СогласованнаяПлощадьПаспортПоляОбороты
    |ГДЕ
    |    А_СогласованнаяПлощадьПаспортПоляОбороты.Контрагент = &НазваниеХозяйства
    |ИТОГИ
    |    СУММА(Количество)
    |ПО
    |    НомерПоля
    |АВТОУПОРЯДОЧИВАНИЕ";
    Запрос.УстановитьПараметр("НазваниеХозяйства", ПеременнаяХозяйство);
    
    Выгр = Запрос.Выполнить().Выгрузить();
    ЭлементыФормы.Выгр.СоздатьКолонки();
    РезультатЗапроса = Запрос.Выполнить();
    Обход = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "НомерПоля");
    Пока Обход.Следующий() Цикл
        НоваяСтрока = Услуги.Добавить();    
        НоваяСтрока.НомерПоля = Обход.НомерПоля;
        НоваяСтрока.Количество = Обход.Количество;
        НоваяСтрока.Номенклатура = Справочники.Номенклатура.НайтиПоНаименованию("Внесення аміаку");
        НоваяСтрока.Содержание = Справочники.Номенклатура.НайтиПоНаименованию("Внесення аміаку");
        
    КонецЦикла;

КонецПроцедуры
13 DrShad
 
23.04.15
15:45
НоваяСтрока.Цена = ДоговорКонтрагента.ОсновнаяСпецификация.Цена

но в твоем случае может быть по-другому
14 ArturJayn
 
23.04.15
15:45
И еще нужно дозаполнить колонку с ценой, взятой из Спецификации , Спецификация выбирается как реквизит документа
15 DrShad
 
23.04.15
15:46
тогда еще проще
НоваяСтрока.Цена = ОсновнаяСпецификация.Цена
16 DrShad
 
23.04.15
15:46
или как там у тебя называется реквизит со спецификацией
17 ArturJayn
 
23.04.15
15:47
НоваяСтрока.Цена = ПЕРЕМЕННАЯ  ????
18 DrShad
 
23.04.15
15:48
какая еще нафиг переменная?
19 Ymryn
 
23.04.15
15:51
(18) Переменная = Объект.ОсновнаяСпецификация.Цена. - вот эта :)
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.