kiran_ch5
asked on
Oracle REFCURSOR and DataGrid
HI,
I have Oracle Stored Procedure That Returns 5 Output Parameters and one refcursor and Takes 2 Input Parameters.
When I executed this Procedures I am getting individual parameter Values but not the Refcursor Values.
I am tring to bind the REFCURSOR values to a MyDataGrid and dispaly that Datagrid in my .aspx page.
It is just showing the fieldNames but not the Values of fields... Can you please help me why it is doing that.... Following is my Code
************************** ********** ********** **********
oCmd.Parameters.Add("p_fun nel_id", OracleType.Number, 100).Value = 12;
oCmd.Parameters.Add("p_dat e", OracleType.DateTime, 500).Value = "28-MAR-2005";
OracleParameter oParam1 = new OracleParameter("p_name", OracleType.VarChar,500);
oParam1.Direction = ParameterDirection.Output;
oCmd.Parameters.Add(oParam 1);
OracleParameter oParam2 = new OracleParameter("p_desc", OracleType.VarChar,500);
oParam2.Direction = ParameterDirection.Output;
oCmd.Parameters.Add(oParam 2);
OracleParameter oParam3 = new OracleParameter("p_creator ", OracleType.VarChar,500);
oParam3.Direction = ParameterDirection.Output;
oCmd.Parameters.Add(oParam 3);
OracleParameter oParam4 = new OracleParameter("p_editors ", OracleType.VarChar,500);
oParam4.Direction = ParameterDirection.Output;
oCmd.Parameters.Add(oParam 4);
OracleParameter oParam5 = new OracleParameter("p_funnel_ report", OracleType.Cursor,500);
oParam5.Direction = ParameterDirection.Output;
oCmd.Parameters.Add(oParam 5);
OracleParameter oParam6 = new OracleParameter("p_error", OracleType.VarChar,500);
oParam6.Direction = ParameterDirection.Output;
oCmd.Parameters.Add(oParam 6);
//get the data
ds = new DataSet();
OracleDataAdapter adapter = new OracleDataAdapter(oCmd);
adapter.Fill(ds,"Reports") ;
MyDataGrid.DataSource = ds;
MyDataGrid.DataBind();
MyDataGrid.DataBind();
f_name_ro.Text= oParam1.Value.ToString();
f_desc_ro.Text = oParam2.Value.ToString();
f_creator_ro.Text = oParam3.Value.ToString();
f_editors_ro.Text = oParam4.Value.ToString();
I have Oracle Stored Procedure That Returns 5 Output Parameters and one refcursor and Takes 2 Input Parameters.
When I executed this Procedures I am getting individual parameter Values but not the Refcursor Values.
I am tring to bind the REFCURSOR values to a MyDataGrid and dispaly that Datagrid in my .aspx page.
It is just showing the fieldNames but not the Values of fields... Can you please help me why it is doing that.... Following is my Code
**************************
oCmd.Parameters.Add("p_fun
oCmd.Parameters.Add("p_dat
OracleParameter oParam1 = new OracleParameter("p_name", OracleType.VarChar,500);
oParam1.Direction = ParameterDirection.Output;
oCmd.Parameters.Add(oParam
OracleParameter oParam2 = new OracleParameter("p_desc", OracleType.VarChar,500);
oParam2.Direction = ParameterDirection.Output;
oCmd.Parameters.Add(oParam
OracleParameter oParam3 = new OracleParameter("p_creator
oParam3.Direction = ParameterDirection.Output;
oCmd.Parameters.Add(oParam
OracleParameter oParam4 = new OracleParameter("p_editors
oParam4.Direction = ParameterDirection.Output;
oCmd.Parameters.Add(oParam
OracleParameter oParam5 = new OracleParameter("p_funnel_
oParam5.Direction = ParameterDirection.Output;
oCmd.Parameters.Add(oParam
OracleParameter oParam6 = new OracleParameter("p_error",
oParam6.Direction = ParameterDirection.Output;
oCmd.Parameters.Add(oParam
//get the data
ds = new DataSet();
OracleDataAdapter adapter = new OracleDataAdapter(oCmd);
adapter.Fill(ds,"Reports")
MyDataGrid.DataSource = ds;
MyDataGrid.DataBind();
MyDataGrid.DataBind();
f_name_ro.Text= oParam1.Value.ToString();
f_desc_ro.Text = oParam2.Value.ToString();
f_creator_ro.Text = oParam3.Value.ToString();
f_editors_ro.Text = oParam4.Value.ToString();
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Now My code is like this... still not working
//get the data
ds = new DataSet();
OracleDataAdapter adapter = new OracleDataAdapter(oCmd);
adapter.Fill(ds,"Reports")
MyDataGrid.DataSource = ds.Tables["Reports"];
MyDataGrid.DataBind();