Имя: Пароль:
1C
1С v8
Правильно ли передаются значения в запрос
0 LivingStar
 
09.08.13
13:17
Имеется некий запрос, мне нужно в него передать список значений контрагентов где отбирать потом по инструкции В ИЕРАРХИИ. Список значений заполняю так:

        СписокПоНаправлению.Добавить(Справочники.Контрагенты.НайтиПоКоду("000000817"));
        СписокПоНаправлению.Добавить(Справочники.Контрагенты.НайтиПоКоду("000000471"));
        СписокПоНаправлению.Добавить(Справочники.Контрагенты.НайтиПоКоду("000000808"));
        СписокПоНаправлению.Добавить(Справочники.Контрагенты.НайтиПоКоду("000001328"));
        СписокПоНаправлению.Добавить(Справочники.Контрагенты.НайтиПоКоду("000001260"));


сам запрос:

        Текст  = "
            |ВЫБРАТЬ
            |    РеализацияТоваровУслуг.ТорговаяТочка КАК ТТ
            |ИЗ
            |    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
            |ГДЕ
            |    РеализацияТоваровУслуг.Дата " + ТекстДата + "
            |    И РеализацияТоваровУслуг.Контрагент В ИЕРАРХИИ(&Направление)
            |    И РеализацияТоваровУслуг.Проведен = ИСТИНА
            |    И РеализацияТоваровУслуг.Контрагент.Код НЕ В (&списокСам)
            |   И РеализацияТоваровУслуг.Склад.Наименование = &Склад
            |СГРУППИРОВАТЬ ПО
            |    РеализацияТоваровУслуг.ТорговаяТочка";
        Запрос.Текст = Текст;
        //
        // LivingStar 2013_08_09 ->
        //Запрос.УстановитьПараметр("Направление", Направление.Значение);
        НаправлениеПоЭлементно = Новый СписокЗначений;
        НаправлениеПоЭлементно = ПолучитьЭлементыНаправления(Элементыформы.Направление2.ВыделенныйТекст);
        Запрос.УстановитьПараметр("Направление", НаправлениеПоЭлементно);
        // LivingStar 2013_08_09 <-
        //

почему может не выбирать запрос???
1 Fragster
 
модератор
09.08.13
13:20
за 8 лет, 4 месяца и 9 дней тебя разве не нацчили, что ссылка и наименование - разные вещи?
2 Fragster
 
модератор
09.08.13
13:20
и отладчиком, опять же неплохо бы восользоваться
3 Fragster
 
модератор
09.08.13
13:21
восПользоваться
4 cw014
 
09.08.13
13:21
(0) Вариантов "почему" в твоем случае около стапятисот
5 cw014
 
09.08.13
13:21
(1) Он 8 лет на OFFах сидит в основном
6 palpetrovich
 
09.08.13
13:24
если НаправлениеПоЭлементно это СписокЗначений, то какая нафиг ИЕРАРХИИ, делай:
|    И РеализацияТоваровУслуг.Контрагент В &Направление

зы: копрокод детекткд :)
7 Афоня
 
09.08.13
13:25
может дело в пятнице?
8 Fragster
 
модератор
09.08.13
13:25
(6) а если по замыслу там список групп?
9 Ёпрст
 
гуру
09.08.13
13:27
" + ТекстДата + "

тут тоже небось весело..
но а
Наименование = &Склад шедевр
10 palpetrovich
 
09.08.13
13:28
(8) ваще-т, учитывая кто автор, не удивлюсь
11 LivingStar
 
09.08.13
13:32
да это код то мне мой !!!!!!!!!!!!!!!!!!!!
12 НаборДанных
 
09.08.13
13:33
(11)да, да..., у моей подруги с ее парнем.=)
13 LivingStar
 
09.08.13
13:33
Правил структуру справочника контрагенты в соответствии с адресом, притащили от чет перестал типа работать. Посмотрел там была прямая привязка на коды каталогов, которые я разнес по справочнику и удалил
14 НаборДанных
 
09.08.13
13:34
(13)Ну ты будь мужиком, перепиши запрос и всё.
15 palpetrovich
 
09.08.13
13:34
(13) это пять! :)
16 LivingStar
 
09.08.13
13:35
Сейчас в тестовой базе выявил что за элементы были в удаленных каталогах которые В ИЕРАРХИИ участвовали в запросе, создаю по ним список значений как показано в (0) и передаю в запрос, но запрос что то не выбирает......
17 LivingStar
 
09.08.13
13:35
(14) да нах не охото ничего, я и так сидел этот тупорыло убогий код разбирал, что бы минимум править, вставил свои правки, все норм, но почему не выбирает, не передается список что ли????
18 НаборДанных
 
09.08.13
13:38
(17)Блин....
Код = Текст, в списке у тебя ссылки, вопросы? Ну и далее хз, что за направления там у тебя, да и склад.наименование, ну тебе ответили уже всё.
19 LivingStar
 
09.08.13
13:43
Если в этом списке ссылки на элементы справочника, заполнялся он так:

    СписокПоНаправлению.Добавить(Справочники.Контрагенты.НайтиПоКоду("000000817"));


То передавая его в запросе И РеализацияТоваровУслуг.Контрагент В ИЕРАРХИИ(&Направление)

должно же сработать?
20 LivingStar
 
