Olá JP,
O problema é que você não especifica o MDF como os arquivos do banco de dados:
ci.DatabaseName = builder.AttachDBFilename; // = D:\TEST\TEST.MDF
Você só especifica o Servidor e as informações de login:
// percorrer todas as tabelas e passar as informações de conexão
foreach (CrystalDecisions.CrystalReports.Engine.Table crTable in crTables)
{
mainSecureDB = rpt.Database.Tables[tableIndex].LogOnInfo.ConnectionInfo.IntegratedSecurity;
string mainTableName = crTable.Name.ToString();
tableIndex++;
// btrDataFile - Servidor
// btrSearchPath - Banco de dados
// btrFileLocation - Nome de usuário
// btrPassword - senha
// passar os parâmetros necessários para o objeto connectionInfo
// crConnectioninfo.ServerName = btrDataFile.Text.ToString();
crConnectioninfo.ServerName = "10.161.12.206a";
if (!mainSecureDB)
{
crConnectioninfo.UserID = "sa";
crConnectioninfo.Password = "Password";
crConnectioninfo.DatabaseName = "TEST";
}
else
{†† // mostrar as informações de conexão
crConnectioninfo.IntegratedSecurity = true;
crConnectioninfo.UserID = btrFileLocation.Text.ToString();
crConnectioninfo.Password = btrPassword.Text.ToString();
crConnectioninfo.DatabaseName = btrSearchPath.Text.ToString();
}
crTableLogOnInfo = crTable.LogOnInfo;
crTableLogOnInfo.ConnectionInfo = crConnectioninfo;
crTable.ApplyLogOnInfo(crTableLogOnInfo);
// SQL Server
crTable.Location = crDatabase + ".dbo." + "orders"; // crTable.Location;
...
Atenciosamente,
