Вход | Регистрация


1С:Предприятие :: 1С:Предприятие 7.7 и ранее

v7: Помогите со списком значений

v7: Помогите со списком значений
Я
   avcherkasov
 
10.11.16 - 10:36
Есть на форме множественный список (ТМЦ папки с элементами). Как их сообщить? Не сами элементы списка, а именно папки?
 
 
   Ёпрст
 
1 - 10.11.16 - 10:38
(0) Для начала, советую не употреблять тяжелые синтетические наркотики.
Ну и потом, задать вопрос по-человечьи
   avcherkasov
 
2 - 10.11.16 - 10:41
Да трезв, чес слово. В обработке на форме есть список ТМЦ (там я выбираю, например, группу товаров Напитки). Как сообщить Напитки, а не список элементов в этой группе?
   Это_mike
 
3 - 10.11.16 - 10:42
(1) говорят, вчера где-то марихуану легализовали... может, он из тех мест?
   разработчик 1с
 
4 - 10.11.16 - 10:42
в лнр есть 1с
кому сообщить о чём?
   avcherkasov
 
5 - 10.11.16 - 10:44
1с есть везде. Мне в ТЗ затем запихнуть надо именно Напитки, а не элементы.
   Ёпрст
 
6 - 10.11.16 - 10:44
(2) Кому сообщить ?
   Ёпрст
 
7 - 10.11.16 - 10:45
(5) ВыборГруппы(1)
   HawkEye
 
8 - 10.11.16 - 10:50
(0) ты кликаешь на папку Напитки, а она у тебя не выбирается, а открывается ее содержимое? тогда (7)
   Базис
 
9 - 10.11.16 - 10:51
.ЭтоГруппа();
.родитель()
   Это_mike
 
10 - 10.11.16 - 10:51
"грамотно сформулированный вопрос содержит в себе половину ответа"©
 
 Рекламное место пустует
   avcherkasov
 
11 - 10.11.16 - 11:03
(10) извините, попробую по другому ))
Если (ПустоеЗначение(ВыбТовар) = 0) и (ВыбТовар.Принадлежит(ТекТовар) <> 0) Тогда                                                                                 Сообщить(ВыбТовар);                      КонецЕсли;

Мне сообщает СписокЗначений. У меня он на форме (группа Напитки).Если по циклу перебирать, то выведу элементы этого списка (например нап1, нап2...), а как сообщить именно Напитки?
   разработчик 1с
 
12 - 10.11.16 - 11:07
выбтовар.текущийэлемент
   Ёпрст
 
13 - 10.11.16 - 11:08
(12) это заразно ?
   Ёпрст
 
14 - 10.11.16 - 11:08
у списка значений нет реквизита .текущийэлемент
   Ёпрст
 
15 - 10.11.16 - 11:09
(11) Ты по человечьи можешь задать вопрос ?
   Ёпрст
 
16 - 10.11.16 - 11:09
Тебе нужно что ? Значение из текущей строки из твоего списка на форме ? Или что ?
   silent person
 
17 - 10.11.16 - 11:10
Сообщить(ВыбТовар.ПолучитьЗначение(ВыбТовар.ТекущаяСтрока()));
   avcherkasov
 
18 - 10.11.16 - 11:23
(17) Спасибо так и пытаюсь делать. Это работает если в списке значений 1 группа, а если их несколько, то выводит всегда последнюю.
   avcherkasov
 
19 - 10.11.16 - 11:24
(16) да
   Ёпрст
 
20 - 10.11.16 - 11:25
(18) ой ли.. Там где стоит текущая строка в списке на форме, ту и выведет.
   avcherkasov
 
21 - 10.11.16 - 11:28
Допустим, у меня 3 строки в СЗ. В обработке я перебираю все элементы из этого списка. Как сообщить, что нап1 -принадлежит группе напитки, а кега1 - принадлежит группе Кеги?
   Ёпрст
 
22 - 10.11.16 - 11:35
(21) Так тебе значение из текущей строки списка значений нужно, или все ?
И зачем ты перебираешь список ?
и нап1 - это что ? И кега1 -это что ? Откуда взялись ?

Может, выплюнешь кашу и задашь вопрос по-человечьи ?
   silent person
 
23 - 10.11.16 - 11:42
Для Сч = 1 По ВыбТовары.РазмерСписка() Цикл
ТекЭлемент = ВыбТовары.ПолучитьЗначение(Сч);
Если ТекЭлемент.ЭтоГруппа() = 1 Тогда
Сообщить(ТекЭлемент);
Иначе
Сообщить(ТекЭлемент.Родитель);
КонецЕсли;
КонецЦикла;
   Ёпрст
 
24 - 10.11.16 - 11:42
Хз, че тебе надо, наверное, закусывать больше


Для к =1 По ВыбТовар.РазмерСписка() Цикл
   ЗначениеСписка = ВыбТовар.ПолучитьЗначение(к);
   Если ЗначениеСписка.ЭтоГруппа()=1 Тогда
     Если ЗначениеСписка.Принадлежит(нап1)=1 Тогда
        Сообщить(""+ЗначениеСписка +" это группа однако и "+нап1+" торчит в ней");
     КонецЕсли;  
     Если ЗначениеСписка.Принадлежит(кега1 )=1 Тогда
        Сообщить(""+ЗначениеСписка +" это группа однако и "+кега1 +" торчит в ней");
     КонецЕсли;
    КонецЕсли;
КонецЦикла;
   avcherkasov
 
25 - 10.11.16 - 11:55
(24)
Для к = 1 По ВыбТовар.РазмерСписка() Цикл
                ЗначениеСписка = ВыбТовар.ПолучитьЗначение(к);                
               Если ЗначениеСписка.ЭтоГруппа() = 1 Тогда
                 Если ЗначениеСписка.Принадлежит(ТекТовар.ТекущийЭлемент()) = 1 Тогда
                    Сообщить(""+ЗначениеСписка +" это группа однако и "+ТекТовар+" торчит в ней");
                 КонецЕсли;  
                КонецЕсли;
            КонецЦикла;

Поле агрегатного объекта не обнаружено (Принадлежит)
   Ёпрст
 
26 - 10.11.16 - 11:57
Для к =1 По ВыбТовар.РазмерСписка() Цикл

   ЗначениеСписка = ВыбТовар.ПолучитьЗначение(к);
   Если ЗначениеСписка.ЭтоГруппа()=1 Тогда
     Если нап1.ПринадлежитГруппе(ЗначениеСписка)=1 Тогда
        Сообщить(""+ЗначениеСписка +" это группа однако и "+нап1+" торчит в ней");
     КонецЕсли;  
     Если кега1.ПринадлежитГруппе(ЗначениеСписка)=1 Тогда
        Сообщить(""+ЗначениеСписка +" это группа однако и "+кега1 +" торчит в ней");
     КонецЕсли;
    КонецЕсли;
КонецЦикла;
   DDwe
 
27 - 10.11.16 - 11:57
Пятница!
   Ёпрст
 
28 - 10.11.16 - 12:00
(27) тут либо  86, либо днк
   avcherkasov
 
29 - 10.11.16 - 12:04
(26) Да, это оно. Огромное человеческое.
PS юмористам, на кастинг к Петросяну, такие таланты пропадают.
PPS
Для к = 1 По ВыбТовар.РазмерСписка() Цикл
                ЗначениеСписка = ВыбТовар.ПолучитьЗначение(к);                
               Если ЗначениеСписка.ЭтоГруппа() = 1 Тогда
                 Если ТекТовар.ПринадлежитГруппе(ЗначениеСписка) = 1 Тогда
                    Сообщить(ЗначениеСписка);
                 КонецЕсли;  
                КонецЕсли;
            КонецЦикла;
   Злопчинский
 
30 - 10.11.16 - 12:27
чтобы понять, что ТекТовар принадлежит какой-то группе, которая есть в спискезначений ВыбТовар (при условии что сам тектовар не содержится в этом списке) - всю эту многоэтажную конструкцию можно заменить на

ВыбТовар.Принадлежит(ТекТовар);

а дальше, если надо детализировать какой именно группе - тогда уже перебирать список
   avcherkasov
 
31 - 10.11.16 - 12:48
(30) ок, спасибо. Мне именно надо детализировать.


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует