나는 텍스트 상자와 tablix가 포함 된 reportviewer가 있습니다. 테이블 릭스는 데이터 소스를 사용하여 채워집니다 (쿼리 문자열의 매개 변수가 2 개인 저장된 프로 시저를 사용하여 데이터를 가져옵니다). 쿼리 문자열의 값을 내 reportviewer 텍스트 상자의 값으로 지정하려면 어떻게합니까? 같은 뭔가 :asp.net을 사용하여 Reportviewer에서 텍스트 상자 값을 설정합니다. C#
<rsweb:ReportViewer ID="ReportViewer1" runat="server"
CssClass="ReportAlignment" Font-Names="Verdana" Font-Size="8pt"
InteractiveDeviceInfos="(Collection)" WaitMessageFont-Names="Verdana"
WaitMessageFont-Size="14pt" Width="550px">
<LocalReport ReportPath="TempEmpWageSummaryReport.rdlc">
<DataSources>
<rsweb:ReportDataSource DataSourceId="LoadWageSummary" Name="DataSet1" />
</DataSources>
</LocalReport>
</rsweb:ReportViewer>
<asp:SqlDataSource ID="LoadWageSummary" runat="server"
ConnectionString="<%$ ConnectionStrings:stockerConnectionString %>"
SelectCommand="procTempEmployeeWageSummaryReport"
SelectCommandType="StoredProcedure">
<SelectParameters>
<asp:QueryStringParameter Name="startDate" QueryStringField="start"
Type="String" />
<asp:QueryStringParameter Name="endDate" QueryStringField="end" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
코드 감사
protected void Page_Load(object sender, EventArgs e)
{
string start = Server.UrlDecode(Request.QueryString["start"]);
string end = Server.UrlDecode(Request.QueryString["end"]);
//this.ReportViewer1.LocalReport.ReportEmbeddedResource = "TempEmpWageSummaryReport.rdlc";
string param0 = "GROUPED TEMPORARY EMPLOYEE WAGE SUMMARY REPORT FROM " + start + "to " + end;
ReportParameter rp = new ReportParameter("ReportParameter1", param0);
this.ReportViewer1.LocalReport.SetParameters(new ReportParameter[] { rp });
this.ReportViewer1.LocalReport.Refresh();
//BindReport();
}
뒤에 : 이 ReportfFrom 쿼리 문자열 val1과는 문자열 발 2.
마크 업을 조회 할 수 있습니다.
당신의 접근 방식이 올바른 것처럼 보입니다. 보고서에 매개 변수 "ReportParameter1"을 작성하십시오. 아직 작성하지 않고 텍스트 상자에 바인드하면 작동합니다 – Irfan