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

HOME > .NET Framework > Forum > การดึงภาพในฐานข้อมูลมาแสดงใน Crystal Report บน Visual Studio (VB.NET)



 

การดึงภาพในฐานข้อมูลมาแสดงใน Crystal Report บน Visual Studio (VB.NET)

 



Topic : 120863



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



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




ต้องการดึงไฟล์รูปภาพจากฐานข้อมูลมาแสดงใน Crystal Report รบกวนผู้รู้ช่วยสอนเขียนโค๊ดหน่อยค่ะ เขียนเป็น VB.net

ex1

ex2


ex3

พอดีลองเขียนโค๊ดดูแล้ว แต่มีปัญหาเรื่องการชี้ path ค่ะ กำหนดไม่ถูก รบกวนช่วยชี้แนะวิธีให้หน่อยค่ะ



Tag : .NET, VB.NET







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2016-01-13 11:53:21 By : nunan13 View : 6217 Reply : 22
 

 

No. 1



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

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

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

ต้องใช้พวก Subreport ครับ ผมมีตัวอย่างการแทรกรุปภาพให้ดูครับ

Code (VB.NET)
        '*** for Logo Sub Report (Start) ***'
        Dim dtLogo As New DataTable("logo")
        Dim dr As DataRow
        dtLogo.Columns.Add(New DataColumn("Logo", GetType(System.Byte())))
        dtLogo.Columns.Add(New DataColumn("Company", GetType(String)))
        Dim fiStream As New FileStream(Server.MapPath("Images/thaicreate.jpg"), FileMode.Open)
        Dim binReader As New BinaryReader(fiStream)
        Dim pic() As Byte = {}
        pic = binReader.ReadBytes(fiStream.Length)

        dr = dtLogo.NewRow
        dr("Logo") = pic
        dr("Company") = "ThaiCreate.Com Co,. LTD"
        dtLogo.Rows.Add(dr)

        fiStream.Close()
        binReader.Close()
        '*** for Logo Sub Report (End) ***'




