Имя: Пароль:
1C
1C 7.7
v7: Запрос не хочет работать, помогите, пожалуйста.
0 Начинающий Программер
 
19.07.11
09:20
Если ФлагУчасткиДорог = 1 Тогда
   Если ДатаКон>ПолучитьДатуТА() Тогда
   КонДата=ПолучитьДатуТА();
   Иначе
   КонДата=ДатаКон;
   КонецЕсли;
   
Сообщить("ИдетЗапрос");
       
   ЗапросУчасткиДорог = СоздатьОбъект("Запрос");
   ТекстЗапросаУчасткиДорог = "
   |Период с {ДатаНач} по {КонДата};  
   |Адресок = Регистр.ВыполнениеСМР.Адрес;
   |Вып = Регистр.ВыполнениеСМР.СмСтоимость;
                     
   |Группировка Адресок Упорядочить По Адресок.Наименование;
                                             
   |Функция ВсегоВып = КонОст(Вып);
   |Функция ПриходВып = Приход(Вып);
   |Функция РасходВып = Расход(Вып);";
                       
Если ЗапросУчасткиДорог.Выполнить(ТекстЗапросаУчасткиДорог) = 0 Тогда
     Сообщить("ФЕЙЛ");
КонецЕсли;
   
Сообщить("Промежуток");                        
Пока ЗапросУчасткиДорог.Группировка(1) = 1 Цикл
   Сообщить(ЗапросУчасткиДорог.Адресок);
   Сообщить(ЗапросУчасткиДорог.Вып);
   Сообщить(ЗапросУчасткиДорог.ВсегоВып);
   Сообщить(ЗапросУчасткиДорог.ПриходВып);
   Сообщить(ЗапросУчасткиДорог.РасходВып);
   Сообщить("ЗАПРОСССС:");
КонецЦикла;

============
Что имеем в итоге:
Сам запрос идет,
"ФЕЙЛ" - не пишет, т.е. запрос. выполняется.
А вот всё, что внутри группировки - не сообщается. Вроде есть фишка, что без функций запрос не работает, однако все функции по регистру остатоков вроде поставил. Движения по регистру точно есть...
1 andrewks
 
19.07.11
09:25
а остатки/движуха-то хоть есть за этот период?
ВыполнениеСМР - структура регистра какая?
2 Начинающий Программер
 
19.07.11
09:27
(1) Да, движения есть.
Это регистр остатков, Адрес - измерение, Вып - ресурс.
Думал, может ещё какое условие должно быть для работы запроса...
3 andrewks
 
19.07.11
09:29
выгрузи результат запроса в ТЗ и полюбуйся, чё там вообще
4 Voronve
 
19.07.11
09:29
(0) датанач - указывается явно ? ли пустое значение ?
5 Fenikus
 
19.07.11
09:29
По-моему сначала надо функции писать, а потом группировку делать
6 filh
 
19.07.11
09:31
(3) а что это за {} в запросе?
7 1Сергей
 
19.07.11
09:31
(6)+1
8 povar
 
19.07.11
09:32
(6) типа яваскрипт )
9 filh
 
19.07.11
09:34
(8) ЯваАдинесноЗапросныйСкрипт?
10 andrewks
 
19.07.11
09:35
(6) это архаизм из 7,5 или 7,0, не помню точно
11 andrewks
 
19.07.11
09:35
+(10) он ни на что не влияет
12 Chum
 
19.07.11
09:36
{} - актер оригинального жанра?
:)))

Если ДатаКон>ПолучитьДатуТА() Тогда
   КонДата=ПолучитьДатуТА();
   Иначе
   КонДата=ДатаКон;
   КонецЕсли;


Зачем так много буков? Можно же проще: КонДата = Мин(ПолучитьДатуТА(), ДатаКон);
13 Начинающий Программер
 
19.07.11
09:41
(6) Скобки убрал (выдернул часть текста из другого запроса). Результат такой же.
(12) Этот текст тоже выдернул у другого автора)
14 Начинающий Программер
 
19.07.11
09:53
(3) При выгрузке в ТЗ только на колонки разбилось, без данных.
15 filh
 
19.07.11
09:54
(13) перед выполнение запроса сделай
Сообщить(ДатаНач);
Сообщить(КонДата);
результат сюда.
16 andrewks
 
19.07.11
09:54
(14) вот тебе и ответ
17 Chum
 
19.07.11
10:01
RegPrint.ert - посмотри, еслить ли вообще чего-нибудь в регистре
18 Начинающий Программер
 
19.07.11
10:09
Регистр однозначно заполненный. Это подпроцедура в сложной процедуре запроса по этому же регистру, с теми же измерениями и ресурсами. Мне просто доп. строку надо в отчет вставить. И во "внешней" процедуре результаты есть. Ладно, буду копать дальше)
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс