داخل رویداد load فرمم کد زیر رو نوشتم :
Agr_ID = Paid_Request_Report.Agr_ID;
St_ID = Paid_Request_Report.St_ID;
Cur_type = Paid_Request_Report.CurType;
ReportDocument reportDocument = new ReportDocument();
ParameterFields paramFields = new ParameterFields();
ParameterDiscreteValue paramDiscreteValue = new ParameterDiscreteValue();
ParameterField paramField = new ParameterField();
paramField.Name = "@Agr_ID";
paramDiscreteValue.Value = Agr_ID;
paramField.CurrentValues.Add(paramDiscreteValue);
paramFields.Add(paramField);
paramField = new ParameterField();
paramDiscreteValue = new ParameterDiscreteValue();
paramField.Name = "@statement_Id";
paramDiscreteValue.Value = St_ID;
paramField.CurrentValues.Add(paramDiscreteValue);
paramFields.Add(paramField);
paramField = new ParameterField();
paramDiscreteValue = new ParameterDiscreteValue();
paramField.Name = "@cur_type";
paramDiscreteValue.Value = Cur_type;
paramField.CurrentValues.Add(paramDiscreteValue);
paramFields.Add(paramField);
crystalReportViewer1.ParameterFieldInfo = paramFields;
reportDocument.Load(Application.StartupPath + @"\CrystalReport1.rpt");
crystalReportViewer1.ReportSource = reportDocument;
reportDocument.SetDatabaseLogon("**", "**");
reportDocument.VerifyDatabase();
که در واقع سه تا پارامتری که تعریف کردم سه پارامتری هست که sp من بعنوان پارامتر ورودی می گیره . زمانی که برنامه رو کامپایل می کنم و اجرا می کنم این خطا کمتر رخ می ده ولی وقتی خود فایل exe رو اجرا می کنم بیشتر این خطا پیش میاد . ضمنا خطا هم که بررسی می کنم این هست که Component های فرم رو نمی تونه Load کنه و NULL برمی گردونه . ایننو هم بگم که در ابتدا فایل crystal report رو به یه SP بایند کردم .