0

Microsoft Access 2007 に 2 つのテーブルがあります。

テーブル名「BillDetail」と「BillMaster」

BillMaster に含まれるフィールドは、BillNO、BillType、Dt、PartyName です。

BillDetail テーブルに含まれるフィールドは次のとおりです。 BillNo(Ref) Serial No. Desc HSNCode 数量率。

両方のテーブルからデータをフェッチする必要があります。マスター レコードはヘッダーに表示され、すべての関連項目は表形式で表示されます。そして、最終的にこれらの情報を請求書として印刷したいと考えています。

私の基本的なニーズは、Crystal レポートを使用しないことです。私はインターネット上で多くのことを検索し、ReportViewer コントロールを使用するソリューションを見つけました。残念ながら、このコントロールを使用してレポートを作成する方法がわかりません。レポートを生成したり、チュートリアルのリンクを投稿したりするのを手伝ってください。

助けてください。私は Windows アプリケーション開発の初心者です。

4

3 に答える 3

2

rdlレポート ビューアー コントロールは、またはrdlcファイルで定義されているレポートを表示できます。

rdl「レポート定義言語」の略で、「C」は「サーバー レポート」に対する「クライアント レポート」の略です。

そのため、レポート サーバーがインストールされていない場合は、レポートrdlcのデータ ソースとして Access 2007 DB を使用してアタッチすることをお勧めします。

rdlcレポート ファイルを作成し、レポート ビューアー コントロールを使用するためのいくつかのチュートリアルを次に示します。

CodeProject - レポート、つまり rdlc ファイルをプロジェクト フォームに接続する方法。

ssrs を使用してスタンドアロンの .rdlc レポートを作成するための初心者向けガイド

于 2013-03-01T06:59:11.720 に答える
0
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Configuration;


using System.Data.SqlClient;
using Microsoft.Reporting.WinForms;

namespace RDLC
{
    public partial class RD : Form
    {
        public RD()
        {
            InitializeComponent();
        }

        private void RD_Load(object sender, EventArgs e)
        {
            DataTable dt = new DataTable();
            dt = GetData("select * from tbl_Admission_Form");
            ReportDataSource datasource = new ReportDataSource("DataSet1", dt);
            reportViewer1.LocalReport.DataSources.Clear();
            reportViewer1.ProcessingMode = ProcessingMode.Local;
            reportViewer1.LocalReport.ReportEmbeddedResource = "RDLC.Report1.rdlc";
            reportViewer1.LocalReport.DataSources.Add(datasource);
            //this.reportViewer1.RefreshReport();
            this.reportViewer1.RefreshReport();
        }
        private DataTable GetData(string query)
        {
            string conString = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
            SqlConnection con = new SqlConnection(conString);
            con.Open();
            SqlCommand cmd = new SqlCommand(query);
            cmd.Connection = con;
            cmd.ExecuteNonQuery();
            cmd.Dispose();
            SqlDataAdapter sda = new SqlDataAdapter(cmd);
            DataTable ds = new DataTable();
            sda.Fill(ds);
            return ds;
        }
    }
}
于 2018-07-17T15:23:32.647 に答える