Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,038

HOME > .NET Framework > Forum > ASP.Net สอบถามวิธีการทำ Crystal Report จากข้อมูลใน GridView ครับ ^ ^"


 

[.NET] ASP.Net สอบถามวิธีการทำ Crystal Report จากข้อมูลใน GridView ครับ ^ ^"

 
Topic : 099943



โพสกระทู้ ( 38 )
บทความ ( 0 )



สถานะออฟไลน์



สอบถามวิธีการทำCrystal Report จากข้อมูลใน GridView ครับ ^ ^"

จากโค้ด



Code (C#)
001.using System;
002.using System.Data;
003.using System.Web.UI.WebControls;
004. 
005.protected void Page_Load(object sender, EventArgs e)
006.{
007.     if (!IsPostBack)
008.   {
009.               BindGridview();
010.               BindSecondGrid();
011.   }
012.}
013. 
014.protected void BindGridview()
015.{
016.            DataTable dt = new DataTable();
017.            dt.Columns.Add("UserId", typeof(Int32));
018.            dt.Columns.Add("UserName", typeof(string));
019.            dt.Columns.Add("Education", typeof(string));
020.            dt.Columns.Add("Location", typeof(string));
021.            DataRow dtrow = dt.NewRow();   
022.            dtrow["UserId"] = 1;        
023.            dtrow["UserName"] = "SureshDasari";
024.            dtrow["Education"] = "B.Tech";
025.            dtrow["Location"] = "Chennai";
026.            dt.Rows.Add(dtrow);
027.            dtrow = dt.NewRow();              
028.            dtrow["UserId"] = 2;            
029.            dtrow["UserName"] = "MadhavSai";
030.            dtrow["Education"] = "MBA";
031.            dtrow["Location"] = "Nagpur";
032.            dt.Rows.Add(dtrow);
033.            dtrow = dt.NewRow();            
034.            dtrow["UserId"] = 3;             
035.            dtrow["UserName"] = "MaheshDasari";
036.            dtrow["Education"] = "B.Tech";
037.            dtrow["Location"] = "Nuzividu";
038.            dt.Rows.Add(dtrow);
039.            gvDetails.DataSource = dt;
040.            gvDetails.DataBind();
041.}
042.protected void chkSelect_CheckChanged(object sender, EventArgs e)
043.{
044.          GetSelectedRows();
045.          BindSecondGrid();
046.}
047.protected void BindSecondGrid()
048.{
049.         DataTable dt = (DataTable)ViewState["GetRecords"];
050.         gvTranferRows.DataSource = dt;
051.         gvTranferRows.DataBind();
052.}
053.private void GetSelectedRows()
054.{
055.            DataTable dt;
056.          if (ViewState["GetRecords"] != null)
057.     {
058.              dt = (DataTable)ViewState["GetRecords"];
059.     }
060.          else
061.     {
062.              dt = CreateTable();
063.     }
064.         for (int i = 0; i < gvDetails.Rows.Count; i++)
065.    {
066.              CheckBox chk = (CheckBox)gvDetails.Rows[i].Cells[0].FindControl("chkSelect");
067.         if (chk.Checked)
068.        {
069.              dt = AddGridRow(gvDetails.Rows[i], dt);
070.         }
071.         else
072.        {
073.             dt = RemoveRow(gvDetails.Rows[i], dt);
074.        }
075.   }
076.          ViewState["GetRecords"] = dt;
077.}
078. 
079.private DataTable CreateTable()
080.{
081.     DataTable dt = new DataTable();
082.     dt.Columns.Add("UserId");
083.     dt.Columns.Add("UserName");
084.     dt.Columns.Add("Education");
085.     dt.Columns.Add("Location");
086.     dt.AcceptChanges();
087.     return dt;
088.}
089. 
090.private DataTable AddGridRow(GridViewRow gvRow, DataTable dt)
091.{
092.         DataRow[] dr = dt.Select("UserId = '" + gvRow.Cells[1].Text + "'");
093.     if (dr.Length <= 0)
094.   {
095.           dt.Rows.Add();
096.           int rowscount = dt.Rows.Count - 1;
097.           dt.Rows[rowscount]["UserId"] = gvRow.Cells[1].Text;
098.           dt.Rows[rowscount]["UserName"] = gvRow.Cells[2].Text;
099.           dt.Rows[rowscount]["Education"] = gvRow.Cells[3].Text;
100.           dt.Rows[rowscount]["Location"] = gvRow.Cells[4].Text;
101.           dt.AcceptChanges();
102.    }
103.              return dt;
104.}
105. 
106.private DataTable RemoveRow(GridViewRow gvRow, DataTable dt)
107.{
108.            DataRow[] dr = dt.Select("UserId = '" + gvRow.Cells[1].Text + "'");
109.       if (dr.Length > 0)
110.    {
111.              dt.Rows.Remove(dr[0]);
112.              dt.AcceptChanges();
113.    }
114.            return dt;
115.}


ฌพรก

การทำงานจะเป็นการคลิกเลือกที่ช่อง CheckBox ของ GridView อันที่หนึ่งที่ชื่อ gvDetails เพื่อส่งค่าไปปรากฏในGridView อีกอันที่ชื่อ gvDetails ในขั้นตอนนี้ผมอยากทราบว่าเราสามารถเอาข้อมูลใน gvDetails นี่ไปทำเป็น crystal report ได้ไหมครับ พอจะบอกวิธีการหรือตัวอย่างในศึกษาได้ไหมครับ ^ ^"

เครดิต :http:// http://www.aspdotnet-suresh.com/2013/05/move-selected-gridview-rows-to-another.html
เป็นตัวอย่างที่ค้นเจอในอินเตอร์เน็ตน่ะครับ ซึ่งมีการทำงานคล้ายกับงานของผมเอง แต่งานของผมมีส่วนที่ไม่อาจเอามาแสดงได้ จึงเอามาเป็นตัวอย่างน่ะครับ ^ ^"



Tag : ASP.NET VS 2012 (.NET 4.x)



ประวัติการแก้ไข
2013-09-03 00:14:48
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2013-09-03 00:12:05 By : Spada_555 View : 1215 Reply : 2
 

 

No. 1



โพสกระทู้ ( 74,059 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ทำเป็น DataTable จะได้ครับ คือทำอะไรก็ตามเอาข้อมูลทีได้ไปอยู่ในรูปแบบของ DataTable

การสร้าง Crystal Report กับ DataSet หรือ DataTable (VB.NET,C#)


ตัวอย่างการทำ DataTable

Code (C#)
01.DataTable dt = new DataTable();
02.DataRow dr;
03. 
04.//*** Column ***//
05.dt.Columns.Add("CustomerID");
06.dt.Columns.Add("Name");
07.dt.Columns.Add("Email");
08.dt.Columns.Add("CountryCode");
09.dt.Columns.Add("Budget");
10.dt.Columns.Add("Used");
11. 
12.//*** Rows ***//
13.dr = dt.NewRow();
14.dr["CustomerID"] = "C001";
15.dr["Name"] = "Win Weerachai";
16.dr["Email"] = "win.weerachai@thaicreate.com";
17.dr["CountryCode"] = "TH";
18.dr["Budget"] = "1000000";
19.dr["Used"] = "600000";
20.dt.Rows.Add(dr);
21. 
22.//*** Rows ***//
23.dr = dt.NewRow();
24.dr["CustomerID"] = "C002";
25.dr["Name"] = "John Smith";
26.dr["Email"] = "john.smith@thaicreate.com";
27.dr["CountryCode"] = "EN";
28.dr["Budget"] = "2000000";
29.dr["Used"] = "800000";
30.dt.Rows.Add(dr);
31. 
32.//*** Rows ***//
33.dr = dt.NewRow();
34.dr["CustomerID"] = "C003";
35.dr["Name"] = "Jame Born";
36.dr["Email"] = "jame.born@thaicreate.com";
37.dr["CountryCode"] = "US";
38.dr["Budget"] = "3000000";
39.dr["Used"] = "600000";
40.dt.Rows.Add(dr);
41. 
42.//*** Rows ***//
43.dr = dt.NewRow();
44.dr["CustomerID"] = "C004";
45.dr["Name"] = "Chalee Angel";
46.dr["Email"] = "chalee.angel@thaicreate.com";
47.dr["CountryCode"] = "US";
48.dr["Budget"] = "4000000";
49.dr["Used"] = "100000";
50.dt.Rows.Add(dr);

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-03 09:35:06 By : mr.win
 

 

No. 2



โพสกระทู้ ( 38 )
บทความ ( 0 )



สถานะออฟไลน์


ขอบคุณมากครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-09-04 20:00:30 By : Spada_555
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ASP.Net สอบถามวิธีการทำ Crystal Report จากข้อมูลใน GridView ครับ ^ ^"
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)





ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่