Проведя от 3 до 4 часов в Google, пытаясь найти решение моей проблемы, мне не повезло.
По сути, мы используем отчеты Crystal для наших приложений .NET с серверной частью sql, у нас много клиентов, у каждого из которых есть собственный сервер, поэтому в наших отчетах необходимо динамически устанавливать соединения. До недели назад это работало нормально. Однако несколько дней назад клиент сообщил, что получает запрос на вход в базу данных для отчета (только один отчет, остальные работали нормально). Мы были довольно озадачены, но нам удалось воспроизвести его на нетбуке, на котором не было установлено Visual Studio или SQL Server. В конце концов, разработчик решил воспроизвести отчет в надежде, что в этом конкретном отчете это будет просто странность.
1004
Ниже приведен скриншот того, что получают наши клиенты -
Снимок экрана http://img404.imageshack.us/img404/1375/loginf.png
а вот код, который я использую для установки информации о соединении в отчете
cI.ServerName = (string)builder["Data Source"];
cI.DatabaseName = (string)builder["Initial Catalog"];
cI.UserID = (string)builder["User ID"];
cI.Password = (string)builder["Password"];
foreach (IConnectionInfo info in cryRpt.DataSourceConnections)
{
info.SetConnection(cI.ServerName, cI.DatabaseName, cI.UserID, cI.Password);
}
foreach (ReportDocument sub in cryRpt.Subreports)
{
foreach (IConnectionInfo info in sub.DataSourceConnections)
{
info.SetConnection(cI.ServerName, cI.DatabaseName, cI.UserID, cI.Password);
}
}
Как всегда, любая помощь высоко ценится.