当前位置:编程学习 > C#/ASP.NET >>

vs2005 做报表时 提示 无效索引。 (异常来自 HRESULT:0x8002000B (DISP_E_BADINDEX))

 ReportDocument rpDoc = new ReportDocument();   
 private void GetOrderBasicInfo()
    {
        GC.Collect();
     
        MOrder MO = new MOrder();
        IOrder IO = FOrder.GetIOrder();
        MO.f_OrderNo = Request.QueryString["OrderNo"].ToString();
        ViewState["OrderNo"] = Request.QueryString["OrderNo"].ToString();
        DataTable DT = IO.GetDataTable(PublicClass.DB_RestaurantReservationNet, MO, "V_emooAndV_pmoo", null, null);
        if (DT.Rows.Count > 0)
        {
            rpDoc.Load(Server.MapPath("~/web/Center_MerchantMembers") + "\\CrystalReport3.rpt");
            rpDoc.SetDataSource(DT);
            SetReportParameter(rpDoc, "f_OrderNo", DT.Rows[0]["f_OrderNo"].ToString());         
        }

        this.rptView.ReportSource = rpDoc;
    }
    void SetReportParameter(ReportDocument rpt, string paramName, string value)
    {
        ParameterValues currentParameterValues = new ParameterValues();
        ParameterDiscreteValue parmDiscreteValue = new ParameterDiscreteValue();
        parmDiscreteValue.Value = value;
        currentParameterValues.Add(parmDiscreteValue);
        ParameterFieldDefinitions parmFieldDefinitions = rpt.DataDefinition.ParameterFields;
        ParameterFieldDefinition parmFieldDef = parmFieldDefinitions[paramName];//这行出错
        parmFieldDef.ApplyCurrentValues(currentParameterValues);
    } --------------------编程问答-------------------- paramName 字段是不是有问题 --------------------编程问答-------------------- 问题是纠结这个字段哪里来的。。  --------------------编程问答-------------------- 看着好像没什么错误啊。。 --------------------编程问答--------------------
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,