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,037

HOME > .NET Framework > Forum > อยากทราบวิธีส่งค่าของ label ตรงๆ ไปยัง report ครับ



 

อยากทราบวิธีส่งค่าของ label ตรงๆ ไปยัง report ครับ

 



Topic : 052533

Guest




ผมอยากทราบว่า ในการเขียน web โดย asp จะมีวิธีเขียน code อย่างไร
หากผมอยากส่งค่าของ label ตรงๆ ไปยัง report เมื่อผมกดปุ่มน่ะครับ
โดยให้ report แสดงข้อความใน label น่ะครับ โดยไม่ต้องติดต่อฐานข้อมูลน่ะครับ
พอจะมีวิธีไหมครับ
ถ้ามีช่วยเขียน code ให้ผมดูเป็นตัวอย่างหน่อยน่ะครับ



Tag : .NET, Web (ASP.NET), C#







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2010-12-01 22:20:06 By : supertwo3 View : 1308 Reply : 23
 

 

No. 1

Guest


ผมใช้ asp.net โดยเขียนด้วย C# น่ะครับ แล้วก็ใช้ crystal report ในการทำ report น่ะครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-01 22:21:33 By : supertwo3
 


 

No. 2



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



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


ส่งเป็น parameter ไปตอนเรียก report อะครับ ไปหาดูและกันมันมีให้ดู
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-01 23:12:16 By : ninggg
 

 

No. 3

Guest


ผมหาเจอแต่ ติดต่อไปฐานข้อมูลก่อนน่ะครับ
ช่วยแนะนำหน่อยได้ไหมครับ ว่าทำยังไง ถึงส่งไปได้เลย โดยไม่ต้องติดต่อฐานข้อมูล
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-01 23:26:19 By : supertwo3
 


 

No. 4

Guest


