Работа с Конструктором запросов в 8.0
21.01.2008
20:22
#1
"Создал запрос с помощью конструтора (конфа самописная). После создания вручную ничего не правил. Запустил отладку.
При формировании отчета выдает вот такое сообщение:
"{Отчет.РеестрДокументовОказаниеУслуги.Форма.РеестрДокументовОказаниеУслуги(41)}: Ошибка при вызове метода контекста (Вывести): {(1, 1)}: Ожидается выражение "ВЫБРАТЬ"
ПостроительОтчетаРеестрДокументовОказаниеУслуги.Вывести(ЭлементыФормы.ПолеТабличногоДокумента);"
Место, где возникает проблема, выглядит так
"ПостроительОтчетаРеестрДокументовОказаниеУслуги.РазмещениеРеквизитовИзмеренийВКолонках =
ТипРазмещенияРеквизитовИзмерений.Отдельно;
ПостроительОтчетаРеестрДокументовОказаниеУслуги.МакетОформления = ПолучитьМакетОформления(СтандартноеОформление.Классика);
ПостроительОтчетаРеестрДокументовОказаниеУслуги.Вывести(ЭлементыФормы.ПолеТабличногоДокумента);"
Почему программа ожидает выражение "ВЫБРАТЬ"?
"
При формировании отчета выдает вот такое сообщение:
"{Отчет.РеестрДокументовОказаниеУслуги.Форма.РеестрДокументовОказаниеУслуги(41)}: Ошибка при вызове метода контекста (Вывести): {(1, 1)}: Ожидается выражение "ВЫБРАТЬ"
ПостроительОтчетаРеестрДокументовОказаниеУслуги.Вывести(ЭлементыФормы.ПолеТабличногоДокумента);"
Место, где возникает проблема, выглядит так
"ПостроительОтчетаРеестрДокументовОказаниеУслуги.РазмещениеРеквизитовИзмеренийВКолонках =
ТипРазмещенияРеквизитовИзмерений.Отдельно;
ПостроительОтчетаРеестрДокументовОказаниеУслуги.МакетОформления = ПолучитьМакетОформления(СтандартноеОформление.Классика);
ПостроительОтчетаРеестрДокументовОказаниеУслуги.Вывести(ЭлементыФормы.ПолеТабличногоДокумента);"
Почему программа ожидает выражение "ВЫБРАТЬ"?
"
26.01.2008
12:16
#2
"Потому что с выражения "ВЫБРАТЬ" начинается текст любого запроса
ПостроительОтчетаРеестрДокументовОказаниеУслуги.Текст = "ВЫБРАТЬ ..";"
ПостроительОтчетаРеестрДокументовОказаниеУслуги.Текст = "ВЫБРАТЬ ..";"
27.01.2008
13:17
#3
Спасибо, конечно, за ответ, хотя и запоздалый. Только текст запроса, сотавленный по всем канонам, разумеется, у меня был. Меня и озадачило то, что запрос есть, а толку нет. Оказалось, что конструктор не создал процедуру инициализации запроса (обычно создает). Я с конструктором работаю редко, поэтому не сразу это заметил.
28.01.2008
09:21
#4
"Столкнулся с похожей проблемой. У меня иногда возникает после ручного исправления кода, генеренного конструктором отчетов, а особенно текста запроса. Причем исправления синтаксически правильные - я это очень аккуратно проверял. А текст запроса правил конструктором запросов. Не знаю в чем корень проблемы, но я придумал как ее обойти. На Вашем коде это будет выглядеть примерно так: перед строкой
"ПостроительОтчетаРеестрДокументовОказаниеУсл уги.Вывести(ЭлементыФормы.ПолеТабличногоДокумента);"
Нужно вставить такую строку:
"ПостроительОтчетаРеестрДокументовОказаниеУслуги.Текст = ПостроительОтчетаРеестрДокументовОказаниеУслуги.Текст;"
Смысла тут немного, но сообщение об ошибке пропадает ;)
Кстати процедура инициализации у меня создается и даже нормально отрабатывает. Я это проверял, сообщая текст запроса в окно отладки непосредственно перед командой "Вывести", при этом с текстом запроса все было впорядке. Наверно баг моей версии платформы, который может уже и починили ;)"
"ПостроительОтчетаРеестрДокументовОказаниеУсл
Нужно вставить такую строку:
"ПостроительОтчетаРеестрДокументовОказаниеУслуги.Текст = ПостроительОтчетаРеестрДокументовОказаниеУслуги.Текст;"
Смысла тут немного, но сообщение об ошибке пропадает ;)
Кстати процедура инициализации у меня создается и даже нормально отрабатывает. Я это проверял, сообщая текст запроса в окно отладки непосредственно перед командой "Вывести", при этом с текстом запроса все было впорядке. Наверно баг моей версии платформы, который может уже и починили ;)"
Читают тему
(гостей: 1)