Имя: Пароль:
1C
 
Помогите понять простую ошибку запроса
0 Novichok VX
 
16.07.21
15:52
ШаблонТекстаЗапроса = ШаблонТекстаЗапроса  + "
        
        |    ВЫРАЗИТЬ({СвободныеОстаткиВНаличии} КАК ЧИСЛО(15, 3)) КАК ВНаличииОстаток,
        |    {СвободныеОстаткиВНаличии} КАК ВНаличииВБазовыхЕдиницах,
        |    ВЫРАЗИТЬ({ВсеОстаткиДоступно} КАК ЧИСЛО(15, 3)) КАК Доступно



Ошибка при выполнении запроса.
по причине:
{(33, 39)}: Синтаксическая ошибка "КАК"
ВЫРАЗИТЬ({СвободныеОстаткиВНаличии} К<<?>>АК ЧИСЛО(15, 3)) КАК ВНаличииОстаток,
1 arsik
 
гуру
16.07.21
15:53
А нахера фигурные скобки нужны?
2 piter3
 
16.07.21
15:54
A не равно А.do you speak english.Скобки фигурные для чего
3 Бишбармак
 
16.07.21
15:58
(0) не правильно ты Дядя Федер круглые скобки ставишь
4 Бишбармак
 
16.07.21
16:08
А если так?
ШаблонТекстаЗапроса = ШаблонТекстаЗапроса  + "
        |{ВЫБРАТЬ        
        |    ВЫРАЗИТЬ(СвободныеОстаткиВНаличии КАК ЧИСЛО(15, 3)) КАК ВНаличииОстаток,
        |    СвободныеОстаткиВНаличии КАК ВНаличииВБазовыхЕдиницах,
        |    ВЫРАЗИТЬ(ВсеОстаткиДоступно КАК ЧИСЛО(15, 3)) КАК Доступно}
5 Novichok VX
 
16.07.21
16:43
(4)
Сейчас дальше ошибка вышла, я кусочек только выкладывал
        |{ВЫБРАТЬ        
        |    ВЫРАЗИТЬ(СвободныеОстаткиВНаличии КАК ЧИСЛО(15, 3)) КАК ВНаличииОстаток,
        |    СвободныеОстаткиВНаличии КАК ВНаличииВБазовыхЕдиницах,
        |    ВЫРАЗИТЬ(ВсеОстаткиДоступно КАК ЧИСЛО(15, 3)) КАК Доступно}
        
        |ИЗ         
        |    {СправочникХарактеристики}         
        |    {ЦеныНоменклатуры}
        |    И (ЦеныНоменклатуры.ВидЦены = &ВидыЦен)

Ошибка при выполнении запроса.
по причине:
{(37, 1)}: Синтаксическая ошибка "ИЗ"
<<?>>ИЗ
6 youalex
 
16.07.21
16:45
(5) ответь на вопрос - из (1) - зачем тебе фигурные скобки? У тебя текст запроса динамически формируется, или это текст для СКД/Построителя?
7 Novichok VX
 
16.07.21
16:54
динамический список на форме
8 Ненавижу 1С
 
гуру
16.07.21
17:01
(7) можно я тоже спрошу - зачем фигурные скобки?
9 Novichok VX
 
16.07.21
17:04
не знаю зачем скобки, в базе до обновления это работает, надо переделать в базе после обновления
10 Kassern
 
16.07.21
17:08
(0) может там А английская в слове "КАК" или К)
11 Kassern
 
