PDA

View Full Version : مشکل کار با پارامتر ها در کریستال



Masoome_das
دوشنبه 11 مرداد 1389, 14:38 عصر
این کد ببینید و اشکالش و بگید

پروسیجر



ALTER PROCEDURE dbo.state_member_personal
@user_name decimal
AS
select name_m ,famil_m,dateadd(day,365,date_m),image_m from member where key_member=@user_name
RETURN



کد برنامه C#



string key_member="";
public Cart(string key)
{
InitializeComponent();
key_member =(key);
}

privatevoid Cart_Load(object sender, EventArgs e)
{
SqlConnection conn = newSqlConnection(System.Configuration.Configuratio nSettings.AppSettings["SQl_Conect"].ToString());
conn.Open();
SqlCommand cmd = newSqlCommand("state_member_personal", conn);
conn.Open();
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@user_name", SqlDbType.Decimal).Value = Convert.ToDecimal(key_member);
SqlDataAdapter da = newSqlDataAdapter(cmd);
DataSet ds = newDataSet();
da.Fill(ds, "products");


CrystalReport5 cr1 = newCrystalReport5();
cr1.SetParameterValue("@user_name", Convert.ToDecimal(key_member));
cr1.SetDataSource(da);
crystalReportViewer1.ReportSource = cr1;




ولی پارامتر را نمی شناسه و همچنان باید به طور دستی پارامتر وارد کنم.
اگه کسی میدونه به من کمک کنه

baidin
چهارشنبه 13 مرداد 1389, 00:32 صبح
این کد ببینید و اشکالش و بگید

پروسیجر



ALTER PROCEDURE dbo.state_member_personal
@user_name decimal
AS
select name_m ,famil_m,dateadd(day,365,date_m),image_m from member where key_member=@user_name
RETURN



کد برنامه C#‎



string key_member="";
public Cart(string key)
{
InitializeComponent();
key_member =(key);
}

privatevoid Cart_Load(object sender, EventArgs e)
{
SqlConnection conn = newSqlConnection(System.Configuration.Configuratio nSettings.AppSettings["SQl_Conect"].ToString());
conn.Open();
SqlCommand cmd = newSqlCommand("state_member_personal", conn);
conn.Open();
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@user_name", SqlDbType.Decimal).Value = Convert.ToDecimal(key_member);
SqlDataAdapter da = newSqlDataAdapter(cmd);
DataSet ds = newDataSet();
da.Fill(ds, "products");


CrystalReport5 cr1 = newCrystalReport5();
cr1.SetParameterValue("@user_name", Convert.ToDecimal(key_member));
cr1.SetDataSource(da);
crystalReportViewer1.ReportSource = cr1;




ولی پارامتر را نمی شناسه و همچنان باید به طور دستی پارامتر وارد کنم.
اگه کسی میدونه به من کمک کنه

مظورتون از دستی پارامتر وارد کردن چیه؟

mahdi14694
پنج شنبه 18 شهریور 1389, 17:53 عصر
cmd.Parameters.Add("@user_name", SqlDbType.Decimal).Value = Convert.ToDecimal(key_member);
این تکه کد کاملا اشتباس. چی می خوای بفرستی به عنوان پارامتر؟

Masoome_das
یک شنبه 21 شهریور 1389, 11:54 صبح
این تکه کد کاملا اشتباس. چی می خوای بفرستی به عنوان پارامتر؟

من می خوام کریستال ریپورت را به جای جدول به پروسیجر وصل کنم پروسیجر هم یک پارامتر ورودی داره
مثلا کد کاربری مشتری چون می خوام برای انتخاب سطرهام یک سری پردازش خاص انجام بدهم نمی تونم مستقیم از خود جدول استفاده کنم حتما باید عمل انتخاب در یک پروسیجر انجام شود تمام مراحل کار بدرستی انجام می شه فقط زمانیکه برنامه اجرا می کنم یک پنجره انگلیسی باز میشه و مقدار پارامتر ورودی را می خواهد من می خوام که بدون باز شدن این پنجره بتونم خودم مقدار پارامتر را به کریستال بدهم