Имя: Пароль:
1C
1С v8
Рисунки в области табличного документа
,
0 satoru
 
26.12.22
13:29
Добрый день.
Есть ли возможность получить список рисунков табличного документа если известна область табличного документа.
Например: на табличном документе выведены 5 диаграмм разного размера (высота табл. документа = 240) и нам необходимо знать сколько рисунков (диаграмм) находится между строками 60 - 90.

Версия 8.3.12
1 Kassern
 
26.12.22
13:30
(0) Получить область, а потом глянуть ТекОбласть.Рисунки в отладке.
2 Asmody
 
26.12.22
13:30
ТабличныйДокумент.Рисунки
У РисунокТабличногоДокумента есть Верх, Низ
3 satoru
 
26.12.22
13:31
(1) Нет такого атрибута у области табличного документа.
4 Kassern
 
26.12.22
13:33
(3) Как это нет?
Область=Макет.ПолучитьОбласть("ИмяОбласти");

Рисунок=Область.Рисунки.ИмяРисунка;
5 satoru
 
26.12.22
13:33
(2) К сожалению верх и низ в миллиметрах, а мне желательно номер строки и колонки табличного документа.
6 Asmody
 
26.12.22
13:34
(5) может ещё за тебя код написать?0
7 satoru
 
26.12.22
13:35
(4) В отладчике смотрел + СП смотрел. Нет такого атрибута. У вас какая платформа?
8 satoru
 
26.12.22
13:36
(6) Было бы не плохо, но пожалуй нет.
9 Kassern
 
26.12.22
13:37
(7) Не посмотрел, что вам в ТД надо. У макета есть такое свойство.
10 satoru
 
26.12.22
13:38
(2) Выходит только привязаться к координатам рисунка и размерам ячеек.
11 mistеr
 
26.12.22
13:38
(5) Рисунки не в ячейках находятся, а в отдельном слое.

Можно использовать такой хак. Создать рисунок, разместить его в границах ячейки или области, считать координаты.
12 Asmody
 
26.12.22
13:39
(7) плохо смотрел. подсказка: область можно еще получить. и её можно получить по координатам как таб.док
13 satoru
 
26.12.22
13:39
(9) Попробую покапать в этом направлении. Спасибо за идею.
14 satoru
 
26.12.22
13:40
(12) Спасибо за подсказку. Посмотрю.
15 Kassern
 
26.12.22
13:40
А что если сохранить табдок в xlsx и пропарсить архив?) Там скорее всего картинки будут в отдельной папочке с xml привязкой)
16 Asmody
 
26.12.22
13:41
(15) а может скриншот программно сделать и нейронкой обработать картинку?
17 Kassern
 
26.12.22
13:42
(16) Тоже вариант, написать на питоне скрипт не проблема)
18 RomanYS
 
26.12.22
13:44
(15) зачем ты его путаешь? В (4) же всё правильно написал, ПолучитьОбласть возвращает ТабДок и у него своя коллекция рисунков
19 Kassern
 
26.12.22
13:45
(18) Ну вот ТС заявляет, что у него данного свойства нет, поэтому пускай любится)
20 RomanYS
 
26.12.22
13:48
(19) Так любиться не только ТС будет :(
(7) Посмотри и осознай разницу методов Область() и ПолучитьОбласть()
21 satoru
 
26.12.22
14:57
Через ПолучитьОбласть() все получается. Всем спасибо за помощь!
22 satoru
 
27.12.22
11:21
По поводу метода ПолучитьОбласть() - учитывайте, что выбирая разные диапазоны ячеек - имена рисунков каждый раз будут заполняться заново.
Например:
На табличном документе выведены 5 диаграмм (D1-D5). Выбрав диапазон с 3 по 5 диаграммы мы получим имена - D1-D3, а не D3-D5.
Платформа: 8.3.12
23 RomanYS
 
27.12.22
11:24
(22) вроде как это должно быть очевидным, если осознать что ПолучитьОбласть() возвращает новый ТД
24 arsik
 
гуру
27.12.22
11:27
(22) Задай имя диаграммам в табличном документе, тогда имена всегда будут одинаковые.
25 satoru
 
27.12.22
11:30
(24) А если это СКД и у тебя много диаграмм привязанных к группировкам, скажем по справочнику "Номенклатура", и их количество может быть разным в зависимости от выборки?