|
|
|
สอบถามเรื่องการออก Report ครับโดยให้ค่าที่อยู่ใน Formที่อยู่ใน (DataGrid) และค่าที่อยู่ใน Combobox แสดงออกมาบน Report ครับ |
|
|
|
|
|
|
|
ใช้พวก Crystal Report ก็ได้ครับ โดยทำเป็น DataSet หรือ DataTable ก่อนครับ จากนั้นค่อยโยนค่าให้กับ Crystal Report ครับ
การสร้าง Crystal Report กับ DataSet หรือ DataTable (VB.NET,C#)
อันนี้ตัวอย่างการสร้าง DataTable แบบ Manual ครับ
Code (C#)
//*** TableRows (DataTable) ***//
protected DataTable DataTableRows()
{
DataTable dt = new DataTable();
DataRow dr;
//*** Column ***//
dt.Columns.Add("CustomerID");
dt.Columns.Add("Name");
dt.Columns.Add("Email");
dt.Columns.Add("CountryCode");
dt.Columns.Add("Budget");
dt.Columns.Add("Used");
//*** Rows ***//
dr = dt.NewRow();
dr["CustomerID"] = "C001";
dr["Name"] = "Win Weerachai";
dr["Email"] = "[email protected]";
dr["CountryCode"] = "TH";
dr["Budget"] = "1000000";
dr["Used"] = "600000";
dt.Rows.Add(dr);
//*** Rows ***//
dr = dt.NewRow();
dr["CustomerID"] = "C002";
dr["Name"] = "John Smith";
dr["Email"] = "[email protected]";
dr["CountryCode"] = "EN";
dr["Budget"] = "2000000";
dr["Used"] = "800000";
dt.Rows.Add(dr);
return dt; //*** Return DataTable ***//
}
|
|
|
|
|
Date :
2013-01-10 10:05:29 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมขอ โค้ดตอนคำสั่งนำ Datatable ออกมาเข้า Report หน่ยได้ไหมครับ
Code ของผมมันเป็นอย่างนี้อะครับ ผมเคยใช้ แต่ FastReport อะครับ Crystal Report ก็เลยทำไม่เป็นอะครับที่ทำงานใหม่ไม่ได้ซื้อ Licence ของ FastReport เลยตายเลยครับผม
Code (C#)
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.Data.SqlClient;
using System.Configuration;
using CrystalDecisions.CrystalReports;
namespace testCrystalreport
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
DataTable dt = null;
private void Form1_Load(object sender, EventArgs e)
{
this.reportViewer1.RefreshReport();
dt.Columns.Add("col1", typeof(string));
dt.Columns.Add("col2", typeof(string));
dt.Columns.Add("col3", typeof(string));
}
private void button1_Click(object sender, EventArgs e)
{
DataRow Drre = dt.NewRow();
Drre["col1"] = "cc";
Drre["col2"] = "bb";
Drre["col3"] = "dd";
dt.Rows.Add(Drre);
ReportDocument rpt = new ReportDocument(); //ตรงนี้มันไม่เจอ Class อะครับต้อง add references อะไรเข้ามาหรือเปล่าครับ
string directory = Application.StartupPath;
//rpt.Load(directory & "\\myCrystalReport1.rpt")
rpt.Load("D:\\testCrystalreport\\myCrystalReport3.rpt");
rpt.SetDataSource(dt);
this.reportViewer1.DataBindings.Equals(rpt);
this.reportViewer1.Refresh();
}
}
|
ประวัติการแก้ไข 2013-01-11 14:12:21
|
|
|
|
Date :
2013-01-11 14:06:31 |
By :
teerapat_kan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มีใครพอจะทราบไหมครับ ยังรอผู้รู้อยู่นะครับ ขอบคุณมากครับ
|
|
|
|
|
Date :
2013-01-13 14:15:24 |
By :
teerapat_kan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Date :
2013-01-14 09:18:46 |
By :
teerapat_kan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|