Имя: Пароль:
1C
 
Построитель отчета: замена текста в запросе
0 Блондинка_
 
19.02.15
09:45
Доброе утро! Такая проблема - в построителе отчетов в процедуре ЗаполнитьНачальныеНастройки, где формируется текст запроса, в тексте добавляю строку с условием, которую затем заменяю на нужное условие в процедуре СформироватьОтчет. Так вот если условие не нужно применять и текст запроса не менять, все выполняется нормально, а если строка с условием меняется, то в ПостроительОтчета.ИзмерениеСтроки пусто. Хотя сам запрос верен и в ПостроительОтчета.ПолучитьЗапрос().Выполнить().Выгрузить() строки есть. Причем никакое новое поле в запрос не добавляется и все группировки точно такие же.
В чем может быть дело?
1 mikecool
 
19.02.15
09:51
при смене текста запроса очищаются все настройки и инициализацию надо выполнять заново
не меняй текст запроса - используй параметры, будь мужиком )
2 Блондинка_
 
19.02.15
09:59
(1) Да вот я даже попыталась тот же код вставить, который в первоначальных настройках, ну чтоб как раз инициализировалось все заново. Но не помогает.
А можно поподробнее про параметры? Их же все равно надо в запрос вставлять?
3 Defender aka LINN
 
19.02.15
10:00
(0) Это называется "Отбор"
4 FIXXXL
 
19.02.15
10:00
(2) условия юзай через Построитель.Отбор
5 FIXXXL
 
19.02.15
10:00
дуплет :)
6 Блондинка_
 
19.02.15
10:03
(3) (4) А, ну да кстати) Что-то об этом я не подумала) Сейчас попробую
7 D_E_S_131
 
19.02.15
10:08
"ЗаполнитьНачальныеНастройки" — Вы делаете отчет с помощью механизма "УниверсальныйОтчет"? Почему нельзя условие использовать в запросе не меняя текста запроса?
8 Блондинка_
 
19.02.15
10:11
(7) Не поняла, а как использовать условие в запросе, не меняя текста?
9 D_E_S_131
 
19.02.15
10:23
(8) Например так:

Выбор Когда НЕ ЗаданоУсловие Тогда Истина
Когда Сумма > 0 Тогда Истина
Иначе Ложь
10 Блондинка_
 
19.02.15
11:07
(9) Большое спасибо! Так и сделала, была вчера мысль так сделать но что-то я ее оставила) Бросила я разбираться с отборами по построителю и решила все-таки так попробовать.
Очень конечно странно что когда я пишу вот так в параметрах регистра
Номенклатура <> &ПустаяНоменклатура
    И ВЫБОР
        КОГДА &ЕстьОтбор = ИСТИНА
            ТОГДА ДокументПродажи.Склад = &Склад
        ИНАЧЕ
    КОНЕЦ
Если условие по складу не задается - результат пустой
А вот когда вот так
Номенклатура <> &ПустаяНоменклатура
    И ВЫБОР
        КОГДА &ЕстьОтбор = ИСТИНА
            ТОГДА ДокументПродажи.Склад = &Склад
        ИНАЧЕ ИСТИНА
    КОНЕЦ
Все работает)) Интересно почему?)) Иначе этого условия нет, вроде же правильно все.
11 Defender aka LINN
 
19.02.15
11:32
Рукалицо...
12 D_E_S_131
 
19.02.15
11:44
(10) "Иначе этого условия нет" - условие должно быть всегда. "ИСТИНА" как раз и означает, что будет выполнено условие в любом случае.