|
Сгруппировать по изделию | ☑ | ||
---|---|---|---|---|
0
Gossar1C
21.05.13
✎
15:43
|
Добрый день. Подскажите как программно сгруппировать строчки в табдоке по изделию? тоесть есть:
Изделие Комплектация Количество Упаковка Трансф. Гайка 3 шт Трансф. Шуруп 3 шт Трансф. Провод 3 м Транс.BH Гайка 4 шт Транс.BH Молоток 4 шт надо: Изделие Комплектация Количество Упаковка Трансф. Гайка 3 шт Шуруп 3 шт Провод 3 м Транс.BH Гайка 4 шт Молоток 4 шт подскажите пожалуйста, вот код... // Процедура заполняет табличный документ комплектации. // Процедура ЗаполнитьТабличныйДокументКомплектация(ТабличныйДокумент, ДанныеДляПечати, ОбъектыПечати, Тип) Экспорт // ТаблицаКомплектующих = ДанныеДляПечати.РезультатПоТабличнойЧасти.Выбрать(); Макет = УправлениеПечатью.ПолучитьМакет("Обработка.ПечатьСчетовНаОплату.ПФ_MXL_Комплектация"); ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок"); ОбластьШапка = Макет.ПолучитьОбласть("Шапка"); ОбластьИзделие = Макет.ПолучитьОбласть("Данные"); ОбластьКомплект = Макет.ПолучитьОбласть("Комплект"); ТабличныйДокумент.Вывести(ОбластьЗаголовок); ТабличныйДокумент.Вывести(ОбластьШапка); Пока ТаблицаКомплектующих.Следующий() Цикл ОбластьКомплект.Параметры.Заполнить(ТаблицаКомплектующих); ТабличныйДокумент.Вывести(ОбластьКомплект,ТаблицаКомплектующих.Уровень()); КонецЦикла; КонецПроцедуры //ЗаполнитьТабличныйДокументКомплектация |
|||
1
kosts
21.05.13
✎
15:46
|
(0) Можно переделать твой вывод (если не типовой).
Запрос с итогами и т.д. Но можно тут добавить сортировку и если пред наименование отличается от следующего, то выводить новую группу. |
|||
2
Gossar1C
21.05.13
✎
15:48
|
(1) как раз встраиваю в обработку вывода печатных форм) а как проверить что изделие отличается от предыдущего?
|
|||
3
Gossar1C
21.05.13
✎
15:50
|
пробовал через ТабДок.Вывести("ИмяОбласти").Сгруппировать() но нннет...
|
|||
4
kosts
21.05.13
✎
15:52
|
Как-то так. Таким образом давно уже делал, мог и забыть что-то
|
|||
5
Gossar1C
21.05.13
✎
15:56
|
(4) муторно как то... ладно буду пробовать, спасибо
|
|||
6
kosts
21.05.13
✎
15:59
|
(2) Если запрос сам пишешь, то сделай через итоги, получишь дерево.
|
|||
7
Gossar1C
21.05.13
✎
16:05
|
(6) не совсем понимаю с обработкой результата?
|
|||
8
kosts
21.05.13
✎
16:09
|
(7) Выборку от строки выборки и всё
|
|||
9
Gossar1C
21.05.13
✎
16:10
|
(8) вообщеем сделал так)
Процедура ЗаполнитьТабличныйДокументКомплектация(ТабличныйДокумент, ДанныеДляПечати, ОбъектыПечати, Тип) Экспорт // ТаблицаКомплектующих = ДанныеДляПечати.РезультатПоТабличнойЧасти.Выбрать(); Макет = УправлениеПечатью.ПолучитьМакет("Обработка.ПечатьСчетовНаОплату.ПФ_MXL_Комплектация"); ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок"); ОбластьШапка = Макет.ПолучитьОбласть("Шапка"); ОбластьИзделие = Макет.ПолучитьОбласть("Данные"); ОбластьКомплект = Макет.ПолучитьОбласть("Комплект"); ТабличныйДокумент.Вывести(ОбластьЗаголовок); ТабличныйДокумент.Вывести(ОбластьШапка); Последнее = ""; Пока ТаблицаКомплектующих.Следующий() Цикл Если Последнее <> ТаблицаКомплектующих.Изделие.Наименование Тогда ОбластьИзделие.Параметры.Заполнить(ТаблицаКомплектующих); ТабличныйДокумент.Вывести(ОбластьИзделие,ТаблицаКомплектующих.Уровень()); Последнее = ТаблицаКомплектующих.Изделие.Наименование; КонецЕсли; ОбластьКомплект.Параметры.Заполнить(ТаблицаКомплектующих); ТабличныйДокумент.Вывести(ОбластьКомплект,ТаблицаКомплектующих.Уровень()); КонецЦикла; КонецПроцедуры //ЗаполнитьТабличныйДокументКомплектация |
|||
10
kosts
21.05.13
✎
16:12
|
(9) Сортировку не забудь, а то будут сюрпризы...
|
|||
11
Gossar1C
21.05.13
✎
16:15
|
(9) угу поставил, спасибо
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |