Rumah  >  Artikel  >  pembangunan bahagian belakang  >  C#初步体验FastReport 报表(图)

C#初步体验FastReport 报表(图)

黄舟
黄舟asal
2017-03-10 13:41:225582semak imbas

原来程序使用的Word和Excel来做一些导出数据和打印的操作,可是运行一段时间发现总有一些用户的电脑上安装的Office有些问题,还需要重新安装调整造成一些额外的维护工作。

这里通过简单尝试使用FastReport来代替Office,将一些需要导出的数据以报表的形式生成,需要的话可以另存成excel格式,这样就能减少一些不必要的麻烦。

程序里将连接信息从报表中提出来,避免报表文件的不安全,另外这个连接信息可以单独做到配置文件中即可。




using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace 测试FastReport
{
    public partial class Form1 : Form
    {
        private DataSet data; 

        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string conStr = "Server='127.0.0.1';Initial catalog=WaiMaoJinKou;UID='sa';PWD='12345';Max Pool Size=512;";
            try
            {
                SqlConnection con = new SqlConnection(conStr);
                con.Open();
                SqlCommand sqlcmd = new SqlCommand();
                sqlcmd.Connection = con;
                sqlcmd.CommandText = @"SELECT * FROM [Event] ";
                SqlDataAdapter sda = new SqlDataAdapter(sqlcmd);
                data = new DataSet();
                sda.Fill(data);
                con.Close();
                sda.Dispose();
            }
            catch (Exception err)
            {
                MessageBox.Show(err.StackTrace);
            }

            try
            {
                FastReport.Report report = new FastReport.Report();
                //string filename = Application.StartupPath + @"\FrxReport\qualityEvent.frx";
                string filename = @"D:\qualityEvent.frx";

                report.Load(filename);
                report.RegisterData(data);
                report.GetDataSource(data.Tables[0].TableName).Enabled = true;
                report.Show();
            }
            catch (Exception err)
            {
                MessageBox.Show(err.Message);
            }
        }
    }
}

试了几次,只有使用.Net4.0的时候,FastReport才会被识别出来,所以开发的项目也需要重新设置一下,重新安装.Net4.0的框架包。


Atas ialah kandungan terperinci C#初步体验FastReport 报表(图). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn