![]() |
![]() |
![]() |
|
v8: Вывод в табличный документ | ☑ | ||
---|---|---|---|---|
0
Vasus55
31.01.12
✎
13:10
|
проблема такая,
есть ТП в него данные выгружаются запросом, есть кнопка печать, с помощью которой считываются данные с табличного поля и выводятся в ТабДок и затем печатаются делаю это так Организация=ЭлементыФормы.ТабличноеПоле1.ТекущиеДанные.Организация; Статусы=ЭлементыФормы.ТабличноеПоле1.ТекущиеДанные.Статус; Тип=ЭлементыФормы.ТабличноеПоле1.ТекущиеДанные.ОсновнойТипОрганизации; Телефон=ЭлементыФормы.ТабличноеПоле1.ТекущиеДанные.Телефон; Факс=ЭлементыФормы.ТабличноеПоле1.ТекущиеДанные.Факс; почта=ЭлементыФормы.ТабличноеПоле1.ТекущиеДанные.Email; сайт=ЭлементыФормы.ТабличноеПоле1.ТекущиеДанные.WebСайт; ТабДок = Новый ТабличныйДокумент; Секция = ТабДок.ПолучитьОбласть("R1"); ТабДок.НачатьАвтогруппировкуСтрок(); ТабДок.Вывести(Секция,1,"Группа",Истина); Итого = 0; ТабДок.Вывести(Секция,2,"Группа 1",Истина); Секция.Область("R1C1").Текст = "Статус"; Секция.Область("R1C2").Текст = "Организация"; Секция.Область("R1C3").Текст = "ТипОрганизации"; Секция.Область("R1C4").Текст = "Телефон"; Секция.Область("R1C5").Текст = "Факс"; Секция.Область("R1C6").Текст = "E-mail"; Секция.Область("R1C7").Текст = "Web сайт"; ТабДок.Вывести(Секция,2,"Группа 1",Истина); //Для К=1 По ЭлементыФормы.ТабличноеПоле1 Цикл Секция.Область("R1C1").Текст = Статусы; Секция.Область("R1C2").Текст = Организация; Секция.Область("R1C3").Текст = Тип; Секция.Область("R1C5").Текст =Телефон; Секция.Область("R1C6").Текст = Факс; Секция.Область("R1C7").Текст = почта; Секция.Область("R1C8").Текст = сайт; ТабДок.Вывести(Секция,1,"Группа",Истина); ТабДок.ЗакончитьАвтогруппировкуСтрок(); ТабДок.ИтогиСнизу = Истина; ТабДок.ОтображатьСетку = Ложь; ТабДок.Защита = Ложь; ТабДок.ТолькоПросмотр = Истина; ТабДок.Показать("Пример использования верт. автогруппировки"); ТабДок.Напечатать(РежимИспользованияДиалогаПечати.Использовать); проблема в том что выводится только первая строка, а как сделать чтобы все строки выводились??? |
|||
1
Wobland
31.01.12
✎
13:11
|
сделать вывод в цикле? код не открывал
|
|||
2
Wobland
31.01.12
✎
13:13
|
мда... секции в самом макете не назначить никак?
Область=Макет.ПолучитьОбласть("Строка"); Для Каждого ТекСтрока Из ИсточникДанных Цикл Область.Параметры.Заполнить(ТекСтрока); ТабДок.Вывести(Область); КонецЦикла; |
|||
3
Wobland
31.01.12
✎
13:15
|
специально для таких как ты я даже целую обработку писал. глянь http://ifolder.ru/28413294
|
|||
4
Vasus55
31.01.12
✎
13:21
|
спасибо, буду разбираться дальше)
|
|||
5
Vasus55
31.01.12
✎
13:23
|
а если печать идет с общей формы?
|
|||
6
Wobland
31.01.12
✎
13:23
|
(5) и что?
|
|||
7
Reset
31.01.12
✎
13:24
|
(1) Я открыл. Там действительно нет цикла и выводится только одна (текущая) строка.
|
|||
8
Wobland
31.01.12
✎
13:27
|
(7) но как тонко сработано, коллега!
|
|||
9
Vasus55
31.01.12
✎
13:43
|
а как можно в цикле заполнить данными, в данном случае
|
|||
10
Vasus55
31.01.12
✎
13:43
|
делал так, а дальше че писать не знаю
Для Каждого строка Из ТабличноеПоле1 Цикл |
|||
11
Wobland
31.01.12
✎
13:44
|
ТП с какими данными связано? вот их и перебирай
|
|||
12
Wobland
31.01.12
✎
13:44
|
и не называй переменную Строка. нужно ласково - Строчечка
|
|||
13
Fish
гуру
31.01.12
✎
13:45
|
(10) А дальше все твои действия по выводу одной строки и КонецЦикла :))))
|
|||
14
Vasus55
31.01.12
✎
13:49
|
Для Каждого стр Из ТабличноеПоле1
Цикл Секция.Область("R1C1").Текст = стр.Статус; Секция.Область("R1C2").Текст = стр.Организация; Секция.Область("R1C3").Текст = стр.ОсновнойТипОрганизации; Секция.Область("R1C4").Текст = стр.Телефон; Секция.Область("R1C5").Текст = стр.Факс; Секция.Область("R1C6").Текст = стр.Email; Секция.Область("R1C7").Текст = стр.WebСайт; КонецЦикла; пробывал так, но неверно, думаю потому что R1, надо чтобы она менялась |
|||
15
Wobland
31.01.12
✎
13:49
|
бовал. обработку открывал? смотрел там в макет?
|
|||
16
Fish
гуру
31.01.12
✎
13:52
|
(14) Ну если ты упорно не хочешь использовать области в макете, то меняй номер строки. Например так:
НомерСтроки = 1; Цикл Секция.Область("R" + НомерСтроки + "C1").Текст = стр.Статус; НомерСтроки = НомерСтроки+1; КонецЦикла; Но, ИМХО, это конечно изврат :))) |
|||
17
Reset
31.01.12
✎
14:41
|
Ёмаё
Секция.Область(НомерСтроки,НомерКолонки).Текст = "гхджгхдж"; |
|||
18
Reset
31.01.12
✎
14:41
|
ой некропостинг
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |