|
Как создать ПрайсЛист с иерархией? | ☑ | ||
---|---|---|---|---|
0
GreenDay1986
21.09.11
✎
12:22
|
Делаю Прайс. Программно выгружается в эксель, рассчитываются формулы. Одна беда. Не знаю как сделать иерархию. Допустим
- одеколоны 1 2 - лосьоны 1 2 Нужно скомпоновать в группы, чтоб открывались, сворачивались |
|||
1
ботаникус
21.09.11
✎
12:47
|
если память не изменяет пишется что-то типа rows().group()
|
|||
2
ботаникус
21.09.11
✎
12:47
|
+ сделай макрос и посмотри
|
|||
3
Alex S D
21.09.11
✎
12:48
|
Лист.Range(ТвойДиапазон).Group();
|
|||
4
GreenDay1986
21.09.11
✎
13:26
|
Дело в том что количество номенклатуры не постоянно. Мне нужно как раз поимать этот диапазон.
|
|||
5
GreenDay1986
26.09.11
✎
10:27
|
Док.НачатьАвтогруппировкуСтрок();
ВыборкаГруппа = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаГруппа.Следующий() Цикл Если ВыборкаГруппа.ТипЗаписи() = ТипЗаписиЗапроса.ИтогПоИерархии Тогда Область = ОбластьГруппаИерархия; Иначе Область = ОбластьГруппа; КонецЕсли; Область.Параметры.Заполнить(ВыборкаГруппа); Док.Вывести(Область,ВыборкаГруппа.Уровень()); ВыборкаСтрока = ВыборкаГруппа.Выбрать(); Пока ВыборкаСтрока.Следующий()Цикл ОбластьСтрока.Параметры.Заполнить(ВыборкаСтрока); Док.Вывести(ОбластьСтрока,ВыборкаСтрока.Уровень(),,Ложь); КонецЦикла; КонецЦикла; Док.ЗакончитьАвтогруппировкуСтрок(); |
|||
6
Megas
26.09.11
✎
10:29
|
А нельзя всё сделать в 1с , а потом в Эксель сохранить?
|
|||
7
Megas
26.09.11
✎
10:29
|
(6) + Сделать это в СКД или Построителе отчета.
|
|||
8
GreenDay1986
26.09.11
✎
12:06
|
Так все работает, решил данным образом. Делаем в 1с группировки, потом выгружаем в ексель. Полностью программно делаю.
Сохранение Док.Записать("C:\ПрайсЛистХБС.xls",ТипФайлаТабличногоДокумента.XLS); КоличествоСтрок = ВыборкаСтрока.Количество(); Попытка Таблица = Новый COMОбъект("Excel.Application") ; Книга = Таблица.Workbooks.Open("C:\ПрайсЛистХБС.xls"); Исключение Предупреждение(ОписаниеОшибки()+"Не удалось сформировать обьект"); КонецПопытки; Лист = Книга.WorkSheets(1); Лист.Range("I9:"+"I"+строка(ФОРМАТ(КоличествоСтрок+7,"ЧГ="))).FormulaR1C1 = "=RC[-5]*RC[-3]*RC[-2]+RC[-1]*RC[-3]" ; Лист.Cells(3,6).FormulaR1C1 = "=SUM(R[6]C[3]:R["+строка(ФОРМАТ(КоличествоСтрок+7,"ЧГ="))+"]C[3])"; |
|||
9
Megas
26.09.11
✎
14:13
|
(8) Извращенец. Удобно штаны через голову одевать?
|
|||
10
GreenDay1986
26.09.11
✎
15:52
|
Нормуль, совершентствуем навыки программирования. А вот Родители группп в файле ексель что-то не выводятся :(
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |