Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Ожидается выражение ")" при открытии запроса

Ожидается выражение ")"    при открытии запроса
Я
   dimidoff
 
21.10.16 - 07:05
вот сам запрос. не могу разобраться где не хвататет ")"
///

Запрос = Новый Запрос;
    //

    //Запрос.УстановитьПараметр("группа", СсылкаНаГруппу);

    //

    Запрос.УстановитьПараметр("Склад",                 СписокСкладов);
    Запрос.УстановитьПараметр("МОЛ",                  ДокИнвентаризация.ОтветственноеЛицо);
    Запрос.УстановитьПараметр("КонецПериода",          ДокИнвентаризация.Дата);
    Запрос.УстановитьПараметр("Организация",         ДокИнвентаризация.Организация);
    Запрос.УстановитьПараметр("ВидСубконто",         ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Склады);
    Запрос.УстановитьПараметр("ПорядокСубконтоК",     ПорядокСубконтоК);
    Запрос.УстановитьПараметр("ПорядокСубконтоС",     ПорядокСубконтоС);
    Запрос.УстановитьПараметр("ПорядокСубконтоМОЛ",     ПорядокСубконтоМОЛ);
    Запрос.УстановитьПараметр("ИсклСчета",              МассивИсклСчетов);
    ТекстЗапросаИнвентаризация = "
    |ВЫБРАТЬ
    |    ХозрасчетныйОстатки.Счет              КАК Счет,
    |    ХозрасчетныйОстатки.Счет.Порядок      КАК Порядок,
    |    ХозрасчетныйОстатки.Субконто1         КАК Номенклатура,
    |    ХозрасчетныйОстатки.Субконто1.БазоваяЕдиницаИзмерения КАК БазоваяЕдиницаИзмерения,
    |    ХозрасчетныйОстаткиС.СуммаОстаток              КАК СуммаВсего,
    |    ХозрасчетныйОстаткиС.КоличествоОстаток         КАК КоличествоВсего,
    |    ХозрасчетныйОстатки.КоличествоОстаток КАК Количество
    |ИЗ
    |    РегистрБухгалтерии.Хозрасчетный.Остатки(&КонецПериода, , &ПорядокСубконтоК, Организация В (&Организация) " + ТекстУсловияК + ") КАК ХозрасчетныйОстатки
    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.Остатки(&КонецПериода, , &ПорядокСубконтоС, Организация В (&Организация) " + ТекстУсловияС + ") КАК ХозрасчетныйОстаткиС
    |        ПО ХозрасчетныйОстатки.Счет = ХозрасчетныйОстаткиС.Счет    И ХозрасчетныйОстатки.Субконто1 = ХозрасчетныйОстаткиС.Субконто1  
    |";
    
    Если (НЕ ЗначениеЗаполнено(ДокИнвентаризация.Склад)) И (ЗначениеЗаполнено(ДокИнвентаризация.ОтветственноеЛицо)) Тогда
        ТекстЗапросаИнвентаризация = ТекстЗапросаИнвентаризация + "
        |ОБЪЕДИНИТЬ ВСЕ
        |
        |ВЫБРАТЬ
        |    ХозрасчетныйОстатки.Счет,
        |    ХозрасчетныйОстатки.Счет.Порядок,
        |    ХозрасчетныйОстатки.Субконто1,
        |    ХозрасчетныйОстатки.Субконто1.БазоваяЕдиницаИзмерения,
        |    ХозрасчетныйОстатки.СуммаОстаток,
        |    ХозрасчетныйОстатки.КоличествоОстаток,
        |    ХозрасчетныйОстатки.КоличествоОстаток
        |ИЗ
        |    РегистрБухгалтерии.Хозрасчетный.Остатки(&КонецПериода, , &ПорядокСубконтоМОЛ, Организация В (&Организация) И Субконто2 В (&МОЛ)) КАК ХозрасчетныйОстатки
        |
        |ГДЕ
        |  НЕ (ХозрасчетныйОстатки.Счет В ИЕРАРХИИ (&ИсклСчета))
        |";
    КонецЕсли;
    ТекстЗапросаИнвентаризация = ТекстЗапросаИнвентаризация + "
    |
    |УПОРЯДОЧИТЬ ПО
    |    Порядок";
    
    Запрос.Текст =ТекстЗапросаИнвентаризация;
 
 
   BuHu
 
1 - 21.10.16 - 07:38
(0) что в "ТекстУсловияК" ? конструктор запроса как может прочитать что ты там в эту переменную передаешь?
   BuHu
 
2 - 21.10.16 - 07:39
(0) попробуй убери " + ТекстУсловияК + " и "+ТекстУсловияС + "
   dmpl
 
3 - 21.10.16 - 07:44
(0) Отладчиком смотри реальный текст запроса, который пытаешься выполнить.
   FIXXXL
 
4 - 21.10.16 - 09:26
(0) такое конструктором не открывается
   dimidoff
 
5 - 24.10.16 - 15:26
(2) да, убрал и все открылось. спс!
   МихаилМ
 
6 - 24.10.16 - 17:13
(0)
с таким запросом на мс скл можно получить
ошибку Intra-query parallelism  deadlock
   LeReve
 
7 - 24.10.16 - 17:41
Давно волнует вопрос: почему нельзя сразу написать "Запрос.Текст =" ? Нет надо сначала загнать в переменную, потом уже присвоить эту переменную.. Смысл?
   Torquader
 
8 - 24.10.16 - 22:23
(7) Сначала "навалил кучу" из кусков запроса в переменную, а потом засовываешь её в объект, так как Запрос.Текст=Запрос.Текст+лстрХвостЗапроса работает медленнее, если лстрТекст=лстрТекст+лстрХвостЗапроса, хотя, есть и ещё более быстрые варианты через ТекстовыйДокумент.
   LeReve
 
9 - 25.10.16 - 09:34
(8) Вот именно что в итоге получается куча. Вообще по рукам надо давать за: Запрос.Текст=Запрос.Текст+лстрХвостЗапроса

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует