|
Работа с макетом | ☑ | ||
---|---|---|---|---|
0
Ly_Alena
23.04.15
✎
11:32
|
Добрый день! Извиняюсь - сто раз - возможно вопрос простой. Задача следующая: в макете есть много столбцов, но выводить мне нужно только те, что заполнены. Но не просто выводить, а со сдвигом к заполненному столбцу.
Пишу так: Если НЕ ЗначениеЗаполнено(ДетальнаяВыборкаБрака.КоличествоИзделий) Тогда ОбластьМакета.Область("КоличествоИзделий").Видимость = Ложь Иначе ОбластьМакета.Параметры.КоличествоИзделий = ДетальнаяВыборкаБрака.КоличествоИзделий; КонецЕсли; Столбец не выводит - но не выводит там где он в макете. ТО есть если до него столбцы тоже пустые, то в поле одинокий столбец будет стоять с данными. И наоборот, если все заполнено а он нет - то будет пустое место в теле таблицы. Каксделать, чтобы он сдвигался к заполненному? |
|||
1
Рэйв
23.04.15
✎
11:35
|
Придется тебе открывать для себя метод таб дока .Присоединить() и адресацию областей по двум измерениям:-) секции
|
|||
2
Ly_Alena
23.04.15
✎
11:47
|
(1) Спасибо, сейчас поищу примеры.
|
|||
3
Рэйв
23.04.15
✎
11:49
|
Пример:
ТабДок = Новый ТабличныйДокумент; Секция = ТабДок.ПолучитьОбласть("R1C1"); ТабДок.НачатьАвтогруппировкуКолонок(); Секция.Область("R1C1").Текст = "Параметр"; ТабДок.Вывести(Секция,1,"Группа 1",Ложь); Для К=1 По 10 Цикл Секция = ТабДок.ПолучитьОбласть("R1C1"); Секция.Область().Текст = "А"+К; Секция.Область().ГоризонтальноеПоложение = ГоризонтальноеПоложение.Право; ТабДок.Присоединить(Секция,2,"Группа 2",Истина); КонецЦикла; Секция.Область("R1C1").Текст = "Итого:"; ТабДок.Присоединить(Секция,1,"Группа 2",Ложь); Секция.Область("R1C1").Текст = "Значение"; ТабДок.Вывести(Секция,1,"Группа 2",Ложь); Цена = 10; Итог = Цена; Для К=1 По 10 Цикл Секция = ТабДок.ПолучитьОбласть("R1C1"); Секция.Область().Текст = Цена; ТабДок.Присоединить(Секция,2,"Группа 2",Истина); Цена = Цена + 10; Итог = Итог + Цена; КонецЦикла; Секция.Область("R1C1").Текст = Итог; ТабДок.Присоединить(Секция,1,"Группа 2",Ложь); ТабДок.ЗакончитьАвтогруппировкуКолонок(); ТабДок.ИтогиСправа = Истина; ТабДок.ОтображатьСетку = Ложь; ТабДок.Защита = Ложь; ТабДок.ТолькоПросмотр = Истина; ТабДок.Показать("Пример использования гор. автогруппировки"); (С)СП :-) |
|||
4
Ly_Alena
23.04.15
✎
13:06
|
(3) Огооо, огромное спасибо!
|
|||
5
Ly_Alena
23.04.15
✎
14:00
|
(3) Я правильно понимаю, что каждую ячейку нужно будет форматировать в ручную, шрифт, рамки, выравнивание?
|
|||
6
Рэйв
23.04.15
✎
14:12
|
(5)Да нет.Как нарисуешь
Там же вместо нотации "RxCx" Можно и имена использовать горизонтальных и вертикальных секций |
|||
7
Ly_Alena
24.04.15
✎
06:52
|
(6) Уф, спасибо
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |