|
Как выбрать все элементы входящие в группу справочника? | ☑ | ||
---|---|---|---|---|
0
Jurest_
14.07.21
✎
23:29
|
Всем привет. Уже была такая тема, но все таки я решил повторить. У меня стоит задача, выбрать все группы(элементы) справочника, входящие в определенную группу. Пример: Есть справочник Номенклатура, в нем есть папка Торговая деятельность, в этой папке есть еще папки с категориями товаров(Часы, ТВ и тд.). В каждой этой папке есть список товаров. Вопрос. Как мне достать только список папок, которые есть в папке Торговая деятельность? Пытаюсь через метод Выбрать, у него есть параметр <Родитель>, но я не понимаю, что именно надо написать в этот параметр. Подскажите.
|
|||
1
Злопчинский
14.07.21
✎
23:40
|
написать запрос
в запросе ограничиться выбором тех, которые имеют признак ЭтоГруппа=1 и лежать внутри иерархии группы ВыбТорговаяДеятельность. . но я не 8-ик могу лажать |
|||
2
Лефмихалыч
14.07.21
✎
23:45
|
выбрать ссылка ИЗ Справочник.Номенклатура ГДЕ ЭтоГруппа И ссылка в иерархии(&СсылкаНаТвоюВолшебнуюГруппу)
|
|||
3
Jurest_
14.07.21
✎
23:48
|
А без запроса это сделать никак не получится?
|
|||
4
Злопчинский
14.07.21
✎
23:49
|
(3) можно, но это некошерно по идеологии использования 8-ки.
|
|||
5
Злопчинский
14.07.21
✎
23:49
|
(3) и за такое на экзамене ебеницу поставят!
|
|||
6
youalex
14.07.21
✎
23:50
|
(3) Можно визуально выбирать
|
|||
7
Злопчинский
14.07.21
✎
23:50
|
(2) точняк, только я другими словами написал ;-)
|
|||
8
Jurest_
14.07.21
✎
23:53
|
(6) Не, нужно именно программно. Пошел пробовать через запрос.
|
|||
9
Jurest_
15.07.21
✎
00:03
|
Пожалуйста, только не отправляйте читать про кодирование. Я этим занимаюсь.
Запрос = Новый Запрос; Запрос.Текст = " |ВЫБРАТЬ |Номенклатура.Ссылка |ИЗ |Справочник.Номенклатура КАК Номенклатура |ГДЕ |ЭтоГруппа И Номенклатура.Ссылка В ИЕРАРХИИ(&Торговая деятельность)"; РезультатЗапроса = Запрос.Выполнить(); Выборка = РезультатЗапроса.Выбрать(); Пока Выборка.Следующий() Цикл НоваяСтрока = Объект.ДанныеФайла.Добавить(); ЗаполнитьЗначенияСвойств(НоваяСтрока,Выборка); КонецЦикла; Как мне правильно объявить название папки? |
|||
10
Ненавижу 1С
гуру
15.07.21
✎
00:14
|
(9) почитайте про параметры запросов
|
|||
11
Jurest_
15.07.21
✎
00:19
|
То, что надо эту строчу добавить я понимаю
Запрос.УстановитьПараметр("Торговая деятельность",ГруппаВыбора) А вот что именно надо записать в ГруппуВыбора нет. |
|||
12
Jurest_
15.07.21
✎
00:25
|
Синтаксис:
Выбрать(<Родитель>, <Владелец>, <Отбор>, <Порядок>) Параметры: <Родитель> (необязательный) Тип: СправочникСсылка.<Имя справочника>. Отбор по родителю. Имеет смысл только для многоуровневых справочников. Если параметр не задан, то отбор по родителю не производится. Чтобы отобрать элементы верхнего уровня, нужно в качестве данного параметра указать пустую ссылку на элемент справочника. Если пишу в этот параметр ПустаяСсылка, то действительно выбирается корневая папка Торговая деятельность. Можно в этот параметр как то впихнуть нужную мне папку? |
|||
13
hhhh
15.07.21
✎
02:35
|
(12) ГруппаВыбора = Справочники.Номенклатура.НайтиПоНаименованию("Торговая деятельность");
|
|||
14
серый КТУЛХУ
15.07.21
✎
02:39
|
пробелы недопустимы в идентификаторах параметров запроса
"В ИЕРАРХИИ(&ТорговаяДеятельность)" Запрос.УстановитьПараметр("ТорговаяДеятельность",ГруппаВыбора) |
|||
15
Обработка
15.07.21
✎
06:15
|
(12) Вот зачем спрашивать когда можно попробовать. Тем более уже код готов.
|
|||
16
Jurest_
15.07.21
✎
14:52
|
(13) Большое спасибо. Сработало. Буду знать.
|
|||
17
Jurest_
15.07.21
✎
19:12
|
Возможно, кто то прочитает. Теперь пытаюсь добавить элемент в группу в справочнике Номенклатура.
НовыйТовар = Справочники.Номенклатура.СоздатьЭлемент(); НовыйТовар.Родитель = Справочники.Номенклатура.НайтиПоНаименованию(Строка(Товар.Группа)); ЗаполнитьЗначенияСвойств(НовыйТовар, Товар); //НовыйТовар.Заполнить(Товар); //НовыйТовар.Записать() Можно ли заполнить все поля через метод ЗаполнитьЗначенияСвойств(НовыйТовар, Товар), но тогда все записывается в корень. Можно ли как то добавить Родителя для этого элемента? Код, который я привожу не определяет Родителя. Но если записывать все поля по отдельности, например, НовыйТовар.Наименование = Товар.Наименование, то все работает. |
|||
18
vicof
15.07.21
✎
19:17
|
Сначала заполнитьзанчениясвойств, потом менять родителя.
|
|||
19
Jurest_
15.07.21
✎
19:22
|
(18) Спасибо, действительно работает. Хотя я так делал. Может просто не сохранил обработку, и поэтому подумал, что не работает. Спасибо!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |