2016-12-18 9 views
0

Я работаю над проектом C#. Я использовал stimulsoft для создания и отображения отчета в моем проекте. Я разрабатываю свой отчет в программном обеспечении stimulsoft и сохраняю файл своего отчета в пути ... \ bin \ debug \ reports.C# как отфильтровать отчет stimulsoft программно?

это мой дизайн отчета:

enter image description here

этот отчет показывает пользователей системы.

Теперь я хочу отфильтровать свой отчет в C#. как я могу отправить формулу для фильтрации результата моего отчета?

это мой код, чтобы показать отчет:

StiReport report = new StiReport(); 
     report.Load(System.AppDomain.CurrentDomain.BaseDirectory + "\\reports\\userinfo.mrt"); 
     report.Show(); 
+0

Ваш вопрос не содержит некоторых важных сведений. Во-первых, какую версию Stimulsoft вы используете? (WPF, WinForms, ASP.NET или ...) Во-вторых, какой источник вы используете для своих данных? (DataSource, BusinessObjects или ...) – Steve

+0

@Steve я использовал WinForms и EntityFramework – saeed

+0

Нет, я спрашиваю о выборе DataSource/BusinessObject, выполненном внутри конструктора отчетов, для создания Словаря, используемого для подготовки полей отчета. – Steve

ответ

0

Этот пример частично взят из своего файла Stimulsoft_NET_FAQ.pdf

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

SELECT * from Users WHERE userID = @userID 

, то вы передаете этот параметр перед вызовом Показать

StiReport report = new StiReport(); 
report.Load(.... your file....)); 
report.Dictionary.Databases.Clear(); 
StiSqlDatabase db = new StiSqlDatabase("the_name_of_datasource", "the connection string"); 
report.Dictionary.Databases.Add(db); 
report.CacheAllData = true; 
report.Dictionary.Synchronize(); 
report.Compile(); 
// Finally set the parameter 
report["@userID"] = 1; // <= value to search for.... 
report.Show(true); 

Этот пример предназначен для бэкэнд базы данных сервера Sql. Если у вас есть другой механизм базы данных, пожалуйста, используйте один из доступных классов StiXXXXXXDatabase.