Как получить результат запроса, если он единственный? #132011


#0 by Elflight
1С 8.0. Есть запрос:Как теперь мне изъять этот Процент из запроса и присвоить его переменной? Каким методом? Выполнить.Выбрать не даёт результата.
#1 by КонецЦикла
Выгрузить?
#2 by Elflight
Пишу:СтрокаТЧ.Скидка = ИтоговаяСкидка;Отвечает:Значение не является значением объектного типа (Скидка)Реквизит "Скидка" у меня численного типа. Кстати, какого типа значение возвращает запрос? Тоже ведь число?
#3 by КонецЦикла
Ну оно же не выгружает в переменнуюВозвращаемое значение:Тип: ТаблицаЗначений, ДеревоЗначений. Если тип обхода задан Прямой, результат выгружается в таблицу значений, в противном случае в дерево значений
#4 by Apollo
а де групировка?
#5 by Elflight
Я понял, что выгрузка происходит в таблицу значений. Даже пробовал получить нулевой элемент из этой таблицы - не катит :(. Запрос-то выдаёт всего одну цифирку! Мне таблицы значений не нужны, и группировать, ИМХО, нечего. Нужно просто получить эту цифирку :)
#6 by Apollo
ще раз намекаю!Де у запросі команда "Групировка"?
#7 by homutke
to
#8 by Elflight
Спасибо! Работает. А более красивого способа нету?
#9 by Filin
вообще-то странно, что работает: выгружаем в ТЗ "Таблица", а сообщаем значение первой строки ТЗ "Результат". Но это и не важно - дает пример как обратиться к результату запроса, а как мне показалось программа ругалась на объект Скидка (не обнаруживая такового). Так что может следует посмотреть и в сторону того, куда собираетесь писать результат запроса?
#10 by Дяпти
На фига все это: по моему без затей проще
#11 by Elflight
Опечатка про "Результат" была сразу исправлена, потому и работает :). А насчёт объекта "Скидка" - вы правы. Но в документе существует реквизит табличной части "Скидка" с типом "Число" и длиной 3 знака. На основе этого реквизита в табличной части документа (ТЧ) существует одноимённая колонка.Только всё-равно ругается :( Что не так? Я с восьмёркой недавно, так что иногда просто туплю.
#12 by Filin
Ну судя по коду в Вы просто не спозиционировались на нужной строке (что из себя представляет "СтрокаТЧ" пока абсолютно непонятно, т.е. ясно, что Вы подразумеваете под ней строку табличной части, но для системы это не так очевидно). Лучший вариант (неоднократно озвученный) - поставьте точку останова и в Отладчике посмотрите какие объекты Вам доступны, чем располагаете и т.д.
#13 by Elflight
Для системы это тоже понятно, потому как строка"СтрокаТЧ.Цена = ЦенаПродажи;"выполняется прерасно.Штука в том, что в свойствах поля "Скидка" отсутствует строка "Элемент управления", которая есть у свойств остальных колонок, и которая равна "поле ввода". А само поле ввода визуально присутствует. Колонку вставлял с помощью "Размещения данных", и думал, что всё должно быть в порядке. Как исправить?
#14 by Elflight
Странно, вставил колонку "скидка" заново, свойство "элемент управления" появилось, а ошибка не уходит... :(
#15 by Elflight
Всё, понял свою глупость, спасибо!
#16 by Filin
Поле Цена является реквизитом табличной части документа, а Скидка - вычисляемым полем. Мне в подобной ситуации помогает в процедуре при выводе строки указать(можно использовать метод "УстановитьТекст")
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С