Я реализовал код для загрузки Crystal Report с помощью вызова веб-API в своем приложении Windows Forms.
Ниже показано событие загрузки моего отчета. fromDate, toDate, ProfileId — параметры ввода пользователя для выполнения хранимой процедуры. Когда я запускаю код, метод GetIWD0001Data возвращает правильные данные и также передает их в источник данных. Но отчет загружается без данных (загрузка пустого отчета).
private void frmIWDReportViewer_Load(object sender, EventArgs e)
{
try
{
oCRDoc.Load(fileFullPath);
switch (reportName)
{
case "IWD0001.rpt":
IWD0001 IWD0001 = GetIWD0001Data(fromDate, toDate, profileId);
oCRDoc.SetDataSource(IWD0001);
break;
default:
break;
}
crystalViewer.ReportSource = oCRDoc;
Refresh();
}
catch(Exception ex)
{
DMSLogger.Write(ex);
MessageBox.Show(ex.Message.ToString());
}
}
public IWD0001 GetIWD0001Data(int product, DateTime fromDate, DateTime toDate, int profileId)
{
IWD0001 dataSet = new IWD0001();
try
{
using (SqlConnection connection = new SqlConnection(IMAGO.Common.Portal.Switcher.GetConnectionString(product)))
{
connection.Open();
// Call the first stored procedure: IMAGO_RPT_IRD_IRDCHQ
using (SqlCommand command1 = new SqlCommand("IMAGO_RPT_IRD_IRDCHQ", connection))
{
command1.CommandType = CommandType.StoredProcedure;
command1.Parameters.Add(new SqlParameter("@FROM", fromDate));
command1.Parameters.Add(new SqlParameter("@TO", toDate));
using (SqlDataAdapter adapter1 = new SqlDataAdapter(command1))
{
adapter1.Fill(dataSet, "IMAGO_RPT_IRD_IRDCHQ");
}
}
// Call the second stored procedure: IMAGO_RPT_GET_BRANCHES
using (SqlCommand command2 = new SqlCommand("IMAGO_RPT_GET_BRANCHES", connection))
{
command2.CommandType = CommandType.StoredProcedure;
command2.Parameters.Add(new SqlParameter("@PROFILE_ID", profileId));
using (SqlDataAdapter adapter2 = new SqlDataAdapter(command2))
{
adapter2.Fill(dataSet, "IMAGO_RPT_GET_BRANCHES");
}
}
// Query for MSYSTEMSETTING table
string sqlQuery2 = "SELECT * FROM MSYSTEMSETTING";
using (SqlCommand command3 = new SqlCommand(sqlQuery2, connection))
{
using (SqlDataAdapter adapter2 = new SqlDataAdapter(command3))
{
adapter2.Fill(dataSet, "MSYSTEMSETTING");
}
}
}
}
catch (Exception ex)
{
DMSLogger.Write(ex);
throw; // Ensure the exception is re-thrown or handled as necessary
}
return dataSet;
}
Подробнее здесь: https://stackoverflow.com/questions/787 ... g-any-data
Crystal Report загружается, но не отображает никаких данных ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Не удалось загрузить информацию о базе данных в Crystal Report для Visual Studio
Anonymous » » в форуме C# - 0 Ответы
- 10 Просмотры
-
Последнее сообщение Anonymous
-