0

VisualStudio10を使用してSAPCrystalReportsを初めて使用します。3つのパラメーターを持つストアドプロシージャを使用して、SAPCrystalReportsでレポートを生成しました。レポートは正常に読み込まれていますが、印刷してエクスポートしようとすると、次のエラーが表示されます。

指定したオプションを使用してエクスポートできませんでした。オプションを確認して、再試行してください。

また、コントロールのプロパティにReportSourceをハードタイプしようとしましたが、ログイン情報のポップアップが表示されます。ユーザー名とパスワードを入力する必要があります。これは避けたい。これが私のコードです:

private void loadreport(DateTime dt1, DateTime dt2, int cd)
    {
        ReportDocument reportDocument = new ReportDocument();

        ParameterField paramField = new ParameterField();
        ParameterDiscreteValue paramDiscreteValue = new ParameterDiscreteValue();
        ParameterFields paramFields = new ParameterFields();




        //Set instances for input parameter 1 -  @Dept

        paramField.Name = "@date1";

        //*Remember to reconstruct the paramDiscreteValue and paramField objects

        paramDiscreteValue.Value = dt1;

        paramField.CurrentValues.Add(paramDiscreteValue);

        //Add the paramField to paramFields

        paramFields.Add(paramField);

        ParameterField paramField2 = new ParameterField();
        ParameterDiscreteValue paramDiscreteValue2 = new ParameterDiscreteValue();

        paramField2.Name = "@date2";
        paramDiscreteValue2.Value = dt2;
        paramField2.CurrentValues.Add(paramDiscreteValue2);
        paramFields.Add(paramField2);


        ParameterField paramField3 = new ParameterField();
        ParameterDiscreteValue paramDiscreteValue3 = new ParameterDiscreteValue();

        paramField3.Name = "@cid";
        paramDiscreteValue3.Value = cd;
        paramField3.CurrentValues.Add(paramDiscreteValue3);
        paramFields.Add(paramField3);


        CrystalReportViewer1.ParameterFieldInfo = paramFields;
        reportDocument.Load(Server.MapPath("testreport.rpt"));
        //Load the report by setting the report source

        CrystalReportViewer1.ReportSource = reportDocument;
        CrystalReportViewer1.DisplayGroupTree = false;
        //set the database loggon information.




        reportDocument.SetDatabaseLogon("sa", "12345", @".\SQLEXPRESS", "AnivetERP");

    }
4

1 に答える 1

-1
    It maybe is because of the post back to make the report disappear. 
    You maybe can store the report into the session. and run it in the post back.

    if(Page.IsPostBack)
    {
    if(session['report'] != null)
{
                this.CrystalReportViewer1.ReportSource = session['report'] as CrystalDecisions.CrystalReports.Engine.ReportDocument;
                this.CrystalReportViewer1.DataBind();
}
    }

    Hope it can help you.
于 2012-06-12T11:36:36.323 に答える