Definir dinamicamente o Crystal Report ainda solicita login do db

Estou tentando implantarCrystal Reports no meuMVC aplicação. Para obter pleno uso do Crystal Report Viewer, eu tenho que usar umwebform, que está funcionando muito bem no meu ambiente de desenvolvimento.

O aplicativo será implantado nos servidores do usuário e conectado ao seu banco de dados pessoal. Isso significa que não tenho as informações de conexão finais ao projetar o relatório ou o aplicativo.

Eu sou capaz de conectar com sucesso usando suas entradas no arquivo web.config, carregar umDataTable com as informações do relatório e passá-lo para o relatório. No entanto, o relatório ainda está solicitando as credenciais do banco de dados. O relatório está configurado para se conectar ao meu banco de dados, por isso, solicita minhas credenciais e não prosseguirá sem elas. No entanto, o relatório final mostra as informações corretas do banco de dados.

Não tenho certeza se preciso alterar algo no relatório ou no código por trás. É assim que eu estou definindo o relatórioReportSource agora:

protected void Page_Load(object sender, EventArgs e)
{
    string strReportName = System.Web.HttpContext.Current.Session["ReportName"].ToString();
    try
    {
        ReportDocument rd = new ReportDocument();
        string strRptPath = Server.MapPath("~/") + "Rpts//" + strReportName;
        rd.Load(strRptPath);

        SqlParameter[] sqlParams = {};
        DataTable testDt = DBHelper.GetTable("rptInvtDuplDesc", sqlParams);
        rd.DataSourceConnections.Clear();
        rd.SetDataSource(testDt);
        CrystalReportViewer1.ReportSource = rd;
    }
    else
    {
        Response.Write("<H2>Nothing Found; No Report name found</H2>");
    }
}

Como evito que o relatório solicite as credenciais originais?

EDITAR:

Se eu passar o login para o meu banco de dados assim:

rd.SetDatabaseLogon("username", "password");

Eu não obtenho o login do banco de dados novamente. As credenciais devem ser para o banco de dados usado para criar o relatório, mas os resultados exibidos são doDataTable preenchido no método acima. Se tem os dados que precisa do banco de dados atual, por que precisa se conectar ao banco de dados original?

EDIT2:

Eu tenho 2 fontes de dados para este relatório. Uma é uma tabela do banco de dados e a outra é o resultado de um procedimento armazenado. Eu aprendi agora que é a causa do login extra.

questionAnswers(2)

yourAnswerToTheQuestion