Имя: Пароль:
1C
1С v8
Запрос не отрабатывает в чем прикол?
0 goleaff2006
 
31.07.12
07:50
В регистре измерение  Порого тип число , не отрабатывает почему то условие СУБ_ВознагражденияСрезПоследних.Порог <= &КоличествоНовыхПодключений (КоличествоНовыхПодключений тоже число).
Запрос1.Текст ="ВЫБРАТЬ
       СУБ_ВознагражденияСрезПоследних.Схема КАК Схема,
       СУБ_ВознагражденияСрезПоследних.Ставка КАК Ставка,
       СУБ_ВознагражденияСрезПоследних.Порог КАК Порог,
       СУБ_ВознагражденияСрезПоследних.ПоследнийМесяц КАК ПоследнийМесяц,
       СУБ_ВознагражденияСрезПоследних.Договор КАК Договор,
       СУБ_ВознагражденияСрезПоследних.СубДилер КАК СубДилер,
       СУБ_ВознагражденияСрезПоследних.Период КАК Период
   ИЗ
       РегистрСведений.СУБ_Вознаграждения.СрезПоследних(&Дата, ) КАК СУБ_ВознагражденияСрезПоследних
ГДЕ
СУБ_ВознагражденияСрезПоследних.Оператор = &Оператор
И СУБ_ВознагражденияСрезПоследних.СубДилер = &Клиент
И СУБ_ВознагражденияСрезПоследних.Порог <= &КоличествоНовыхПодключений
СГРУППИРОВАТЬ ПО
СУБ_ВознагражденияСрезПоследних.Договор,
СУБ_ВознагражденияСрезПоследних.Период,
СУБ_ВознагражденияСрезПоследних.Схема,
СУБ_ВознагражденияСрезПоследних.СубДилер,
СУБ_ВознагражденияСрезПоследних.Ставка,
СУБ_ВознагражденияСрезПоследних.Процент,
СУБ_ВознагражденияСрезПоследних.ПоследнийМесяц,
СУБ_ВознагражденияСрезПоследних.Порог";
       Запрос.УстановитьПараметр("Оператор",Оператор);
           Запрос.УстановитьПараметр("Клиент",Субдилер);
           Запрос.УстановитьПараметр("Дата",ДатаСхемы);
           Запрос.УстановитьПараметр("КоличествоНовыхПодключений",КоличествоНовыхПодключений);
1 ICWiner
 
31.07.12
08:02
Саша?.. Ты ли это?
2 hhhh
 
31.07.12
08:18
(0) а если написать?

     Запрос1.УстановитьПараметр("КоличествоНовыхПодключений",КоличествоНовыхПодключений);

не поможет гиганту мысли?
3 goleaff2006
 
31.07.12
08:23
Да не это не помогает.там в начале опечатка просто.Запрос конечно же место Запрос1
4 m-serg74
 
31.07.12
08:31
а почему
СГРУППИРОВАТЬ ПО
..................
СУБ_ВознагражденияСрезПоследних.Процент

а в ВЫБРАТЬ такого поля нима?
5 m-serg74
 
31.07.12
08:35
и самое интересное что значит - "не отрабатывает условие"?
6 goleaff2006
 
31.07.12
08:46
Запрос.Текст ="ВЫБРАТЬ
       СУБ_ВознагражденияСрезПоследних.Схема КАК Схема,
      СУБ_ВознагражденияСрезПоследних.Ставка КАК Ставка,
      СУБ_ВознагражденияСрезПоследних.Порог КАК Порог,
      СУБ_ВознагражденияСрезПоследних.ПоследнийМесяц КАК ПоследнийМесяц,
      СУБ_ВознагражденияСрезПоследних.Договор КАК Договор,
      СУБ_ВознагражденияСрезПоследних.СубДилер КАК СубДилер,

       СУБ_ВознагражденияСрезПоследних.Период КАК Период
   ИЗ
       РегистрСведений.СУБ_Вознаграждения.СрезПоследних(&Дата, ) КАК СУБ_ВознагражденияСрезПоследних