16.07.21
17:09
(10) больше склоняюсь к А английской судя по ошибке:
(33, 39)}: Синтаксическая ошибка "КАК"
ВЫРАЗИТЬ({СвободныеОстаткиВНаличии} К<<?>>АК
12 Novichok VX
 
16.07.21
17:09
(10)
Нет, все перекопировано из другого места, где это точно работает
13 1Сергей
 
16.07.21
17:11
не парься, убирай фигурные скобки. работать буит
14 youalex
 
16.07.21
17:11
(9) В отладке посмотри какой у тебя текст запроса получается в итоге, и что происходит с переменной ШаблонТекстаЗапроса
15 Novichok VX
 
16.07.21
17:12
Вот весь прибавочный текст, который точно работает в другой базе до обновления и не работает в базе после обновления

        ШаблонТекстаЗапроса = ШаблонТекстаЗапроса  + "
        
        |    ВЫРАЗИТЬ({СвободныеОстаткиВНаличии} / ЕСТЬNULL(&ТекстЗапросаКоэффициентУпаковки1, 1) КАК ЧИСЛО(15, 3)) КАК ВНаличииОстаток,
        |    {СвободныеОстаткиВНаличии} КАК ВНаличииВБазовыхЕдиницах,
        |    ВЫРАЗИТЬ({ВсеОстаткиДоступно} / ЕСТЬNULL(&ТекстЗапросаКоэффициентУпаковки1, 1) КАК ЧИСЛО(15, 3)) КАК Доступно
        
        |ИЗ
        
        |    {СправочникХарактеристики}
        
        |    {ЦеныНоменклатуры}
        |    И (ЦеныНоменклатуры.ВидЦены = &ВидыЦен)
        
        |    {КурсВалютыЦены}
        |    {КурсВалютыДокумента}
        |    {ВсеОстатки}
        
        
        |    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФАРМ_ДополнительныеРеквизитыХарактеристик КАК ФАРМ_ДополнительныеРеквизитыХарактеристик
        |        ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
        |                            МАКСИМУМ(ТоварыНаСкладахОстаткиВТ.Серия) КАК Серия,
        |                            ТоварыНаСкладахОстаткиВТ.Характеристика КАК Характеристика
        |                        ИЗ
        |                            РегистрНакопления.ТоварыНаСкладах.Остатки КАК ТоварыНаСкладахОстаткиВТ
        |    
        |                        СГРУППИРОВАТЬ ПО
        |                            ТоварыНаСкладахОстаткиВТ.Характеристика) КАК ТоварыНаСкладахОстатки
        |        ПО ФАРМ_ДополнительныеРеквизитыХарактеристик.Характеристика = ТоварыНаСкладахОстатки.Характеристика
        |    ПО ХарактеристикиНоменклатуры.Ссылка = ФАРМ_ДополнительныеРеквизитыХарактеристик.Характеристика
        |    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦены = &ВидЦеныЖНВЛП) КАК ЦеныНоменклатурыЖНВЛП
        |    ПО ХарактеристикиНоменклатуры.Ссылка = ЦеныНоменклатурыЖНВЛП.Характеристика
        |    И ХарактеристикиНоменклатуры.Владелец = ЦеныНоменклатурыЖНВЛП.Номенклатура
        |    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦены = &ВидЦеныУчетная) КАК ЦеныНоменклатурыУчетная
        |    ПО ХарактеристикиНоменклатуры.Ссылка = ЦеныНоменклатурыУчетная.Характеристика
        |    И ХарактеристикиНоменклатуры.Владелец = ЦеныНоменклатурыУчетная.Номенклатура
        |    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦены = &ВидЦеныОптМакс) КАК ЦеныНоменклатурыОптМакс
        |    ПО ХарактеристикиНоменклатуры.Ссылка = ЦеныНоменклатурыОптМакс.Характеристика
        |    И ХарактеристикиНоменклатуры.Владелец = ЦеныНоменклатурыОптМакс.Номенклатура
        |    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ВидЦены = &ВидЦеныРознМакс) КАК ЦеныНоменклатурыРознМакс
        |    ПО ХарактеристикиНоменклатуры.Ссылка = ЦеныНоменклатурыРознМакс.Характеристика
        |    И ХарактеристикиНоменклатуры.Владелец = ЦеныНоменклатурыРознМакс.Номенклатура
        |    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФАРМ_СертификацияПартий.СрезПоследних(, ) КАК ФАРМ_СертификацияПартий
        |    ПО ХарактеристикиНоменклатуры.Ссылка = ФАРМ_СертификацияПартий.Характеристика    
        
        
        |ГДЕ
        
        |    {ОтборХарактеристикПоВладельцу}
        |    {ОтборХарактеристикПоСегменту}
        
        |";
16 youalex
 
16.07.21
17:15
(15) У тебя потом вот эти параметры чем то заменяются {СвободныеОстаткиВНаличии} , и др?
Посмотри какой в итоге текст запроса получается у ДС (ТвойДинСписок.ТекстЗапроса)

Может у тебя каких-то настроек не хватает, по которым из шаблона формируется конечный текст запроса ДС
17 Kassern
 
16.07.21
17:44
(15) а можно текст запроса из отладки, после того как все динамические замены кода сделаны?
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.