Имя: Пароль:
1C
1C 7.7
v7: Простенький запрос
0 Альбатрос
 
31.08.12
11:37
Нужно выбрать все документы чекККМ за период. Делаю вот такой запрос, не работает:
   Запрос = СоздатьОбъект("Запрос");
   ТекстЗапроса = "
   |Период с НачДата по КонДата;
   |Обрабатывать НеПомеченныеНаУдаление;
   |Чек = Документ.ЧекККМ.ТекущийДокумент;
   |ДатаДок = Документ.ЧекККМ.ДатаДок;
   |Группировка Чек упорядочить по Чек.ДатаДок;
   |;";
   
   Если Запрос.Выполнить(ТекстЗапроса) = 0 тогда
       Сообщить("Ошибка!");
   КонецЕсли;

Пишет "Неизвестная ошибка". Поправьте пожалуйста.
1 Guk
 
31.08.12
11:38
лишняя ";"...
2 VladZ
 
31.08.12
11:39
А чем тебя не устроило "|Группировка Чек"?
3 Guk
 
31.08.12
11:40
рекомендую пользоваться волшебником запросов...
4 Альбатрос
 
31.08.12
11:55
(1) Действительно лишняя.
(2) Всмысле убрать "упорядочить по Чек.ДатаДок;"
В любом случае, продолжение кода:

   Запрос = СоздатьОбъект("Запрос");
   ТекстЗапроса = "
   |Период с НачДата по КонДата;
   |Обрабатывать НеПомеченныеНаУдаление;
   |Чек = Документ.ЧекККМ.ТекущийДокумент;
   |ДатаДок = Документ.ЧекККМ.ДатаДок;
   |Группировка Чек упорядочить по Чек.ДатаДок;;  
   |";
   
   Если Запрос.Выполнить(ТекстЗапроса) = 0 тогда
       Сообщить("Ошибка!");
   КонецЕсли;          
   КолВо = 0;
   СуммаСтрок = 0;
   Пока запрос.Группировка(1) = 1 цикл
       Док = Запрос.Чек;
       Сообщить(Док);
        СуммаСтрок = СуммаСтрок + Док.КоличествоСтрок();
        КолВо = КолВо + 1;
       
   КонецЦикла;  

Сообщить(Док) ничего не выводит.
Более того, полностью задача состоит еще и в том, что мне надо посчитать ср. колво позиций в чеках. Как это в запросе выразить я не знаю.
5 Oleg_Kag
 
31.08.12
12:12
Где делается установка значений НачДата и КонДата?
6 povar
 
31.08.12
12:14
нет документов
7 Альбатрос
 
31.08.12
12:14
(5) Это 2 реквизита на форме обработки внешней
8 Zmich
 
31.08.12
12:15
ЧекККМ - обычно этот документ не проводится. По умолчанию в запрос попадают только проведенные документы. Так что тебе надо добавить в текст запроса строчку

|ОбрабатыватьДокументы Все;
9 povar
 
31.08.12
12:17
обычно Чеки сворачиваются в ОтчетККМ после закрытия смены
10 Альбатрос
 
31.08.12
12:19
(8) Спасибо, так показывает.
И все же, есть возможность в запросе сразу посчитать кол-во строк таб. части или не парится с этим?
11 Zmich
 
31.08.12
12:23
(10).
Можно добавлением предопределенной группировки СтрокаДокумента
и функцией Счётчик()
12 vinogradъ
 
31.08.12
12:26
|Группировка Чек упорядочить по Чек.ДатаДок;;  
я один это вижу?