ГДЕ
СУБ_ВознагражденияСрезПоследних.Оператор = &Оператор
И СУБ_ВознагражденияСрезПоследних.СубДилер = &Клиент
И СУБ_ВознагражденияСрезПоследних.Порог <= &КоличествоНовыхПодключений";
       Запрос.УстановитьПараметр("Оператор",Оператор);
           Запрос.УстановитьПараметр("Клиент",Субдилер);
           Запрос.УстановитьПараметр("Дата",ДатаСхемы);
           Запрос.УстановитьПараметр("КоличествоНовыхПодключений",КоличествоНовыхПодключений);

Опечатлся просто значит, что когда я задаю например КоличествоНовыхПодключений=2 то он должен выводить не больше 2, а выводит почему то все.
7 goleaff2006
 
31.07.12
08:47
строк конечно.даже те в которых Порог больше 2.
8 butterbean
 
31.07.12
08:48
(7) в отладчике проверял?? параметр точно передается??
9 hhhh
 
31.07.12
09:11
(7) а если не через задницу написать, а по человечески? Вот так, например:

ИЗ
       РегистрСведений.СУБ_Вознаграждения.СрезПоследних(&Дата, Оператор = &Оператор И СубДилер = &Клиент И Порог <= &КоличествоНовыхПодключений
) КАК СУБ_ВознагражденияСрезПоследних
10 y22-k
 
31.07.12
09:19
(0) параметры проверь внимательно
11 goleaff2006
 
31.07.12
09:20
Да хоть  как, один фиг не отрабатывает условие, да передается и типы оба число, но вот условие не работает все равно.причем в консоле запросов отрабатывает и результат тот который нужен , а в коде нет.
12 goleaff2006
 
31.07.12
09:21
Может быть косяк потому что измерение число?
13 hhhh
 
31.07.12
09:25
(12) нет там всё в порядке. проверьте, может вы всобачили там больше трех измерений?
14 goleaff2006
 
31.07.12
09:27
Ну да больше трех =)
15 m-serg74
 
31.07.12
09:29
(13) а что есть ограничение на кол-во измерений?
16 m-serg74
 
31.07.12
09:31
(14) а после того как что нить меняете в конф. Сохранить, а в Предпр, заново открыть не забываете?)
17 hhhh
 
31.07.12
09:35
(14) ну тогда все правильно работает, чего вы нам мозг парите?

Допустим у вас по четвертому измерению три строчки, в каждой КоличествоПодключений = 2. Они проходят в выборку, все менше или равно 2-х.

Потом вы делаете СГРУППИРОВАТЬ. Четвертое измерение у вас убирается нафиг и получается количество = 2+2+2 = 6.

Всё путем. Как вы задумали, так и работает.
18 goleaff2006
 
31.07.12
09:37
нет конечно.Задачка конечно еще та.Главное в консоле запросов  без проблем отрабатывает, я даже вместо переменной уже конкреттно число 2 поставил один фиг результат отрицательный.В каждой строчке  порог разный  1 2 и 3
19 m-serg74
 
31.07.12
09:39
(17) так он уже вроде убрал СГРУППИРОВАТЬ, ТС давайте копипаст полностью кода, который относится к запросу
20 goleaff2006
 
31.07.12
09:40
Вот этот
Запрос.Текст ="ВЫБРАТЬ


      СУБ_ВознагражденияСрезПоследних.Схема КАК Схема,
     СУБ_ВознагражденияСрезПоследних.Ставка КАК Ставка,
     СУБ_ВознагражденияСрезПоследних.Порог КАК Порог,
     СУБ_ВознагражденияСрезПоследних.ПоследнийМесяц КАК ПоследнийМесяц,
     СУБ_ВознагражденияСрезПоследних.Договор КАК Договор,
     СУБ_ВознагражденияСрезПоследних.СубДилер КАК СубДилер,

       СУБ_ВознагражденияСрезПоследних.Период КАК Период
   ИЗ
       РегистрСведений.СУБ_Вознаграждения.СрезПоследних(&Дата, ) КАК СУБ_ВознагражденияСрезПоследних
