Имя: Пароль:
1C
 
Переменная в запросе
0 antotti
 
27.08.15
18:54
Подскажите, можно ли в запросе сделать переменную, хранящую промежуточный результат вычисления ??
1 jsmith82
 
27.08.15
18:55
нет. только поле в вт
2 Sammo
 
27.08.15
18:58
Для чего?
По идее - временная таблица
3 User_Agronom
 
27.08.15
18:59
(0) вычисляемое поле. И не обязательно в ВТ.
4 antotti
 
27.08.15
19:00
например у меня в отчете сложные формулы расчета, и я замахался писать длинные фразы типа "ОстаткиТоваровНаСкладах.Количество * Цена + ....."
Думал  может можно запихнуть в переменную, а потом с ней уже производить дальнейшие манипуляции...
5 User_Agronom
 
27.08.15
19:00
(4) Запрос составной? Временные таблицы используешь?
6 antotti
 
27.08.15
19:01
(3)У меня добавленные поля свои, и в них несколько формул
(5) Нет ВТ не использую
7 jsmith82
 
27.08.15
19:06
онли вт
8 antotti
 
27.08.15
19:06
ясно, спасибо
9 User_Agronom
 
27.08.15
19:14
(6) Вложенные запросы?

Можно изменить название таблиц. Например, вместо "ОстаткиТоваровНаСкладах" писать "ОТнаС" Или пользоваться конструктором запросов.

Ну и во вложенных запросах тоже можно делать вычисляемые поля.
10 Остап Сулейманович
 
27.08.15
19:30
(9) Видимо ТС имел ввиду что то типа такого:

Выбрать
ЕСТЬNULL(текКоличество,0) из Источник Данных Как Количество,
ЕСТЬNULL(текЦена,0) из Источник Данных Как Цена,
Количество * Цена КАК Сумма

В смысле не вложенный запрос, а не дублировать выражения для всех вычисляемых полей, а обзывать их каким нибудь алиасом.

ЗЫ. Когда в выборку входит ВЫБОР...КОГДА тогда вид запроса в части расчета вычисляемых полей выглядит еще "веселее".
11 User_Agronom
 
27.08.15
19:42
(10) Можно разбить:

Выбрать
  ВложенныйЗапрос.Количество * ВложенныйЗапрос.Цена КАК Сумма
из
  (Выбрать
     ЕСТЬNULL(текКоличество,0) из Источник Данных Как Количество,
     ЕСТЬNULL(текЦена,0) из Источник Данных Как Цена

    Из ОткудаТо) КАК ВложенныйЗапрос

Анализировать (4) действительно сложновато. Лучше укоротить псевдонимы таблиц, полей, разбить запрос на пакет запросов.

Хотя ХЗ как там на самом деле. Инфы мало, телепаты в отпуску.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший