As the previous poster mentioned, It looks like you forgot your SqlDataReader.
Try something like this:
DataTable dt = new DataTable();
conn = new SqlConnection(ConfigurationManager.ConnectionStrings["LOUPe_InventoryConnectionString"].ConnectionString);
conn.Open();
SqlCommand cmd = new SqlCommand("procWebLossRatioAnalysis_G_RP_LR", conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@pSNLCompanyName", snlcompanyname);
cmd.Parameters.AddWithValue("@pReportTypeFlag", reporttypeflag);
cmd.Parameters.AddWithValue("@pSNLStateLOB", snlstatelob);
cmd.Parameters.AddWithValue("@pForYears", foryears);
cmd.Parameters.AddWithValue("@pPerformance", forperformance);
cmd.Parameters.AddWithValue("@pLOBGrpList", lobgrouplist);
cmd.Prepare();
SqlDataReader dr = cmd.ExecuteReader(CommandBehaviour.CloseConnection);
dt.Load(dr);
grvMergeHeader.DataSource = dt;
grvMergeHeader.DataBind();