|
v7: Как перебрать столбцы табличной части документа | ☑ | ||
---|---|---|---|---|
0
ogion83
17.11.14
✎
14:37
|
Народ, подскажите как перебрать столбцы табличной части документа или Таблицы значений.
|
|||
1
vicof
17.11.14
✎
14:38
|
Циклом
|
|||
2
ogion83
17.11.14
✎
14:38
|
(1) Само собой. А подробней?
|
|||
3
Euguln
17.11.14
✎
14:39
|
(0) Где?
|
|||
4
ogion83
17.11.14
✎
14:39
|
в 1С 7.7
|
|||
5
Euguln
17.11.14
✎
14:43
|
(4) А зачем?
|
|||
6
varelchik
17.11.14
✎
14:43
|
ТЗ Для н=1 по ТЗ.КОличествоКолонок().
а вот для документа сложнее. Те надо визульные колонки или на форме? |
|||
7
Heckfy
17.11.14
✎
14:43
|
(5) Транспонировать собрался :)
|
|||
8
varelchik
17.11.14
✎
14:43
|
(5) за шкафом.
Ну надо челу. |
|||
9
Euguln
17.11.14
✎
14:45
|
(8) А может ему на самом деле это не надо.
|
|||
10
ogion83
17.11.14
✎
14:45
|
(6)А наименование колонки получить можно?
|
|||
11
Euguln
17.11.14
✎
14:46
|
(10) Выгружаешь табличную часть в ТЗ и
ПолучитьПараметрыКолонки(<?>,,,,,,,); Синтаксис: ПолучитьПараметрыКолонки(<Колонка>,<Тип>,<Длина>,<Точность>,<Заголовок>,<Ширина>,<Формат>,<Положение>) Назначение: Получить значения параметров колонки. Возвращает номер или код колонки. Если в параметре <Колонка> задан номер колонки, то возвращается код колонки, и наоборот. |
|||
12
varelchik
17.11.14
✎
15:10
|
(11) зачем?
Для н =1 по МЕтаданные.Документ(Док.Вид()).РеквизитТабличнойЧасти() Цикл а вот с формой сложней. тут уже формекс нужен. |
|||
13
ogion83
17.11.14
✎
15:31
|
(12) А тут как сам столбец получить?
|
|||
14
ogion83
17.11.14
✎
15:35
|
(11)Не выдает наименование
|
|||
15
varelchik
17.11.14
✎
15:36
|
ИмяКолонки=МЕтаданные.Документ(Док.Вид()).РеквизитТабличнойЧасти(н).Идентификатор
|
|||
16
varelchik
17.11.14
✎
15:41
|
(11) не очень оригинальное решение.
Это если строк 100 а если их 10000 да и колонок немерено? Этож скоко будет ВыгрузитьТабличнуюЧасть()? |
|||
17
ogion83
17.11.14
✎
15:59
|
(15) Идентификаторы у меня ст1,ст2 и т.д. А нужно заголовки столбцов ещё получить
|
|||
18
ogion83
17.11.14
✎
16:01
|
Надо как то к форме получается обратиться?
|
|||
19
varelchik
17.11.14
✎
16:14
|
(18) тут дело сложней.
к Атрибуту формы |
|||
20
varelchik
17.11.14
✎
16:15
|
но это тож ниче недаст.
надо извращаться. |
|||
21
varelchik
17.11.14
✎
16:15
|
может ActiveMD поможет.
надо пробовать. |
|||
22
varelchik
17.11.14
✎
16:20
|
+(21) ниче пока дельного в голову не лезет.
Вот подожди Епрст придет мож он че подскажеть. |
|||
23
ogion83
17.11.14
✎
16:41
|
(22)Ок)
|
|||
24
Ёпрст
17.11.14
✎
16:59
|
(0)
Если без учета текстовых колонок, то так, например: Для к = 1 По Метаданные.Документ("Реализация").РеквизитТабличнойЧасти() Цикл Ид = Метаданные.Документ("Реализация").РеквизитТабличнойЧасти(к).Идентификатор; Попытка Атр = Форма.ПолучитьАтрибут(Ид); Сообщить("идентификатор:"+Ид+", заголовок:"+Атр.Заголовок()); Исключение Сообщить("идентификатора:"+Ид+" нет на форме"); КонецПопытки; КонецЦикла; Если нужны и текстовые колонки, то либо формексом получить всё, либо эммулировать нажатие Tab с помощью сендкей, если религия не позволяет формекс пользовать |
|||
25
ogion83
17.11.14
✎
17:00
|
Попробуем
|
|||
26
Ёпрст
17.11.14
✎
17:02
|
Ну и .. этот код будет работать, только в открытой форме документа, если че..
|
|||
27
Иоканаан
17.11.14
✎
17:20
|
(16) Если строк будет 10 000 - тогда при любой обработке табличной части документа работать будет медленно и печально. А форма документа будет открываться значительно дольше, чем совершится выгрузка табличной части в ТЗ.
(17) Есть такой метод элемента диалога "Заголовок". Использовать примерно так: Форма.Ст1.Заголовок(); Если в скобках ничего не указано - возвращает текущий заголовок столбца с идентификатором Ст1. Если в скобках ввести строковое выражение - оно будет установлено в качестве заголовка столбца. |
|||
28
ogion83
18.11.14
✎
11:03
|
(24) и (27)
Благодарствую народ. Форма.ПолучитьАтрибут("Ст1").Заголовок() Вот так работает |
|||
29
varelchik
18.11.14
✎
13:31
|
(24) зы.
А вот про попытку я как-то забыл. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |