DataGridViewの場合と同じように、ReportViewerを実行するクエリにバインドして、フォームにテキストボックスとボタンが含まれるようにします。テキストボックスに学生IDを入力してボタンをクリックすると、テーブルから特定のレコードを取得し、レシートの形式でレポートビューアに表示する必要があります。私はReportViewerを使用したことがないので、例を提供してくれるか、管理できると思う大まかな青写真を書いていただければ、どこから始めればよいのかわかりません。
ありがとう
DataGridViewの場合と同じように、ReportViewerを実行するクエリにバインドして、フォームにテキストボックスとボタンが含まれるようにします。テキストボックスに学生IDを入力してボタンをクリックすると、テーブルから特定のレコードを取得し、レシートの形式でレポートビューアに表示する必要があります。私はReportViewerを使用したことがないので、例を提供してくれるか、管理できると思う大まかな青写真を書いていただければ、どこから始めればよいのかわかりません。
ありがとう
ReportViewer は、バインドされたデータではなく、レポートを表示します。領収書を表示するには、.rdl または .rdlc ファイルを作成する必要があります (WinForms と WebForms のどちらで作業しているかによって異なります)。
レポート定義は、.rdl または .rdlc ファイルに保存されます。クエリ定義を .rdl ファイルに保存すると、レポートを表示するときに実行されます。プロンプトを表示できるクエリおよびレポートのパラメータを設定できます。
さらに、詳細は、これが WinForms レポートか WebForms レポートかによって異なります。
ただし、このようにバインドするためのヒントを提供できますLocal Report
。この例では、パラメーターFromDate
を受け入れ、 ToDate
and を使用してそれに応じてデータをフェッチしEntiyDataSource
ます。
page.aspx
<rsweb:ReportViewer ID="ReportViewer1" runat="server"
Height="600px" SizeToReportContent="True"
Width="800px" Font-Names="Verdana" Font-Size="8pt" InteractiveDeviceInfos="(Collection)"
WaitMessageFont-Names="Verdana" WaitMessageFont-Size="14pt">
<LocalReport ReportPath="Report.rdlc">
<DataSources>
<rsweb:ReportDataSource DataSourceId="ObjectDataSource1" Name="DataSet1" />
</DataSources>
</LocalReport>
</rsweb:ReportViewer>
<asp:EntityDataSource ID="EntityDataSource2" runat="server"
ConnectionString="name=FooEntities" DefaultContainerName="FooContainerEntities"
EnableFlattening="False" EntitySetName="Foo_table">
</asp:EntityDataSource>
<asp:EntityDataSource ID="EntityDataSource1" runat="server">
</asp:EntityDataSource>
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server"
SelectMethod="GetList" TypeName="model">
<SelectParameters>
<asp:Parameter DefaultValue="" Name="dateFrom" Type="DateTime"></asp:Parameter>
<asp:Parameter DefaultValue="" Name="dateTo" Type="DateTime"></asp:Parameter>
</SelectParameters>
</asp:ObjectDataSource>
コードビハインド
protected void Button1_Click(object sender, EventArgs e)
{
List<ListData> listData = new List<ListData>();
DateTime dateFrom = Convert.ToDateTime(TextBox1.Text.Trim());
DateTime dateTo = Convert.ToDateTime(TextBox2.Text.Trim());
ReportViewer1.LocalReport.ReportPath = "Report.rdlc";
ReportParameter[] reportParameter = new ReportParameter[2];
reportParameter[0] = new ReportParameter("dateFrom", dateFrom.ToShortDateString());
reportParameter[1] = new ReportParameter("dateTo", dateTo.ToShortDateString());
ReportViewer1.LocalReport.SetParameters(reportParameter);
ReportViewer1.LocalReport.Refresh();
}