Code (C#)
Report rpt = new Report();
            string reportPath = Server.MapPath("Report.rpt");
            rpt.Load(reportPath);

            CrystalDecisions.Shared.ParameterFields ParameterFields;

            CrystalDecisions.Shared.ParameterField ParameterField;

            CrystalDecisions.Shared.ParameterDiscreteValue ParameterDiscreteValue;
            ParameterFields = new CrystalDecisions.Shared.ParameterFields();
            ParameterField = new CrystalDecisions.Shared.ParameterField();

            ParameterField.ParameterFieldName = "Year0";
            ParameterDiscreteValue = new CrystalDecisions.Shared.ParameterDiscreteValue();
            ParameterDiscreteValue.Value = "2004";
            ParameterField.CurrentValues.Add(ParameterDiscreteValue);

            rpt.ParameterFields.Add(ParameterField);

            CrystalReportViewer1.ReportSource = rpt;


คือผมพยายามจะส่ง parameter ไปยัง report ตรง ๆ น่ะครับ เลยลองหา code แล้วก็ได้เขียนตามนี้ แต่ยัง error อยู่อีก รบกวนผู้รู้ช่วยแก้ให้หน่อยน่ะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-02 01:14:56 By : supertwo3
 


 

No. 5



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



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


ประกาศแบบนี้ใน Code.cs

rpt.SetParameterValue("@OrdYear", "1996");

ใน .rpt สร้าง Parameter ที่ชื่อเดียวกับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-02 08:22:43 By : superpheak
 


 

No. 6

Guest


เขียน code ตามที่คุณ pheak บอกแล้วครับ แต่มัน error แบบนี้ครับ
จะแก้ไขยังไงดีครับ

ภาพerror
error report

code ที่เขียน
Code (C#)
            Report rpt = new Report();
            string reportPath = Server.MapPath("Report.rpt");
            rpt.Load(reportPath);
            rpt.SetParameterValue("@Year", lb_display.Text);
            CrystalReportViewer1.ReportSource = rpt;

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-02 11:22:14 By : supertwo3
 


 

No. 7



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



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


ใน .rpt สร้าง parameter ชื่อ @Year แล้วเหรอ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-02 16:04:57 By : superpheak
 


 

No. 8



โพสกระทู้ ( 1,348 )
บทความ ( 1 )



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


ลองเขียนโปรแกรม เพื่อ Display Parameter Name ที่มีทั้งหมดใน Report ดูไหม
เผื่อว่าชื่อ Parameter ไม่ตรงกัน

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-02 16:14:19 By : watcharop
 


 

No. 9

Guest


นี้คือ reportของผมครับ ประกาศ @Year แล้วน่ะครับ แต่ไม่เห็นจะได้เลยครับ
error report2
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-02 16:48:05 By : supertwo3
 


 

No. 10



โพสกระทู้ ( 1,348 )
บทความ ( 1 )



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


ผมกลัวว่า เวลาเรียกผ่านทาง Code อ่านต้องผ่านด้วย Year
เลยให้ลองเขียนโปรแกรมอ่านชื่อ Parameter ดูว่ามันขึ้นชื่อว่า Year หรือ @Year
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-02 17:04:39 By : watcharop
 


 

No. 11

Guest


rpt.SetParameterValue()
method นี้เวลาใช้ผมจะใช้ว่่า
rpt.SetParameterValue("Year", lb_display.Text);
เลยได้ไหมครับ ผมเห็นมันฟ้อง Invalid index
คือ ผมสามารถใส่ชื่อ parameter ( ชื่อ Year )กับ ค่าของมัน ที่เป็น string เลยได้ไหมครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-02 17:14:42 By : supertwo3
 


 

No. 12



โพสกระทู้ ( 1,348 )
บทความ ( 1 )



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


หุหุ จริงๆ ผมก็ไม่เคยใช้ Parameter นะ
แต่จากแหล่งข้อมูลที่น่าเชื่อถือ มันบอกว่าได้
ว่าแต่ Parameter มันมีชนิดไหมว่า เป็น Number, Text,...

http://msdn.microsoft.com/en-us/library/ms226143(VS.80).aspx
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-02 17:20:23 By : watcharop
 


 

No. 13



โพสกระทู้ ( 1,348 )
บทความ ( 1 )



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


รู้สึกว่า Parameter ก็มี DataType เหมือนกันนะ
งั้นลอง Test แบบนี้ไปก่อนล่ะกัน
ถ้า Year เป็น Number

Code (C#)
rpt.SetParameterValue("Year", 2010);



ประวัติการแก้ไข
2010-12-02 17:25:01
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-02 17:24:17 By : watcharop
 


 

No. 14

Guest


rpt.SetParameterValue("Year", 2010);

ลองแบบนี้แล้วเหมือนกันครับ ไม่ได้อ่ะครับ error เหมือนเดิมเลยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-02 17:38:54 By : supertwo3
 


 

No. 15



โพสกระทู้ ( 1,348 )
บทความ ( 1 )



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


เออ มิทราบว่า ถ้าสร้าง Report เปล่าๆ แล้วไม่ต้องใส่ parameter ใดๆ เลย
มัน Error ไหมครับ

รู้สึก Case นี้ยากจัง เผ่นล่ะ
เผชิญชะตากรรมตามลำพังล่ะกันนะ
หรือไม่ถ้ายังมีบุญอยู่ เดี๋ยวฟ้าคงประทานเทพมาช่วย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-02 17:46:34 By : watcharop
 


 

No. 16



โพสกระทู้ ( 1,348 )
บทความ ( 1 )



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


ว่า rpt ควรเป็น Instance ของ Class CrystalDecisions.CrystalReports.Engine.ReportDocument นี้รึเปล่า
เพิ่งเห็นว่าคุณใช้ Report rpt = new Report();

http://msdn.microsoft.com/en-US/library/ms226072(v=VS.80).aspx
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-02 17:54:27 By : watcharop
 


 

No. 17

Guest


ผมลองปรับเป็นประกาศแบบ

CrystalDecisions.CrystalReports.Engine.ReportDocument rpt = new ReportDocument();

แต่ก็ยังไม่ได้น่ะครับ ทำไงดีครับ ทดลองจน งง หมดแล้วครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-02 18:17:11 By : supertwo3
 


 

No. 18

Guest


ตอบความคิดเห็นที่ : 9 เขียนโดย : supertwo3 เมื่อวันที่ 2010-12-02 16:48:05
รายละเอียดของการตอบ ::
Parameter ครับไม่ใช่ Formular fileds
ที่คุณสร้างนะ มันไม่ใช่ parameter งืดเลย...

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-02 22:09:29 By : pheak
 


 

No. 19

Guest


ผมทำแบบ parameter ได้แล้ว ขอบคุณทุกคนมากครับ

แต่มีคำถามเพิ่ม
ว่าพอจะมีวิธีจะส่ง Dataset เข้าไปใน report ไหมครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-02 23:23:07 By : supertwo3
 


 

No. 20

Guest


ผมจะทำให้มันไม่ใส่ค่าพวกนี้ยังไงครับ

คือผมไม่อยากจะติดต่อกับฐานข้อมูลน่ะครับ

dataseterror
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-03 00:15:54 By : supertwo3
 


 

No. 21



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



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


Concept คร่าวๆ ครับ
1. สร้าง DataSet ขึ้นมา โดยไปที่ project >> Add new Item >> Dataset
2. ในหน้า Dataset เลือก Server Explorer เลือก Connect Database จากนั้นก็ เลือก database
Step มันก็คล้าย ตอน config SqlDatasource (เช่นผมเลือก Table Employees ใน Northwind)
3.กลับมาที่ Report ไปที่ Crystal Report >> Database >> Database Expert จะมี Dialog มา
ให้เลือก ไปที่ ProjectData>> ADO.Net Datasets เลือก Dataset ที่สร้างใว้
4. ทีนี้ Report ก็จะเห็น Fileds ต่างๆ ใน Dataset ก็ออกแบบไป


ต่อมา มา Coding

string sql = "select * from Employees";
da.Fill(ds,"tblEmployees"); //สมมุตได้ประมาณนี้

ReportDocument rpt = new ReportDocument();
rpt.Load(Server.MapPath("Employee.rpt"));
rpt.SetDatabaseLogon(userid,password,hostName,databaseName);
rpt.SetDataSource(dsEmp.Tables[0].DefaultView); // อย่าลืม .DefaultView
CrystalReportViewer1.ReportSource = rpt;

ติดตรงไหนอีก -*-
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-03 08:42:26 By : superpheak
 


 

No. 22

Guest


ขอบคุณครับได้แล้วล่ะครับ ขอบคุณทุกคนมากเลยน่ะครับ

แต่ขอถามต่อหน่อยน่ะครับ

คือว่า ผม มี table 2 อัน แล้วมีข้อความ a อยู่ 1 ข้อความ

แล้วผมต้องการแสดง report ดังนี้

1. แสดงข้อมูลใน table1 ทั้งหมด ก่อน
2. แสดงข้อความ a 1 ครั้งเท่านั้น
3. แสดงข้อมูลทั้งหมดใน table2 ตามหลัง

ผมจะแบ่ง section ยังไงดีครับ
เพราะว่ามันมี detail แค่อันเดียว

รบกวนผู้รู้ช่วยตอบหน่อยน่ะครับ พอดีเพิ่งหัดเขียน เลยอาจมีคำถามมากหน่อย ขอโทษด้วยน่ะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-03 15:27:05 By : supertwo3
 


 

No. 23



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



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


ลองเข้าไปอ่าน Blog ของพี่คนนี้ก่อน เขาเขียนใว้เยอะอยู่
http://janawat.wordpress.com/category/crystal-reports/
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-03 15:39:53 By : superpheak
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : อยากทราบวิธีส่งค่าของ label ตรงๆ ไปยัง report ครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

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