ГДЕ
СУБ_ВознагражденияСрезПоследних.Оператор = &Оператор
И СУБ_ВознагражденияСрезПоследних.СубДилер = &Клиент
И СУБ_ВознагражденияСрезПоследних.Порог <= &КоличествоНовыхПодключений";
       Запрос.УстановитьПараметр("Оператор",Оператор);
           Запрос.УстановитьПараметр("Клиент",Субдилер);
           Запрос.УстановитьПараметр("Дата",ДатаСхемы);
           Запрос.УстановитьПараметр("КоличествоНовыхПодключений",КоличествоНовыхПодключений);
21 m-serg74
 
31.07.12
09:42
измерения в рег. какие?
22 goleaff2006
 
31.07.12
09:43
Оператор,СубДилер, Порог
23 goleaff2006
 
31.07.12
09:44
и схема
24 hhhh
 
31.07.12
09:44
(20) и дальше код. где выборка из запроса идет.
25 m-serg74
 
31.07.12
09:44
Оператор в ВЫБРАТЬ добавьте
26 goleaff2006
 
31.07.12
09:44
ТабРезалт = Резалт.Выгрузить();
27 goleaff2006
 
31.07.12
09:45
В ТабРезалт попадает 3 строки, вместо двух.
28 m-serg74
 
31.07.12
09:46
погоди строки 3-и или в одной из строк Порог=3?
29 goleaff2006
 
31.07.12
09:47
Три строки в каждой порог свой.1
30 goleaff2006
 
31.07.12
09:47
в первой 1 во второй 2 в третей 3
31 m-serg74
 
31.07.12
09:48
TV есть, аж интересно чтоза хрень посмотреть
32 butterbean
 
31.07.12
09:49
если одинаковые запросы по разному отрабатывают в консоли отчетов и в обработке, значит дело либо в параметрах запроса, либо в сохранении изменений обработки, либо в коде после запроса в обработке
33 goleaff2006
 
31.07.12
09:52
Да я уже руками устанавливаю параметры результат один.Данный запрос я использую в созданном документе.Запрос результат не правильный выводит сразу же.
34 goleaff2006
 
31.07.12
09:52
TV нету.
35 butterbean
 
31.07.12
09:53
(33) динамическим обновлением не балуешься??
36 goleaff2006
 
31.07.12
09:54
Не отрабатывает именно условие Порог <= &КоличествоНовыхПодключений или Порог <= 2.Да хоть как. Бывает балуюсь.
37 butterbean
 
31.07.12
09:55
(36) попробуй тогда закрыть конфигуратор и по новой прописать базу в списке баз
38 m-serg74
 
31.07.12
09:58
TV нету. ну ну кого то Вы мне напоминаете)
39 goleaff2006
 
31.07.12
10:04
кого я мог8у напоминать?я здесь первый раз создал тему и то, потому что у меня встал вопрос который не могу решить.
40 m-serg74
 
31.07.12
10:05
TV не скачать никак?
41 goleaff2006
 
31.07.12
10:07
Да на работе я здесь все жестко ограниченно.
42 m-serg74
 
31.07.12
10:12
вот кого напоминаете
v8: Как найти?
43 m-serg74
 
31.07.12
10:15
(41) а на Мисте трындеть с 7.50 до 10.07 можно, да?
44 goleaff2006
 
31.07.12
10:31
Хотелось понять в чем прикол так как 1с изучаю относительно не давно.А данный косяк я обошел пришлось правда дополнительный цикл по обработке таблицы значений делать, где уже отбираю по условию, коль запрос этого сделать не может.
45 m-serg74
 
31.07.12
10:35
запрос может многое делать, в отличие от некоторых