none
Intentos fallidos con informe en equipo cliente de Crystalreports continua solicitando no mostrando base de datos, usuario y contraseña en la ventana de credenciales. RRS feed

  • Pregunta


  • Saludos amigos!

    Tengo un problema recurrente para muchos compañeros, he visto por la red consejos y formas de corregir sin éxito:

    Aclaro mi aplicación trabaja localmente perfecto en todo, solo me pide usuario y contraseña al ejecutar el reporte en el cliente, sin nombre de la base de datos en la ventana de credenciales al llamar el informe.

    Realice lo siguiente:

    1.- Establecí ubicación del origen de datos la conexión de SQL Native a OLE DB (continua solicitando usuario y contraseña)

    2.- Definí dataset para llamar (continua solicitando usuario y contraseña)

    3.- Definí datos de la conexión como podrán visualizar en el código y otros códigos que mezcle sin éxito.(continua solicitando usuario y contraseña)

    4.- El cliente tiene el componente SAP instalado para x86

            private void SetDBLogonForReport(ConnectionInfo connectionInfo, ReportDocument rptDocument)
            {
                Tables myTables = rptDocument.Database.Tables;
                foreach (CrystalDecisions.CrystalReports.Engine.Table myTable in myTables)
                {
                    TableLogOnInfo myTableLogonInfo = myTable.LogOnInfo;
                    myTableLogonInfo.ConnectionInfo = connectionInfo;
                    myTable.ApplyLogOnInfo(myTableLogonInfo);
                }
            }
    
            private void FormatoCartaAgradecimiento_Load(object sender, EventArgs e)
            {
                try
                {
                    ConnectionInfo cn = new ConnectionInfo();
                    cn.ServerName = "ICTINO\\SQLEXPRESS";
                    cn.DatabaseName = "SMDIF";
                    cn.UserID = "sa";
                    cn.Password = "+Temporal1+";
                    cn.Type = ConnectionInfoType.SQL;
    
                    // en equipo de desarrollo
                    //cry.Load(@"D:\PetobSoftware\SMDIFTS\UI.WinForm\Reportes\rptCartaAgradecimiento.rpt");
                    // en cliente
                    cry.Load(@"D:\SMDIFTS\Reportes\rptCartaAgradecimiento.rpt");
                    cry.SetParameterValue("@id_apoyos_gestionados", Convert.ToInt32(txtid_apoyo.Text));
    
                    cry.SetDatabaseLogon("sa", "+Temporal1+", "ICTINO\\SQLEXPRESS", "SMDIF");
    
                    SetDBLogonForReport(cn, cry);
    
                    crystalReportViewer1.ReportSource = cry;
    
    
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.ToString());
                }
            }
    

    Seguramente algo no este haciendo bien, ya llevo unas 4 ó 5 horas con intentos fallidos, por lo que solicito de la manera más atenta alguna rutina o me aporte lo que estoy pasando por alto en el codigo para que sea funcionales los reportes en los equipos clientes...

    Muchas gracias amigos por su apoyo y tiempo.


    domingo, 10 de noviembre de 2019 9:49

Respuestas

  • Gracias amigo, de las opciones mencionadas aplique nuevamente la número 1, y lo lleve a cabo mediante un video que hace referencia a resolver el problema... mi problema consistía en la forma en la que no daba de alta la nueva conexión correctamente por OLEDB...

    Agradezco el tiempo amigo, gracias.

    domingo, 10 de noviembre de 2019 21:07

Todas las respuestas

  • Hola Marco:

    No vas a tener problemas usando datasets tipados, es decir, tu conexion se realizará al datatable del dataset, dicho lo cual, al informe del crystal reports le es indiferente si los datos vienen de una instrucción sql,etc. No dependen de la conexion ya que coge los datos del dataset tipado, por lo que tu rellenas los datos del informe a través de los suministrado por el dataset, que previamente si habrás llenado con una consulta.

    Te recomendaría que miraras esta url por ejemplo: crystal y dataset

    Un cordial saludo.

    Gemma

    domingo, 10 de noviembre de 2019 17:02
  • Gracias amigo, de las opciones mencionadas aplique nuevamente la número 1, y lo lleve a cabo mediante un video que hace referencia a resolver el problema... mi problema consistía en la forma en la que no daba de alta la nueva conexión correctamente por OLEDB...

    Agradezco el tiempo amigo, gracias.

    domingo, 10 de noviembre de 2019 21:07