สร้าง Sub Report (Subreport) บน Crystal Report แบบ Step by Step (VB.NET /C#)







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-13 12:00:05 By : mr.win
 


 

No. 2



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



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


ตอบความคิดเห็นที่ : 1 เขียนโดย : mr.win เมื่อวันที่ 2016-01-13 12:00:05
รายละเอียดของการตอบ ::
กรณีนี้ ภาพจะเปลี่ยนตามข้อมูลที่เลือกไหมคะ ขอสอบถามเพิ่มเติมค่ะ พอดีเขียนเป็นแบบ Window form ธรรมดา แต่ใน Codeตัวอย่างเป็น ASP ใช้ได้เหมือนกันใช่ไหมคะ พอดีเขียนแล้วติดตรง Inherits System.Web.UI.Page
และติดตรง Dim fiStream As New FileStream(Server.MapPath(dt.Rows(i)("Picture")), FileMode.Open)
ใน Code error ตรงคำว่า Server จะแก้อย่างไรคะ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-13 13:15:05 By : nunan13
 

 

No. 3



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



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


ลองทำแล้ว ภาพไม่แสดง ช่วยหน่อยค่ะ เป็นเพราะอะไรคะ

imgprogram

Code
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim objConn As New SqlConnection
        Dim objCmd As New SqlCommand
        Dim dtAdapter As New SqlDataAdapter
        Dim DSreport As New DataSet()

        Dim SqlReader As SqlClient.SqlDataReader

        Dim Conn As New SqlClient.SqlConnection()
        

        Dim ds As New DataSet
        Dim dt As DataTable
        Dim strConnString, strSQL As String

        strConnString = "Server=192.168.0.42;Database=DBMT;user id=sa;password=P@ssw0rd"
        '  strSQL = "SELECT p.pro_code,p.pro_name,p.pro_cost,p.pro_min,p.pro_stock,u.u_unitname FROM MTcodeproducts p left join MTunit u on p.pro_unit=u.u_unitid where p.group_code='804' and p.pro_min < p.pro_stock "
        strSQL = "SELECT * FROM MTmach WHERE pro_mach = '" & Me.TextBox1.Text & "' "

        objConn.ConnectionString = strConnString
        With objCmd
            .Connection = objConn
            .CommandText = strSQL
            .CommandType = CommandType.Text
        End With
        dtAdapter.SelectCommand = objCmd

        dtAdapter.Fill(ds, "myDataTableHM")
        dt = ds.Tables(0)

        Conn = New SqlConnection(strConnString)

        Conn.Open()

        Dim DTT As New DataTable("myDataTableHM")

        ' DTT.Columns.Add("ID", GetType(String))

        '  DTT.Columns.Add("FName", GetType(String))

        ' DTT.Columns.Add("LName", GetType(String))

        DTT.Columns.Add("mach_img", GetType(System.Byte()))

        DSreport.Tables.Add(DTT)

        Dim SqlAdapter As New SqlClient.SqlDataAdapter(strSQL, Conn)


        SqlReader = SqlAdapter.SelectCommand.ExecuteReader

        If SqlReader.HasRows Then

            While SqlReader.Read

                Dim path As String = Application.StartupPath + "\" + SqlReader.Item("mach_img").ToString()

                Dim FilStr As New FileStream(path, FileMode.Open) ' เปิด file แบบ Stream เพื่ออ่านเป็น Binary

                Dim BinRead As New BinaryReader(FilStr)

                Dim DR As DataRow = DSreport.Tables("myDataTableHM").NewRow

                ' Add ข้อมูลที่อ่านจาก SQL Base ใส่เข้าไปแต่ละ Rows ของ Temp Table

                '  DR.Item("ID") = SqlReader.Item("ID")

                '  DR.Item("FName") = SqlReader.Item("FName")

                '  DR.Item("LName") = SqlReader.Item("LName")

                ' Column Photo ใส่ข้อมูล Binary

                DR.Item("mach_img") = BinRead.ReadBytes(BinRead.BaseStream.Length)

                DSreport.Tables("myDataTableHM").Rows.Add(DR) 'Add Row เข้าไปใน Temp Table

                FilStr.Close() '//ปิด FileStream

                BinRead.Close()

            End While

            SqlReader.Close()




            dtAdapter = Nothing
            objConn.Close()
            objConn = Nothing

            Dim rpt As New ReportDocument()
            Dim directory As String = My.Application.Info.DirectoryPath
            'rpt.Load(directory & "\myCrystalReport1.rpt")
            rpt.Load("D:\Program_ECF\MT\ECF_LOTUS\CrystalReportHmach.rpt")
            rpt.SetDataSource(dt)
            Me.CrystalReportViewer1.ReportSource = rpt
            Me.CrystalReportViewer1.Refresh()
        End If
    End Sub



ประวัติการแก้ไข
2016-01-13 16:37:07
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-13 16:29:59 By : nunan13
 


 

No. 4



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



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


Filed ที่ลากเข้าไปใน Crystal Report เป็น Byte หรือยังครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-13 16:44:04 By : fonfire
 


 

No. 5



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



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


ตอบความคิดเห็นที่ : 4 เขียนโดย : fonfire เมื่อวันที่ 2016-01-13 16:44:04
รายละเอียดของการตอบ ::
เช็ตแล้วค่ะ System.byte()



ประวัติการแก้ไข
2016-01-14 12:04:29
2016-01-14 12:04:35
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-14 12:00:37 By : nunan13
 


 

No. 6



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



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


รบกวนผู้รู้ ช่วยหน่อยค่ะ ยังติดอยู่เลยค่ะ รูปไม่โชว์
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-14 14:25:45 By : nunan13
 


 

No. 7

Guest


ลองดูตามนี้นะครับ
ให้ทำเหมือนคำตอบท้ายๆ ถ้าเข้าใจก็จะได้ครับ
http://stackoverflow.com/questions/3170387/display-image-in-crystal-report-using-physical-path
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-14 16:14:53 By : บัญดิษฐ
 


 

No. 8



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



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


ตอบความคิดเห็นที่ : 7 เขียนโดย : บัญดิษฐ เมื่อวันที่ 2016-01-14 16:14:53
รายละเอียดของการตอบ ::
ใช่แบบนี้ปะคะ แล้วตรงเลือกไฟล์ทำยังไงค่ะคะ แต่ถ้าใช้วิธีนี้ไม่ต้องเขียน source code อะไรเพิ่มแล้วหรอคะ รบกวนช่วยชี้แนะหนอ่ยคะ่
pic001
pic002
pic003

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-15 07:55:05 By : nunan13
 


 

No. 9



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



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


จริง ๆ แล้วมันแค่ set filed ให้เป็น byty() ก็ใช้ได้แล้วครับ
แต่ผมสงสัยตรง filed ที่เอาเข้าในไปใน crystal report มากกว่า
ลองเอา mouse ไปวางที่รูปภาพดูครับ ว่ามันขึ้นว่า Blob Field หรือปล่าว

อันนี้ผมทำตัวอย่างให้ดู

https://drive.google.com/file/d/0B_86m1NvJJzOLVZ0eTN3RnMyS2c/view?usp=sharing
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-15 08:36:33 By : fonfire
 


 

No. 10

Guest


ผมว่าเข้าจองกระทู้ใช้ DataBase fields การจาก query จาก Base ตรง แบบโยน Parameter Where มา ซึ่งจากที่ดูจาก DataBase เก็บเป้น Path File รูปไว้ ซึ่งจากที่ดูใน Internet เค้าจะแนะนำว่า ให้ทำการใช้ Dataset ของ .net ช่วย โดยสร้าง Add Dataset เข้ามาใน โปรเจค จากนั้นสร้าง Column Byte() เข้าไป แล้วเขียน Code query จาก Database convert จาก path File เป้น Byte() แล้วจากนั้นก็โยน DataSet เค้า report แทน ซึ่ง Crystal report มองว่าเป็น Byte() มันจะเป้นรูปเองครับ

ลองดูนะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-15 10:30:51 By : joevoy
 


 

No. 11



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



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


ตอบความคิดเห็นที่ : 9 เขียนโดย : fonfire เมื่อวันที่ 2016-01-15 08:36:33
รายละเอียดของการตอบ ::
โหลดไม่ได้อ่ะค่ะ รบกวนขอใหม่อีกรอบได้ไหมคะ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-15 13:48:04 By : nunan13
 


 

No. 12



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



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


ตอบความคิดเห็นที่ : 10 เขียนโดย : joevoy เมื่อวันที่ 2016-01-15 10:30:51
รายละเอียดของการตอบ ::
ใช่ค่ะ ใช้ Dataset ค่ะ แต่ไม่แน่ใจว่าทำผิดพลาดประการใด ภาพเลยไม่โชว์
pic005
pic004

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-15 13:52:06 By : nunan13
 


 

No. 13



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



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


ลองโหลดใหม่ดูครับ
http://www.drop4shared-remove-by-admin.com/d495f7ce

ทำไม filed โชว์เป็น string ล่ะครับ
filed ผมขึ้นแบบนี้น่ะครับ
ปปปป
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-15 14:40:34 By : fonfire
 


 

No. 14



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



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


ตอบความคิดเห็นที่ : 13 เขียนโดย : fonfire เมื่อวันที่ 2016-01-15 14:40:34
รายละเอียดของการตอบ ::
โหลดได้แล้วค่ะ แต่เปิดไม่ได้ ที่ใช้อยู่เป็น VB 2010 ไม่ทราบว่าของคุณ FONFIRE ใช้ v. ไหนคะ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-15 15:22:54 By : nunan13
 


 

No. 15



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



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


ผมใช้ 2013 อ่ะครับ T__T

ลองเปิด VS2010 ขึ้นมาก่อน
แล้วกด Open จาก VS ดูครับ
อย่า double click ที่ไฟล์โดยตรง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-15 15:32:08 By : fonfire
 


 

No. 16



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



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


http://stackoverflow.com/questions/20486230/how-to-convert-visual-studios-2013-project-to-visual-studios-2010
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-15 15:38:42 By : fonfire
 


 

No. 17



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



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


ตอบความคิดเห็นที่ : 15 เขียนโดย : fonfire เมื่อวันที่ 2016-01-15 15:32:08
รายละเอียดของการตอบ ::
เปิดไม่ได้อ่ะค่ะ รบกวนแปลงเป็น2010 ได้ไหมคะ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-15 16:59:05 By : nunan13
 


 

No. 18



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



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


ยังทำไม่ได้เลย รบกวนช่วยหน่อยค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-16 09:46:37 By : nunan13
 


 

No. 19

Guest


ยังไม่ได้อีกเหรอครับ อืมงั้นเอา link จาก youtube มาให้ดู
ว่าจะทำตัวอย่างให้แต่ไม่ได้ลง Crystal report ลองดูตามนี้นะ
ไม่ได้อย่างไงก็บอกด้วย หรือจะให้ช่วย remote ก็ได้

[email protected]



https://www.youtube.com/watch?v=mmzudQpRB_0
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-16 11:18:58 By : บัญดิษฐ
 


 

No. 20



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



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


ตอบความคิดเห็นที่ : 19 เขียนโดย : บัญดิษฐ เมื่อวันที่ 2016-01-16 11:18:58
รายละเอียดของการตอบ ::
รบกวนช่วย Remote ดูให้หน่อยได้ไหมคะ แนนส่งเมลล์แจ้ง User ID password นะคะ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-19 07:35:34 By : nunan13
 


 

No. 21



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



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


ตอบความคิดเห็นที่ : 19 เขียนโดย : บัญดิษฐ เมื่อวันที่ 2016-01-16 11:18:58
รายละเอียดของการตอบ ::
ขอบคุณมาค่ะ ที่ช่วยดูให้



ประวัติการแก้ไข
2016-01-20 07:56:06
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-01-19 12:27:55 By : nunan13
 


 

No. 22

Guest


columnที่สร้างเพื่อแสดงรูปภาพ ใน .xsd ต้องให้เป็นประเภท system.byte() มีวงเล็บด้วยนะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-07-28 15:38:09 By : สุนทร
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : การดึงภาพในฐานข้อมูลมาแสดงใน Crystal Report บน Visual Studio (VB.NET)
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 01
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 อัตราราคา คลิกที่นี่