locked
ASP.NET session RadioButtonLiss with report viewer report viewer RRS feed

  • Question

  • User-1683022223 posted

    hello , 

    am working witth report viewer

    using radio button list  with session

    the Second page display with selected from radio button work very well also with report viewer

    the problem i got all display , 

    i have now 3 control 

    if i selected first (ReportUser)  to true i wantt other flas like to hide

    second Reportop

    3the ReportBoss

    ffrom report viewer 

    i  add to expression for hidden

    first =(Parameters!ReportUser.Value = "False")

     second =(Parameters!Reportop.Value = "False")

     3the  =(Parameters!ReportBoss.Value = "False")

    HTML

     <asp:RadioButtonList ID="RadioButtonList5" runat="server" AutoPostBack="true" BorderColor="#333333" BorderStyle="Solid" CssClass="auto-style186" ForeColor="Black" OnSelectedIndexChanged="RadioButtonLissRasmi" RepeatDirection="Horizontal" style="font-size: large" TextAlign="Left" Width="100%">
                                                        <asp:ListItem Value="ReportUser">موظف</asp:ListItem>
                                                        <asp:ListItem Value="Reportop">اشرافي</asp:ListItem>
                                                        <asp:ListItem Value="ReportBoss">مدير الادارة</asp:ListItem>
                                                    </asp:RadioButtonList>

    then i use session

     protected void RadioButtonLissRasmi(object sender, EventArgs e)
            {
                Session["Gender_Rsmi"] = RadioButtonList5.SelectedValue;
            }

    the second page 

    HTML

     <asp:Label ID="lblGender" runat="server"></asp:Label>

    C#

    protected void Page_Load(object sender, EventArgs e)
            {
                lblGender.Text = Session["Gender_Rsmi"].ToString();
                EMEmonth.Text = Session["rsmonth0"].ToString();
                EMEtotal.Text = Session["rsmtotal0"].ToString();
                emetoday0.Text = Session["rsmdate"].ToString();
                emetoday.Text = Session["rsmtime"].ToString();
                txtUsername.Text = Session["name"].ToString();
                fileid.Text = Session["filenumber"].ToString();
                joptitel.Text = Session["location"].ToString();
                markazel3mel.Text = Session["markazel3mel"].ToString();
                civilid0.Text = Session["civilid"].ToString();
                Image1.ImageUrl = Session["filelocation"].ToString();
    
                if (!this.IsPostBack)
                {
                    DataSet1 dsCustomers = new DataSet1();
                    ReportViewer1.ProcessingMode = ProcessingMode.Local;
                    ReportViewer1.LocalReport.ReportPath = Server.MapPath("~/reportviewer/Report3.rdlc");
                    ReportDataSource datasource = new ReportDataSource("DataSet1", dsCustomers.Tables[0]);
                    ReportParameter[] param = new ReportParameter[8];
                    param[0] = new ReportParameter("nameParameter", txtUsername.Text);
                    param[1] = new ReportParameter("fileidParameter", fileid.Text);
                    param[2] = new ReportParameter("locationParameter2", joptitel.Text);
                    param[3] = new ReportParameter("workParameter", markazel3mel.Text);
                    param[4] = new ReportParameter("civilParameter", civilid0.Text);
                    param[5] = new ReportParameter("timeParameter", emetoday.Text);
                    param[6] = new ReportParameter("dateParameter", emetoday0.Text);
                    param[7] = new ReportParameter("imagesbarcode", Image1.ImageUrl.Replace("data:image/png;base64,", ""));
    
                    ReportViewer1.LocalReport.SetParameters(param);
                    ReportViewer1.LocalReport.DataSources.Clear();
                    ReportViewer1.LocalReport.DataSources.Add(datasource);
    
                    if (lblGender.Text == "ReportUser")
                    {
                        ReportParameter textmsg = new ReportParameter("ReportUser", "true");
                        ReportViewer1.LocalReport.SetParameters(textmsg);
                    }
                    else
                    {
                        ReportParameter textmsg4 = new ReportParameter("Reportop", "flase");
                        ReportViewer1.LocalReport.SetParameters(textmsg4);
                        ReportParameter textmsg5 = new ReportParameter("ReportBoss", "false");
                        ReportViewer1.LocalReport.SetParameters(textmsg5);
                        ReportViewer1.LocalReport.Refresh();
                    }
    
                    if (lblGender.Text == "Reportop")
                    {
                        ReportParameter textmsg6 = new ReportParameter("Reportop", "true");
                        ReportViewer1.LocalReport.SetParameters(textmsg6);
                        ReportViewer1.LocalReport.Refresh();
                    }
                    else
                    {
                        ReportParameter textmsg2 = new ReportParameter("ReportUser", "false");
                        ReportViewer1.LocalReport.SetParameters(textmsg2);
                        ReportParameter textmsg7 = new ReportParameter("ReportBoss", "false");
                        ReportViewer1.LocalReport.SetParameters(textmsg7);
                        ReportViewer1.LocalReport.Refresh();
                    }
    
                    if (lblGender.Text == "ReportBoss")
                    {
                        ReportParameter textmsg8 = new ReportParameter("ReportBoss", "true");
                        ReportViewer1.LocalReport.SetParameters(textmsg8);
                    }
                    else
                    {
                        ReportParameter textmsg3 = new ReportParameter("ReportUser", "false");
                        ReportViewer1.LocalReport.SetParameters(textmsg3);
                        ReportParameter textmsg9 = new ReportParameter("Reportop", "false");
                        ReportViewer1.LocalReport.SetParameters(textmsg9);
                        ReportViewer1.LocalReport.Refresh();
                    }
    
                    ReportViewer1.LocalReport.Refresh();
                }
            }
        }
    }
    



    Sunday, February 14, 2021 1:02 PM

Answers

  • User1535942433 posted

    Hi kankonq8,

    According to your description and codes,I find your logic is wrong.

    i  add to expression for hidden

    first =(Parameters!ReportUser.Value = "False")

     second =(Parameters!Reportop.Value = "False")

     3the  =(Parameters!ReportBoss.Value = "False")

    If when the report viewer's value = "false",you need to hide the report viewer? The if else is wrong. When lblGender.Text == "ReportUser",ReportUser is true and Reportop,ReportBoss are false.

                  if (lblGender.Text == "ReportUser")
                    {
                        ReportParameter textmsg = new ReportParameter("ReportUser", "true");
                        ReportViewer1.LocalReport.SetParameters(textmsg);
     ReportParameter textmsg4 = new ReportParameter("Reportop", "false");
    ReportViewer1.LocalReport.SetParameters(textmsg4);
    ReportParameter textmsg5 = new ReportParameter("ReportBoss", "false");
    ReportViewer1.LocalReport.SetParameters(textmsg5);
    ReportViewer1.LocalReport.Refresh(); } if (lblGender.Text == "Reportop") { ReportParameter textmsg6 = new ReportParameter("Reportop", "true"); ReportViewer1.LocalReport.SetParameters(textmsg6); ReportParameter textmsg2 = new ReportParameter("ReportUser", "false");
    ReportViewer1.LocalReport.SetParameters(textmsg2);
    ReportParameter textmsg7 = new ReportParameter("ReportBoss", "false");
    ReportViewer1.LocalReport.SetParameters(textmsg7);
    ReportViewer1.LocalReport.Refresh(); } if (lblGender.Text == "ReportBoss") { ReportParameter textmsg8 = new ReportParameter("ReportBoss", "true"); ReportViewer1.LocalReport.SetParameters(textmsg8);
    ReportParameter textmsg3 = new ReportParameter("ReportUser", "false");
    ReportViewer1.LocalReport.SetParameters(textmsg3);
    ReportParameter textmsg9 = new ReportParameter("Reportop", "false");
    ReportViewer1.LocalReport.SetParameters(textmsg9);
    ReportViewer1.LocalReport.Refresh(); }

    Best regards,

    Yijing Sun

    • Marked as answer by Anonymous Thursday, October 7, 2021 12:00 AM
    Monday, February 15, 2021 6:37 AM
  • User-1683022223 posted

    update

    i fixed

    must make same spill  cap w/o

    must  be same  spill  cap

    in report viewer must same with codebehind Yellow : =(Parameters!ReportUser.Value = "False") RED : =(Parameters!ReportBoss.Value = "False") Green : =(Parameters!Reportop.Value = "False") ReportParameter textmsg = new ReportParameter("ReportUser", "True"); ReportParameter textmsg = new ReportParameter("ReportUser", "False");

    • Marked as answer by Anonymous Thursday, October 7, 2021 12:00 AM
    Wednesday, February 17, 2021 9:53 PM

All replies

  • User1535942433 posted

    Hi kankonq8,

    According to your description and codes,I find your logic is wrong.

    i  add to expression for hidden

    first =(Parameters!ReportUser.Value = "False")

     second =(Parameters!Reportop.Value = "False")

     3the  =(Parameters!ReportBoss.Value = "False")

    If when the report viewer's value = "false",you need to hide the report viewer? The if else is wrong. When lblGender.Text == "ReportUser",ReportUser is true and Reportop,ReportBoss are false.

                  if (lblGender.Text == "ReportUser")
                    {
                        ReportParameter textmsg = new ReportParameter("ReportUser", "true");
                        ReportViewer1.LocalReport.SetParameters(textmsg);
     ReportParameter textmsg4 = new ReportParameter("Reportop", "false");
    ReportViewer1.LocalReport.SetParameters(textmsg4);
    ReportParameter textmsg5 = new ReportParameter("ReportBoss", "false");
    ReportViewer1.LocalReport.SetParameters(textmsg5);
    ReportViewer1.LocalReport.Refresh(); } if (lblGender.Text == "Reportop") { ReportParameter textmsg6 = new ReportParameter("Reportop", "true"); ReportViewer1.LocalReport.SetParameters(textmsg6); ReportParameter textmsg2 = new ReportParameter("ReportUser", "false");
    ReportViewer1.LocalReport.SetParameters(textmsg2);
    ReportParameter textmsg7 = new ReportParameter("ReportBoss", "false");
    ReportViewer1.LocalReport.SetParameters(textmsg7);
    ReportViewer1.LocalReport.Refresh(); } if (lblGender.Text == "ReportBoss") { ReportParameter textmsg8 = new ReportParameter("ReportBoss", "true"); ReportViewer1.LocalReport.SetParameters(textmsg8);
    ReportParameter textmsg3 = new ReportParameter("ReportUser", "false");
    ReportViewer1.LocalReport.SetParameters(textmsg3);
    ReportParameter textmsg9 = new ReportParameter("Reportop", "false");
    ReportViewer1.LocalReport.SetParameters(textmsg9);
    ReportViewer1.LocalReport.Refresh(); }

    Best regards,

    Yijing Sun

    • Marked as answer by Anonymous Thursday, October 7, 2021 12:00 AM
    Monday, February 15, 2021 6:37 AM
  • User-1683022223 posted

    still same  thing display all

    Screenshot

    Monday, February 15, 2021 1:25 PM
  • User1535942433 posted

    Hi kankonq8,

    As far as I think,your method are wrong.

    Your codes:

    ReportParameter textmsg5 = new ReportParameter("ReportBoss", "false");

    Correct codes:

    ReportParameter textmsg5 = new ReportParameter (string name, string[] values, bool visible);

    More details,you could refer to below article:

    https://docs.microsoft.com/en-us/dotnet/api/microsoft.reporting.webforms.reportparameter.-ctor?view=sqlserver-2016#Microsoft_Reporting_WebForms_ReportParameter__ctor

    Best regards,

    Yijing Sun

    Tuesday, February 16, 2021 7:23 AM
  • User-1683022223 posted

    Sir am getting erro ,  even when I change string name to "reportboss"

    Wednesday, February 17, 2021 9:30 AM
  • User-1683022223 posted

    update

    i fixed

    must make same spill  cap w/o

    must  be same  spill  cap

    in report viewer must same with codebehind Yellow : =(Parameters!ReportUser.Value = "False") RED : =(Parameters!ReportBoss.Value = "False") Green : =(Parameters!Reportop.Value = "False") ReportParameter textmsg = new ReportParameter("ReportUser", "True"); ReportParameter textmsg = new ReportParameter("ReportUser", "False");

    • Marked as answer by Anonymous Thursday, October 7, 2021 12:00 AM
    Wednesday, February 17, 2021 9:53 PM