Имя: Пароль:
1C
1C 7.7
v7: Вопрос по запросу
0 TwoWorld
 
16.11.11
09:55
1. Почему не работает упорядочивание по возрастанию запрос?
2. Почему не работает условие на заявки?

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

   //Создание объекта типа Запрос
   ТекстЗапроса =
   "//{{ЗАПРОС(Сформировать)
   |Период с ДатаДок по ДатаДок;
   |Договор = Регистр.Заявки.ДоговорПокупателя;
   |Док = Регистр.Заявки.ТекущийДокумент;
   |Контрагент = Регистр.Заявки.ДоговорПокупателя.Владелец;
   |ДатаОтгрузки = Регистр.Заявки.ЗаявкаПокупателя.ДатаОтгрузки;
   |Заявка = Регистр.Заявки.ЗаявкаПокупателя;
   |Дата = Регистр.Заявки.ЗаявкаПокупателя.ДатаДок;
   |ФирмаВ = Регистр.Заявки.Фирма;
   |ОперацияЗаявка = Регистр.Заявки.ЗаявкаПокупателя.ВидОперации;          
   |СвойствоПок    = Регистр.Заявки.ДоговорПокупателя.Владелец.ОсновноеСвойство.ЗначениеСвойства;
   |СуммаПоЗаявке = Регистр.Заявки.СтоимостьРасход;
   |Функция СуммаПоЗаявкеНачОст = НачОст(СуммаПоЗаявке);
   |Функция СуммаПоЗаявкеПриход = Приход(СуммаПоЗаявке);
   |Функция СуммаПоЗаявкеРасход = Расход(СуммаПоЗаявке);
   |Функция СуммаПоЗаявкеКонОст = КонОст(СуммаПоЗаявке);
   |Условие (ДатаОтгрузки<=ДатаДок);
   |Условие (ФирмаВ = Фирма);
//    |Условие (НЕ (Заявка в ТЗЗаявок));
//    |Группировка Заявка;
//    |Группировка Заявка Упорядочить  По Заявка.ДатаОтгрузки возр;
   |"//}}ЗАПРОС
   ;                                              

   Если ЗапросЗаявки.Выполнить(ТекстЗапроса) = 0 Тогда
       Возврат;
   КонецЕсли;
1 1Сергей
 
16.11.11
09:59
потому, что они закоментированы
2 vladko
 
16.11.11
10:00
1. В отладчике проверял, ТЗЗаявок не пустая?
2. возр вроде как лишнее.
3 TwoWorld
 
16.11.11
10:00
(1) я просто закоментировал, не взлетает запрос потому что с упорядочиванием и не работает условие на заявки
4 TwoWorld
 
16.11.11
10:01
(2) нет не лишнее, без него он не упорядочивает по возрастанию
5 1Сергей
 
16.11.11
10:01
смотри параметры Запрос.Выгрузить
6 Rie
 
16.11.11
10:02
(0) НЕ и В - с этим был некий глюк.
Попробуй
|Условие(ТЗЗаявок.НайтиЗначение(Заявка)=0);
7 vladko
 
16.11.11
10:03
запрос
ТекстЗапросаПоВошедшимЗаявкам = "
   |Период с ДатаДок по ДатаДок;
   |ОбрабатыватьДокументы Непроведенные;
   |Докум = Документ.МаршрутныйЛист.Заявка;
   |Сумма = Документ.МаршрутныйЛист.Сумма;
   |";
не дописанный
не хватает функции Счётчик()
и группировки
8 vladko
 
16.11.11
10:04
или просто функции Сумма(Сумма)
9 1Сергей
 
16.11.11
10:05
(7) (8) Функция не обязательна. Это не регистры
10 PuhUfa
 
16.11.11
10:07
(0)
ТЗЗаявок = СоздатьОбъект("СписокЗначений");
Если ЗапросЗаявки.Выполнить(ТекстЗапросаПоВошедшимЗаявкам) = 1 Тогда
   ЗапросЗаявки.Выгрузить(ТЗЗаявок);
КонецЕсли;

Ты уверен, что после Выгрузить() ТЗЗаявок остается быть СпискомЗначений а не становится ТаблицейЗначений?
11 1Сергей
 
16.11.11
10:08
(10) +1
12 TwoWorld
 
16.11.11
10:11
С заявками разобрался, а как быть с упорядочивание?
13 Ёпрст
 
16.11.11
10:12
(0) в первый запрос воткни БезИтогов или добавь группировку, сейчас он у тебя пустой.
14 Ёпрст
 
16.11.11
10:12
(12) Нам отсюда не видно, где в запросе у тебя упорядочивание
15 1Сергей
 
16.11.11
10:13
(12) у тебя две группировки Заявка?
16 TwoWorld
 
16.11.11
10:17
Не 1 группировка:
|Группировка Заявка Упорядочить  По Заявка.ДатаОтгрузки возр;
17 Ёпрст
 
16.11.11
10:19
(16) возр ? это откуда такая трава ?
18 TwoWorld
 
16.11.11
10:22
(17) а как же?
19 Ёпрст
 
16.11.11
10:23
(18) а ты почитай СП на ночь, там усё есть
20 TwoWorld
 
16.11.11
10:27
нашел , спс)