|
Как перебрать в цикле значения областей табДок из СКД |
☑ |
0
oleg_prg
26.01.14
✎
17:37
|
Уважаемые форумчане, доброго времени суток.
Задача - создать отчет на скд, в отчете сделать кнопку рассылка на почту. При нажатии на кнопку должна произойти рассылка на mail контрагентам попавшим в отчет.
Вопрос - как достучаться до выведенных данных в табличный документ Результат? (отчет сделан (схема компоновки данных + форма с выводом), заготовка для рассылки есть, а вот с получением данных из результата беда...)
Заранее спасибо!
|
|
1
Yea-Yea
26.01.14
✎
17:39
|
либо программно сфомировать и сохранить результат, либо сохранить уже сформированный табличный документ и отправить
|
|
2
oleg_prg
26.01.14
✎
17:41
|
В табличном документе будет список контрагентов и прочего, надо как-то этих контрагентов отловить, неужели это нереально...
|
|
3
Yea-Yea
26.01.14
✎
17:41
|
(2) че?
|
|
4
oleg_prg
26.01.14
✎
17:49
|
Может как-то вот так можно перебрать значения Результат.Области.Найти("R14C4") ???
|
|
5
zippygrill
26.01.14
✎
17:57
|
вычисляешь общее количество строк ТабДока, потом шапку, потом Итоги, остальное данные :)
|
|
6
oleg_prg
26.01.14
✎
19:35
|
Неужели ни кто не знает? Как считать данные из выведенного табличного документа? Может я непонятно описал ситуацию
&НаСервере
Функция СКДПрограммно()
Схема = Отчеты.АнализОбращений.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
Настройки = Новый КомпоновщикМакетаКомпоновкиДанных;
КомпоновщикМакета = новый КомпоновщикМакетаКомпоновкиДанных;
Макет = КомпоновщикМакета.Выполнить(Схема, Отчет.КомпоновщикНастроек.Настройки);
ПроцессорКомпоновки = новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновки.Инициализировать(Макет);
ПроцессорВывода = новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ТабДок = Новый ТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ТабДок);
ПроцессорВывода.Вывести(ПроцессорКомпоновки);
//Здесь как-то надо считать все данные которые были выведены в ТабДок - как это сделать?
Возврат ТабДок;
КонецФункции
//********************************************************************
&НаКлиенте
Процедура СформироватьОтчет(Команда)
ТД = СКДПрограммно();
КонецПроцедуры
|
|
7
echo77
26.01.14
✎
19:38
|
На хера из табличного документа? СКД может результат в таблицу значений компоновать
|
|
8
oleg_prg
26.01.14
✎
19:39
|
ПОЖАЛУЙСТА не спрашивайте нахера и т.д. киньте кодом плиз, я зае...ся уже с этой задачей. Крик души!
|
|
9
echo77
26.01.14
✎
19:47
|
Для row=1 по табдок.высотаттаблицы() цикл
Для кол=1 по табдок.ширинатаблицы цикл
Ячейка = табдок.область(row, col)
Массиврасшифровок =Типовыеотчеты.получитьмассиврасшифровок(ячейка, данныерпасшифровки)
Как-то так
|
|
10
oleg_prg
26.01.14
✎
20:04
|
(9) Спасибо!!! То что надо! Я делал ТабДок.Области.Поиск("R1C1 и т.д.") не работает, а табдок.область(row, col) все ок!!!
Еще раз спасибо!
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший