newjeep19
asked on
The control parameters are not inputing the value when displaying in a report viewer
asp.net code:
C# code:
SQL:
<asp:RadioButtonList ID="radReportTypeT2" runat="server" AutoPostBack="true" RepeatDirection="Horizontal" RepeatLayout="Table" OnSelectedIndexChanged="radReportTypeT2_SelectedIndexChanged">
<asp:ListItem Text="Clear Market" Value="0" />
<asp:ListItem Text="Market 20" Value="20" />
<asp:ListItem Text="Market 21" Value="21" />
<asp:ListItem Text="Market 22" Value="22" />
<asp:ListItem Text="Market 23" Value="23" />
<asp:ListItem Text="Market 24" Value="24" />
<asp:ListItem Text="Market 25" Value="25" />
<asp:ListItem Text="Market 26" Value="26" />
<asp:ListItem Text="Market 27" Value="27" />
</asp:RadioButtonList>
<asp:RadioButtonList ID="radReportTypeAppT2" runat="server" AutoPostBack="true" RepeatDirection="Horizontal" RepeatLayout="Table" OnSelectedIndexChanged="radReportTypeAppT2_SelectedIndexChanged">
<asp:ListItem Text="A T" Value="AT" />
<asp:ListItem Text="AFS" Value="AFS" />
<asp:ListItem Text="LE" Value="LE" />
<asp:ListItem Text="LSP " Value="LSP" />
<asp:ListItem Text="WC Value="WC" />
<asp:ListItem Text="MP" Value="MP" />
</asp:RadioButtonList>
<div style="float: left;">
<asp:Label ID="lblTerr2StartDate" runat="server" Text="Start Date: " />
<asp:TextBox ID="txtTerr2StartDate" runat="server" ReadOnly="false" OnTextChanged="txtTerr2StartDate_TextChanged" AutoPostBack="true" OnSelectedIndexChanged="txtTerr2StartDate_SelectedIndexChanged" Height="33px" Width="172px" />
<a href="JavaScript:NewCal('txtTerr2StartDate','ddmmmyyyy',true,12)">
<img id="img1" src="images/cal.jpg" width="16" height="16" border="0" alt="Pick a date" />
</a>
<asp:Label ID="lblTerr2EndDate" runat="server" Text="End Date: " />
<asp:TextBox ID="txtTerr2EndDate" runat="server" ReadOnly="false" OnTextChanged="txtTerr2EndDate_TextChanged" AutoPostBack="true" OnSelectedIndexChanged="txtTerr2EndDate_SelectedIndexChanged" Height="41px" Width="192px" />
<a href="JavaScript:NewCal('txtTerr2EndDate','ddmmmyyyy',true,12)">
<img id="img2" src="images/cal.jpg" width="16" height="16" border="0" alt="Pick a date" />
</a>
</div>
<asp:ImageButton runat="server" ID="btnImgTerr2Submit" ImageUrl="~/images/SUBMIT.png" OnClick="btnImgTerr2Submit_Click" />
C# code:
protected void btnImgTerr2Submit_Click(object sender, ImageClickEventArgs e)
{
//report parameter market
var radRepTypeT2 = string.Empty;
if(radReportTypeT2.SelectedValue == "20")
{
radRepTypeT2 = "20";
}
else if (radReportTypeT2.SelectedValue == "21")
{
radRepTypeT2 = "21";
}
else if(radReportTypeT2.SelectedValue == "22")
{
radRepTypeT2 = "22";
}
else if(radReportTypeT2.SelectedValue == "23")
{
radRepTypeT2 = "23";
}
else if(radReportTypeT2.SelectedValue == "24")
{
radRepTypeT2 = "24";
}
else if(radReportTypeT2.SelectedValue == "25")
{
radRepTypeT2 = "25";
}
else if(radReportTypeT2.SelectedValue == "26")
{
radRepTypeT2 = "26";
}
else if(radReportTypeT2.SelectedValue == "27")
{
radRepTypeT2 = "27";
}
//report parameter application
var radRepAppT2 = string.Empty;
if(radReportTypeAppT2.SelectedValue == "AT")
{
radRepAppT2 = "Agnecy Toolkit";
}
else if(radReportTypeAppT2.SelectedValue == "AFS")
{
radRepAppT2 = "AF/ALR Page";
}
else if(radReportTypeAppT2.SelectedValue == "LE")
{
radRepAppT2 = "Leads eXpress";
}
else if(radReportTypeAppT2.SelectedValue == "LSP")
{
radRepAppT2 = "LSP Database";
}
else if(radReportTypeAppT2.SelectedValue == "WC")
{
radRepAppT2 = "WC Air Program Home Page";
}
else if(radReportTypeAppT2.SelectedValue == "MP")
{
radRepAppT2 = "MAPS/Promo";
}
//from date
var FromDate = string.Empty;
if (txtTerr2StartDate.Text != "")
{
FromDate = txtTerr2StartDate.Text;
}
//to date
var ToDate = string.Empty;
if (txtTerr2EndDate.Text != "")
{
ToDate = txtTerr2EndDate.Text;
}
//report parm
ReportParameter[] para = new ReportParameter[4];
para[0] = new ReportParameter("Market", radRepTypeT2);
para[1] = new ReportParameter("application", radRepAppT2);
para[2] = new ReportParameter("dateFrom", FromDate);
para[3] = new ReportParameter("dateTo", ToDate);
//show param promts
ReportViewer21.ShowParameterPrompts = true;
//show report
ReportViewer21.Visible = true;
ReportViewer21.ShowReportBody = true;
ReportViewer21.ShowExportControls = true;
}
SQL:
ALTER PROCEDURE [dbo].[sp_AT_Report]
@Market VARCHAR (50),
@dateFrom NVARCHAR (50),
@dateTo NVARCHAR (50),
@application VARCHAR (50)
AS
BEGIN
SET NOCOUNT ON;
SELECT A_nbr,
nid,
COUNT(resource) AS Count,
resource,
CONVERT(nvarchar(10), date, 101) AS date,
URL,
ED.Market,
ED.Territory
FROM wcr_a_t.dbo.C_Report AS C
LEFT OUTER JOIN w_st.dbo.A AS A
ON C.nid=A.R_ID
LEFT OUTER JOIN wcr_staff.dbo.Staff AS S
ON S.S_ID = A.S_ID
JOIN w_a.dbo.tblA AS TA
ON A.A_nbr = TA._A_NBR
LEFT OUTER JOIN w_roles.dbo.wE E
ON E.EID=C.ntid
JOIN w_e_n.dbo.AA AS ED
ON A.A_NBR=ED.ANumb
WHERE
ED.Market = @Market AND [date] Between @dateFrom and @dateTo AND [resource] = @application
GROUP BY resource, Agent_nbr, ntid, date, URL, ED.Market, ED.Territory
ORDER BY Agent_nbr, ntid
You probably want a line like
ReportViewer21.LocalReport .SetParame ters(para) ;
or
ReportViewer21.ServerRepor t.SetParam eters(para );
ReportViewer21.LocalReport
or
ReportViewer21.ServerRepor
ASKER
When I add the code :
ReportViewer21.LocalReport (para);
I get the error message:
Error 8 Non-invocable member 'Microsoft.Reporting.WebFo rms.Report Viewer.Loc alReport' cannot be used like a method.
ReportViewer21.LocalReport
I get the error message:
Error 8 Non-invocable member 'Microsoft.Reporting.WebFo
Try doing what I suggested.
ASKER
I did? I added the code that you suggested see below:
//report parm
ReportParameter[] para = new ReportParameter[4];
para[0] = new ReportParameter("Market", radRepTypeT2);
para[1] = new ReportParameter("applicati on", radRepAppT2);
para[2] = new ReportParameter("dateFrom" , FromDate);
para[3] = new ReportParameter("dateTo", ToDate);
//show param promts
ReportViewer21.ShowParamet erPrompts = true;
ReportViewer21.LocalReport (para);
//show report
ReportViewer21.Visible = true;
//var _mconn = uConnectionString;
//System.Data.DataSet thisDataSet = new System.Data.DataSet();
//SearchValue[0] = new SqlParameter("@
ReportViewer21.ShowReportB ody = true;
ReportViewer21.ShowExportC ontrols = true;
//report parm
ReportParameter[] para = new ReportParameter[4];
para[0] = new ReportParameter("Market", radRepTypeT2);
para[1] = new ReportParameter("applicati
para[2] = new ReportParameter("dateFrom"
para[3] = new ReportParameter("dateTo", ToDate);
//show param promts
ReportViewer21.ShowParamet
ReportViewer21.LocalReport
//show report
ReportViewer21.Visible = true;
//var _mconn = uConnectionString;
//System.Data.DataSet thisDataSet = new System.Data.DataSet();
//SearchValue[0] = new SqlParameter("@
ReportViewer21.ShowReportB
ReportViewer21.ShowExportC
No you haven't - please read my suggestion and try that.
ASKER
I do not see any suggestion besides the one that I attempted to do which caused the error message. Where is the suggestion at? Is it in this feed?
Yes. You asked the question. I made two comments then you posted again with your line of code with the error message, a line of code that differs from the code I suggested you try.
ASKER
Below is the only two treads that I see that you posted:
First post:
//report parm
ReportParameter[] para = new ReportParameter[4];
para[0] = new ReportParameter("Market", radRepTypeT2);
para[1] = new ReportParameter("applicati on", radRepAppT2);
para[2] = new ReportParameter("dateFrom" , FromDate);
para[3] = new ReportParameter("dateTo", ToDate);
// Where do you assign the values in para to anything ? - I assume these are what you wanted in the report
//show param promts
ReportViewer21.ShowParamet erPrompts = true;
//show report
ReportViewer21.Visible = true;
ReportViewer21.ShowReportB ody = true;
ReportViewer21.ShowExportC ontrols = true;
}
Second post:
You probably want a line like
ReportViewer21.LocalReport .SetParame ters(para) ;
or
ReportViewer21.ServerRepor t.SetParam eters(para );
I added the coded that you suggested in the two posts and I got the error message.
First post:
//report parm
ReportParameter[] para = new ReportParameter[4];
para[0] = new ReportParameter("Market", radRepTypeT2);
para[1] = new ReportParameter("applicati
para[2] = new ReportParameter("dateFrom"
para[3] = new ReportParameter("dateTo", ToDate);
// Where do you assign the values in para to anything ? - I assume these are what you wanted in the report
//show param promts
ReportViewer21.ShowParamet
//show report
ReportViewer21.Visible = true;
ReportViewer21.ShowReportB
ReportViewer21.ShowExportC
}
Second post:
You probably want a line like
ReportViewer21.LocalReport
or
ReportViewer21.ServerRepor
I added the coded that you suggested in the two posts and I got the error message.
Copy and paste my suggestion next to your line of code - they are very different.
ASKER
I am sorry I really do not know what you are asking me to do. I copied the two entries with C# code that you placed. I do not see any other suggestions. Please reenter in your suggestion.
ASKER
When I added your suggestion I now get this error message:
An attempt was made to set a report parameter 'Market' that is not defined in this report.
An attempt was made to set a report parameter 'Market' that is not defined in this report.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ReportParameter[] para = new ReportParameter[4];
para[0] = new ReportParameter("Market", radRepTypeT2);
para[1] = new ReportParameter("applicati
para[2] = new ReportParameter("dateFrom"
para[3] = new ReportParameter("dateTo", ToDate);
// Where do you assign the values in para to anything ? - I assume these are what you wanted in the report
//show param promts
ReportViewer21.ShowParamet
//show report
ReportViewer21.Visible = true;
ReportViewer21.ShowReportB
ReportViewer21.ShowExportC
}