Solved

providing sql username & password to crystal report in asp.net c#

Posted on 2010-08-15
3
513 Views
Last Modified: 2012-05-10
i have a crystal report in asp.net & c#

the rpt file has the sql query with groupings as i require

what i want to do is to provide ONLY the sql username & password using C# code

please note i want to supply just the username & password... NOT wanting to fill the report with a dataset or whatever
CrystalReportViewer1.ReportSource = "BrokerageConsolidatedMonthHO.rpt";
CrystalReportViewer1.SelectionFormula = "Month ({table1.cmonth})=5" + ;

Open in new window

0
Comment
Question by:RakeshBhandari
3 Comments
 
LVL 14

Accepted Solution

by:
Dhanasekaran Sengodan earned 500 total points
ID: 33443603
0
 
LVL 7

Expert Comment

by:Alpha Au
ID: 33443765
Please refer to the enclosed method, it can change the datasource, userid, password and databasename of a ReportDocument (support sub-report)

and you can get there information from web.config
            System.Data.SqlClient.SqlConnectionStringBuilder SConn = new System.Data.SqlClient.SqlConnectionStringBuilder(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
           
            SetCRLogOnInfo(rptDoc, SConn.DataSource, SConn.UserID, SConn.Password, SConn.InitialCatalog);
        public void SetCRLogOnInfo(ReportDocument mainInRD, string dataSource, string userId, string pwd, string DatabaseName)
        {
            //do the main reports database
            TableLogOnInfo logonInfo = null;

            foreach (CrystalDecisions.CrystalReports.Engine.Table table in mainInRD.Database.Tables)
            {
                logonInfo = table.LogOnInfo;
                logonInfo.ConnectionInfo.ServerName = dataSource;
                logonInfo.ConnectionInfo.DatabaseName = DatabaseName;
                logonInfo.ConnectionInfo.UserID = userId;
                logonInfo.ConnectionInfo.Password = pwd;
                table.ApplyLogOnInfo(logonInfo);
            }
            try
            {
                //now update logon info for all sub-reports
                if (!mainInRD.IsSubreport && mainInRD.Subreports != null && mainInRD.Subreports.Count > 0)
                {
                    foreach (ReportDocument rd in mainInRD.Subreports)
                    {
                        SetCRLogOnInfo(rd, dataSource, userId, pwd, DatabaseName);
                    }
                }
            }
            catch
            {
            }
        }

Open in new window

0
 
LVL 2

Author Closing Comment

by:RakeshBhandari
ID: 33498453
thank you!
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Entity Framework is a powerful tool to help you interact with the DataBase but still doesn't help much when we have a Stored Procedure that returns more than one resultset. The solution takes some of out-of-the-box thinking; read on!
The article shows the basic steps of integrating an HTML theme template into an ASP.NET MVC project
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used below. https://filedb.experts-exchange.com/incoming/2017/03_w12/1151775/Permutations.txt https://filedb.experts-exchange.com/incoming/201…

829 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question