![]() |
![]() |
![]() |
|
Выборка значения из таблицы значений | ☑ | ||
---|---|---|---|---|
0
Medved312
06.06.20
✎
17:24
|
Добрый день, никак не могу понять как производить выборку, мне нужно получить только одно значение в результате запроса, в консоле всё выходит но как именно вынуть это значение из таблиц и записать в переменную не пойму. получается что запрос выдаёт таблицу в которой еще одна таблица в которой уже нужное значение.
ВЫБРАТЬ ВложенныйЗапрос.УчебныйПлан.Дисциплины.( КоличествоЧасов КАК УчебныйПланКоличествоЧасов ) КАК УчебныйПлан ИЗ (ВЫБРАТЬ ПриказЗачисление.УчебныйПлан КАК УчебныйПлан ИЗ Документ.ПриказЗачисление КАК ПриказЗачисление ГДЕ ПриказЗачисление.Группа = &Группа) КАК ВложенныйЗапрос ГДЕ ВложенныйЗапрос.УчебныйПлан.УчебныйГод = &УчебныйГод И ВложенныйЗапрос.УчебныйПлан.Специальность = &Специальность И ВложенныйЗапрос.УчебныйПлан.Дисциплины.Дисциплина = &Дисциплина И ВложенныйЗапрос.УчебныйПлан.Дисциплины.ПериодКонтроля = &ПериодКонтроля |
|||
1
ДенисЧ
06.06.20
✎
18:18
|
ВЫБРАТЬ
ВложенныйЗапрос.УчебныйПлан.Дисциплины.( КоличествоЧасов КАК УчебныйПланКоличествоЧасов ) КАК УчебныйПлан За такое в последнее время дают 10 лет строгого расстрела. Без права переписки. |
|||
2
Ненавижу 1С
гуру
06.06.20
✎
18:58
|
Зря 1с придумала табличные части как поля запросов делать
|
|||
3
lodger
06.06.20
✎
19:33
|
(1) юзать тч как вложенные таблицы это не преступление. был бы смысл, тут такового нет.
|
|||
4
Medved312
06.06.20
✎
20:15
|
то что можно без вложений сделать это нашел, но проблема та же это несколько табличных частей, это решил более "извращенным" запросом с еще большим вложением, к конце получаю одну таблицу значений откуда и вытаскиваю число.
Запрос.Текст = "ВЫБРАТЬ | УчебныйПланДисциплины.КоличествоЧасов КАК КоличествоЧасов |ИЗ | Документ.УчебныйПлан.Дисциплины КАК УчебныйПланДисциплины, | (ВЫБРАТЬ | УчебныйПлан.Дисциплины.( | Ссылка КАК Ссылка, | НомерСтроки КАК НомерСтроки, | Дисциплина КАК Дисциплина, | ПериодКонтроля КАК ПериодКонтроля, | КоличествоЧасов КАК КоличествоЧасов | ) КАК Дисциплины | ИЗ | Документ.УчебныйПлан КАК УчебныйПлан, | (ВЫБРАТЬ | ПриказЗачисление.УчебныйПлан КАК УчебныйПлан | ИЗ | Документ.ПриказЗачисление КАК ПриказЗачисление | ГДЕ | ПриказЗачисление.Группа = &Группа | И ПриказЗачисление.УчебныйПлан.Специальность = &Специальность | И ПриказЗачисление.УчебныйПлан.УчебныйГод = &УчебныйГод) КАК ВложенныйЗапрос) КАК ВложенныйЗапрос |ГДЕ | УчебныйПланДисциплины.Дисциплина = &Дисциплина | И УчебныйПланДисциплины.ПериодКонтроля = &ПериодКонтроля"; РезультатЗапроса = Запрос.Выполнить(); Выборка = РезультатЗапроса.Выбрать(); Пока Выборка.Следующий() цикл КолЧас = Выборка.КоличествоЧасов; КонецЦикла; Возврат КолЧас; P.S. скорее всего цикл не нужен но не пробовал. Извините если посягнул на святое вложенными запросами (всего пару дней программирую) но зачем-то они же есть) да в SQL используются не редко. |
|||
5
Ёпрст
гуру
06.06.20
✎
20:18
|
(4) Всё в топку
|
|||
6
Ёпрст
гуру
06.06.20
✎
20:25
|
Так хотя бы
|
|||
7
Medved312
06.06.20
✎
21:31
|
Спасибо больше) интересный способ
|
|||
8
Chameleon1980
07.06.20
✎
07:17
|
(7) не интересный, а правильный. так говоришь, как будто у тебя несколько решений и все они работают.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |