0

このコードの何が問題なのですか:

ReportDocument cryrpt = new ReportDocument();
            TableLogOnInfos crtablelogoninfos = new TableLogOnInfos();
            TableLogOnInfo crtablelogoninfo = new TableLogOnInfo();
            ConnectionInfo crconnectioninfo = new ConnectionInfo();
            Tables CrTables;

            cryrpt.Load("C:\\Documents and Settings\\Administrator\\Desktop\\minfatora11-7--\\minfatora\\minfatora\\Treasury_account_out_come.rpt");

            crconnectioninfo.ServerName = "localhost";
            crconnectioninfo.DatabaseName = "MNFATOR";
            crconnectioninfo.UserID = "ICMADMIN";
            crconnectioninfo.Password = "ICMADMIN";

            CrTables = cryrpt.Database.Tables;

            foreach (CrystalDecisions.CrystalReports.Engine.Table CrTable in CrTables)
            {
                crtableLogoninfo = CrTable.LogOnInfo;
                crtableLogoninfo.ConnectionInfo = crConnectionInfo;
                CrTable.ApplyLogOnInfo(crtableLogoninfo);
            }





            cryrpt.RecordSelectionFormula = "select * from tblxxx where xxx=2";
            cryrpt.Refresh();
            allReportViewer.ReportSource = cryrpt;

「オブジェクト参照がオブジェクトのインスタンスに設定されていません」というエラーが表示されます。行で:

CrTable.ApplyLogOnInfo(crtableLogoninfo);
4

2 に答える 2

0

この行でテーブルを取得すると、あなたCrTablesはですnull

CrTables = cryrpt.Database.Tables;
  1. 負荷の経路を確認できます
  2. または、ファイル Treasury_account_out_come.rpt の構文を確認してください
于 2012-08-18T12:01:31.377 に答える