Доступ к отрендереным данным отчета, вызов события для обработки этих данных

Обсуждение Stimulsoft Reports.NET
Ответить
asylum17
Сообщения: 5
Зарегистрирован: 31 авг 2011, 11:45

Доступ к отрендереным данным отчета, вызов события для обработки этих данных

Сообщение asylum17 »

Добрый день можно ли получить доступ в отчете к отрендеренным данным.

Например есть датасет operation по которому формируются несколько страниц отчета,
на каждой странице размещается компонет типа текст, с событием нажатие,
по событию происходит вызов функции со слеюущим содержимым

main.ExecQuery(Operations.GroupCode,Operations.IDOperation,2,1,999,"",Operations.idgroup,Operations.idgood,"*"+ this.PageNumber.ToString());

где main.stisExecQuery собственная сборка

после построения отчета при просмотре, при выборе любой страницы, и при "щелчке" мыши на компоненте с событием
в Operations.* содержатся всегда последняя строка с данными из датасета
а в this.PageNumber.ToString() всегда номер страницы равен 1

как получить доступ к данным на странице, ведь в excel и др. форматы данные экспортировать можно, следовательно они где то храняться
HighAley
Сообщения: 1998
Зарегистрирован: 08 июн 2011, 11:36
Откуда: Stimulsoft Office

Доступ к отрендереным данным отчета, вызов события для обработки этих данных

Сообщение HighAley »

Здравствуйте.

1. В сгенерированном отчёте данные о сроке не храняться. Но получить необходимую информацию можно следующим способом. В свойство Tag записать ключевое значение записи, и потом получить значение тэга.

Код: Выделить всё

(sender as StiText).TagValue
2. Номер страницы можно получить с помощью следующего кода:

Код: Выделить всё

(this.RenderedPages.IndexOf((sender as StiComponent).Page) + 1).ToString()
Смотрите свойство Tag и событие Click компонента Text4 в приложенном отчёте.

Спасибо.
Вложения
SimpleList.mrt
(24 КБ) 305 скачиваний
asylum17
Сообщения: 5
Зарегистрирован: 31 авг 2011, 11:45

Доступ к отрендереным данным отчета, вызов события для обработки этих данных

Сообщение asylum17 »

Спасибо.

С номером страницы всё получилось, но со значением поля, типа текст, возникли проблемы,

MessageBox.Show((sender as StiText).TagValue as string );
c примером при "щелчке" мышью на полю, с вызовом события, возвращается пустое значение.
пробовал получить доступ к данным по другому, в результате получилось следующие
this.GroupHeaderBand3.Components["Text8"].Tag
для компонента, где значение подставляется из датасета, TagValue=NULL (тип компонента Object)
this.DataBand1.Components["Text16"].Tag.Value
текст 16 это просто статичный текст, в результате this.DataBand1.Components["Text16"].Tag.Value="" (тип компонента String)

то есть получить значение отрендеренных данных у меня пока не получается, скажите, что делаю не верно.


!!!! и я не совсем понимаю выражение

"В свойство Tag записать ключевое значение записи"

наверное в этом проблема
asylum17
Сообщения: 5
Зарегистрирован: 31 авг 2011, 11:45

Доступ к отрендереным данным отчета, вызов события для обработки этих данных

Сообщение asylum17 »

Всем спасибо разобрался.
Нужно делать так:
MessageBox.Show((sender as StiText).TagValue.ToString());
и я ещё пытался сразу показать несколько объектов типа
Задание {Operations.GroupCode} ПускЧасть {Operations.ThreadName}
естественно это не отработало

Что бы получить требуемое значения для построенного отчета, его нужно помещать вот сюда
Взаимодействие->Таг
либо

Intercations->Tag

тема закрыта
Andrew
Сообщения: 586
Зарегистрирован: 09 июн 2006, 12:22

Доступ к отрендереным данным отчета, вызов события для обработки этих данных

Сообщение Andrew »

Здравствуйте.

Отлично!
Ответить