|
Выборка и вывод номенклатуры с учетом иерархии | ☑ | ||
|---|---|---|---|---|
|
0
Большое Пузо
21.04.09
✎
12:55
|
Собственно сабж, интересует пример чтобы разобраться как вывести к примеру справочник номенклатура с его иерархией, то есть чтобы можно было развернуть и свернуть, короче как во всех отчетах. Данные выводить как я понял надо в поле табличного документа а как выбрать и вывести придумать не могу, думаю лучшим вариантом будет простой пример.
Ут 10.3.3.3 платформа последняя. |
|||
|
1
IronDemon
21.04.09
✎
12:57
|
Конструктор выходной формы, в запросе итоги по иерархии.
|
|||
|
2
Aprobator
21.04.09
✎
13:15
|
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ | Номенклатура.Ссылка КАК Номенклатура |ИЗ | Справочник.Номенклатура КАК Номенклатура | |УПОРЯДОЧИТЬ ПО | Номенклатура ИЕРАРХИЯ |АВТОУПОРЯДОЧИВАНИЕ"; РезультатЗапроса = Запрос.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией); |
|||
|
3
Большое Пузо
21.04.09
✎
13:19
|
(2) Ну это выбрать
А как запихать все это в поле табличного документа? |
|||
|
4
Aprobator
21.04.09
✎
13:26
|
РезультатЗапроса - имя реквизита формы связанного с твоим табличным полем. Еще вроед у табличного поля есть свойство, которое позволяет выводите дерево значений.
|
|||
|
5
Aprobator
21.04.09
✎
13:29
|
+4 ТабличноеПоле, а не поле табличного документа. Тогда этот запрос выведет все врасиво.
|
|||
|
6
Aprobator
21.04.09
✎
13:31
|
а вывод в поле табличного документа придется прописывать ручками.
|
|||
|
7
Aprobator
21.04.09
✎
13:34
|
(+6) Все зависит от того для чего тебе это требуется.
|
|||
|
8
Большое Пузо
21.04.09
✎
13:36
|
(7) Это будет отчет, будет еще куча колонок, причем их количество будет изменяемое, ну к примеру (колонки Номенклатура и выбранные пользователем типы цен).
|
|||
|
9
Большое Пузо
21.04.09
✎
13:36
|
+7 Поэтому и поле табличного документа, чтобы сделать макет и заполнять
|
|||
|
10
Большое Пузо
21.04.09
✎
13:41
|
Не догоняю с выводом, желательно пример
|
|||
|
11
Большое Пузо
21.04.09
✎
13:47
|
и надо чтобы это все добро еще сворачивалось по группам
|
|||
|
12
Aprobator
21.04.09
✎
13:48
|
ты отчет без использования СКД пишешь?
|
|||
|
13
Большое Пузо
21.04.09
✎
13:53
|
(12) что такое СКД?
|
|||
|
14
Большое Пузо
21.04.09
✎
13:54
|
предполагаю что Система компоновки данных
|
|||
|
15
ZZeRRo
21.04.09
✎
14:34
|
Что то вроде того:
РЗ = Запрос.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией) НачатьАвтогруппировкуСтрок(); Для каждого Стр1 из РЗ.Строки Цикл Обл.Параметры.Заполнить(Стр1); ТабДок.Вывести(Обл,1); Для каждого Стр2 из Стр1.Строки Цикл Обл.Параметры.Заполнить(Стр2); ТабДок.Вывести(Обл,2); КонецЦикла; КонецЦикла; ЗакончитьАвтогруппировкуСтрок() |
|||
|
16
Большое Пузо
28.04.09
✎
21:18
|
(15) Ну это для глубины 2, а если она не ограниченна?
|
|||
|
17
ZZeRRo
29.04.09
✎
10:00
|
в параметр i в ТабДок.Вывести(Обл,i) передавай нужную "глубину"
|
|||
|
18
svent0vit
29.04.09
✎
10:09
|
ТабДок.НачатьАвтогруппировкуСтрок();
ВыборкаДетали = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией); Пока ВыборкаДетали.Следующий() Цикл ВыборкаРезультат = ВыборкаДетали.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией); Пока ВыборкаРезультат.Следующий() Цикл Если ВыборкаРезультат.Результат <> "ПУСТО" Тогда ОбластьРезультат.Параметры.Результат = ВыборкаРезультат.Результат; ТабДок.Вывести(ОбластьРезультат, ВыборкаРезультат.Уровень(),,Истина); КонецЕсли; КонецЦикла; ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетали); ТабДок.Вывести(ОбластьДетальныхЗаписей, ВыборкаДетали.Уровень()); КонецЦикла; ТабДок.ЗакончитьАвтогруппировкуСтрок(); |
|||
|
19
svent0vit
29.04.09
✎
10:10
|
ну это "Если ВыборкаРезультат.Результат <> "ПУСТО" Тогда" - конечно вам не нужно
|
|||
|
20
svent0vit
29.04.09
✎
10:11
|
(12), как только в СКД появится возможность рулить группировками, тада и будем такие отчеты писать в ней
|
|||
|
21
Большое Пузо
04.05.09
✎
13:37
|
(18) Спасибо. Но если сказать честно, то совсем ничего не понял.
Если кому не тяжело киньте рабочий примерчик в мыло, так мне будет проще разобраться. мыло bolshoe_puzo(на)ngs.ru |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |