![]() |
|
v7: Помогите нарисовать таблицу. | ☑ | ||
---|---|---|---|---|
0
sysadminlk
18.04.13
✎
20:46
|
Есть таблица значений
ТабПодготовки = СоздатьОбъект("ТаблицаЗначений"); ТабПодготовки.НоваяКолонка("Покупатель"); ТабПодготовки.НоваяКолонка("Товар"); ТабПодготовки.НоваяКолонка("Сумма"); ТабПодготовки.НоваяКолонка("Колво"); ТабПодготовки.ВыбратьСтроки(); Пока ТабПодготовки.ПолучитьСтроку() = 1 Цикл Сообщить(""+ТабПодготовки.Покупатель+" - "+ТабПодготовки.Сумма+" - "+ТабПодготовки.Колво+" - "+ТабПодготовки.Товар+""); КонецЦикла; Выводит: Абрамович - 48 - 1 - Муфта 5698 Покупатель первый - 48 - 1 - Муфта 5698 Маг.Драндулет - 11136.36 - 100 - Синтетика 1 кат Маг.Каныкей - 11136.36 - 100 - Синтетика 1 кат Маг.Субару - 11136.36 - 100 - Синтетика 1 кат Маг.Субару - 11136.37 - 100 - Синтетика 1 кат Маг.Драндулет - 8909.09 - 100 - Синтетика 2 кат Маг.Каныкей - 8909.09 - 100 - Синтетика 2 кат Маг.Субару - 8909.09 - 100 - Синтетика 2 кат Маг.Субару - 8909.09 - 100 - Синтетика 2 кат Маг.Драндулет - 5568.18 - 100 - Синтетика 3 кат Маг.Каныкей - 5568.18 - 100 - Синтетика 3 кат Маг.Субару - 5568.18 - 100 - Синтетика 3 кат Маг.Субару - 5568.18 - 100 - Синтетика 3 кат Абрамович - 24 - 1 - Шприц селекона Как вывести в печатную форму: ТабПеч = СоздатьОбъект("Таблица"); ТабПеч.ИсходнаяТаблица("Таблица"); ТабПеч.ВывестиСекцию(); ТабПеч.ТолькоПросмотр(1); ТабПеч.Показать(); В таком формате: Т Покупатель Покупатель Покупатель и.т.д. Товар Колво Колво Колво и т.д. итого Товар Колво Колво Колво и т.д. итого Товар Колво Колво Колво и т.д. итого |
|||
1
Эльниньо
18.04.13
✎
21:18
|
Можно так:
ТабПодготовки.Выгрузить(ТабПокупателей); ТабПокупателей.Свернуть("Покупатель",); //.... можно и по другому. |
|||
2
sysadminlk
18.04.13
✎
21:38
|
Не знаю правильно или нет, но то что написал выводит вроде нормально. Кто что скажет?
Главная.Выгрузить(Клиенты); Клиенты.Свернуть("Покупатель","Колво"); Главная.Выгрузить(Тов); Тов.Свернуть("Товар","Колво"); ТабПеч = СоздатьОбъект("Таблица"); ТабПеч.ИсходнаяТаблица("Таблица"); ТабПеч.ВывестиСекцию("Шапка|Товар"); Клиенты.ВыбратьСтроки(); Пока Клиенты.ПолучитьСтроку() = 1 Цикл ТабПеч.ПрисоединитьСекцию("Шапка|Покуп"); КонецЦикла; Тов.ВыбратьСтроки(); Пока Тов.ПолучитьСтроку() = 1 Цикл ТабПеч.ВывестиСекцию("Тов|Товар"); Клиенты.ВыбратьСтроки(); Пока Клиенты.ПолучитьСтроку() = 1 Цикл Колво = ""; Главная.ВыбратьСтроки(); Пока Главная.ПолучитьСтроку() = 1 Цикл Если (Главная.Покупатель = Клиенты.Покупатель) и (Главная.Товар = Тов.Товар) Тогда Колво = Главная.Колво; КонецЕсли; КонецЦикла; ТабПеч.ПрисоединитьСекцию("Тов|Покуп"); КонецЦикла; КонецЦикла; ТабПеч.ТолькоПросмотр(1); ТабПеч.Показать(); |
|||
3
Эльниньо
18.04.13
✎
22:20
|
Перемудрил.
|
|||
4
Эльниньо
18.04.13
✎
23:44
|
Завтра на свежую голову выкинешь 2/3 лишнего кода и всё будет норм.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |