try
{
string spath = AppDomain.CurrentDomain.BaseDirectory;
spath += "myReportFileName.rpt";
ReportDocument cryRpt = new ReportDocument();
cryRpt.Load(spath);
cryRpt.DataSourceConnections[0].SetConnection("Server Name", "DB Name", true);
cryRpt.DataSourceConnections[0].IntegratedSecurity = true;
cryRpt.SetParameterValue("Field Name", "Value");
cryRpt.RecordSelectionFormula = "Correct Formula";
crystalReportViewer1.ReportSource = cryRpt;
crystalReportViewer1.Refresh();
}
catch (System.Exception ex)
{
MessageBox.Show("Error: " + ex.Message);
}
В моей системе этот код в порядке. Но в другой системе он имеет ошибку. Я правильно установил во всех других хрустальных отчетах системы.Динамическая нагрузка .rpt в C#
Этот код выполняет с ошибкой:
crystaldecisions.crystalreports.engine.reportdocument' threw an exception
Тогда я выполнил CRRuntime_32bit_13_0_3.msi в клиентской системе. Эта ошибка решена Но Другая проблема:
После запуска кода открывается диалоговое окно «Вход в базу данных», и я не подключаюсь к базе данных автоматически и не просматриваю файл отчета !!!
Пожалуйста, помогите мне, что мне делать?
Если вы используете интегрированную защиту, пользователь, выполняющий ваш отчет, должен иметь разрешение на базу данных. Если аутентификация завершается неудачно, пользователю предоставляется диалог подключения для предоставления правильных учетных данных. В коде нечего исправлять. – rene
пользователь имеет право на участие, и отображается диалоговое окно «Вход в базу данных» с отключением поля имени базы данных !!! то использовать cann't установить имя базы данных – nabegheh95
что такое мое решение? @rene – nabegheh95