09.08.13
13:44
&Направление - это этот список и есть
21 НаборДанных
 
09.08.13
13:44
(19)А что там с списке "Направление"???
22 НаборДанных
 
09.08.13
13:44
(20)Где написано?
23 НаборДанных
 
09.08.13
13:45
НаправлениеПоЭлементно = Новый СписокЗначений;
        НаправлениеПоЭлементно = ПолучитьЭлементыНаправления(Элементыформы.Направление2.ВыделенныйТекст);
        Запрос.УстановитьПараметр("Направление", НаправлениеПоЭлементно);
Вижу несколько другое.
24 cw014
 
09.08.13
13:45
(20)

Тогда это что за мусор?

        НаправлениеПоЭлементно = Новый СписокЗначений;
        НаправлениеПоЭлементно = ПолучитьЭлементыНаправления(Элементыформы.Направление2.ВыделенныйТекст);
        Запрос.УстановитьПараметр("Направление", НаправлениеПоЭлементно);
25 LivingStar
 
09.08.13
13:46
(23)(24) это я создаю новый список, в функцию передаю текстовое значение выбранное на форме, в зависимости от него в список помещаются те или иные элементы и он возвращается и передается в параметр Направление, а тот потом используется В ИЕРАРХИИ в запросе, ну вот.... все прозрачно....
26 cw014
 
09.08.13
13:48
(25)
Тогда это что за мусор?

        СписокПоНаправлению.Добавить(Справочники.Контрагенты.НайтиПоКоду("000000817"));
        СписокПоНаправлению.Добавить(Справочники.Контрагенты.НайтиПоКоду("000000471"));
        СписокПоНаправлению.Добавить(Справочники.Контрагенты.НайтиПоКоду("000000808"));
        СписокПоНаправлению.Добавить(Справочники.Контрагенты.НайтиПоКоду("000001328"));
        СписокПоНаправлению.Добавить(Справочники.Контрагенты.НайтиПоКоду("000001260"));
27 НаборДанных
 
09.08.13
13:49
(25)Это бредня какой-то.
Зачем тогда это пишешь?
           |    И РеализацияТоваровУслуг.Контрагент В ИЕРАРХИИ(&Направление)
            |    И РеализацияТоваровУслуг.Проведен = ИСТИНА
            |    И РеализацияТоваровУслуг.Контрагент.Код НЕ В (&списокСам)
Если, по тоим словам 2а списка одинаковы, напиши
           |    И РеализацияТоваровУслуг.Контрагент В ИЕРАРХИИ(&Направление)
            |    И РеализацияТоваровУслуг.Проведен = ИСТИНА
28 LivingStar
 
09.08.13
13:50
(26) это кусок из функции где заполняется список, тама много элементов в него помещаются
29 LivingStar
 
09.08.13
13:51
(27) так в коде так же и есть......
30 LivingStar
 
09.08.13
13:53
(27) я вот и не пойму, все вроде как нужно но не выбирается (((
31 НаборДанных
 
09.08.13
13:56
(29)Также как, как в 1ой половине предложения или как во второй?
32 НаборДанных
 
09.08.13
13:57
Начнем с малого,
|ВЫБРАТЬ
            |    РеализацияТоваровУслуг.ТорговаяТочка КАК ТТ
            |ИЗ
            |    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
            |ГДЕ
            |    РеализацияТоваровУслуг.Дата " + ТекстДата + "
            |    И РеализацияТоваровУслуг.Контрагент В ИЕРАРХИИ(&Направление)
            |    И РеализацияТоваровУслуг.Проведен = ИСТИНА
            |    И РеализацияТоваровУслуг.Контрагент НЕ В (&списокСам)
            |СГРУППИРОВАТЬ ПО
            |    РеализацияТоваровУслуг.ТорговаяТочка";

Так что то выберет?
33 LivingStar
 
09.08.13
13:58
(31) да эт не я пишу это так было &списокСам посторонний, заполняется самостоятельно я его не касаюсь

я заполнил &Направление и передаю его в запрос
34 LivingStar
 
09.08.13
13:59
(32) приношу извинения. но сервер висит, не попаду на него уже наверное сегодня (((
35 НаборДанных
 
09.08.13
14:00
Сама строка
|    И РеализацияТоваровУслуг.Контрагент.Код НЕ В (&списокСам)
Полный бред, учитывая
СписокПоНаправлению.Добавить(Справочники.Контрагенты.НайтиПоКоду("000000817"));
        СписокПоНаправлению.Добавить(Справочники.Контрагенты.НайтиПоКоду("000000471"));
        СписокПоНаправлению.Добавить(Справочники.Контрагенты.НайтиПоКоду("000000808"));
        СписокПоНаправлению.Добавить(Справочники.Контрагенты.НайтиПоКоду("000001328"));
        СписокПоНаправлению.Добавить(Справочники.Контрагенты.НайтиПоКоду("000001260"));
36 hhhh
 
09.08.13
14:27
(35) почему? в Направлении это список групп, а в список сам он исключает некоторых контрагентов, которые сами.
37 LivingStar
 
12.08.13
05:48
В запросе указанна выборка по группе контрагентов, которую я сейчас заменяю списком, так как группы этой уже нет. Создаю его из элементов в ней находящихся (посмотрел в тестовой базе). Список который исключается, это совершенно другой список контрагентов которые не должны участвовать в выборке.
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.