PDA

View Full Version : سوال: نمایش دادن یک تصویر در کریستال ریپورت



Ship Storm
شنبه 07 اردیبهشت 1392, 23:29 عصر
سلام بر اساتید بزرگوار
من یک Picture دارم روی فرم کریستال ریپورتم ولی وقتی ارتباطش میدم به Sql فقط کد عکس رو قرار میده تو گزارش ، میخوام بدونم چطور میتونم کاری کنم که خود عکس رو هم نمایش بده ؟
ممنون

sinaone1
یک شنبه 08 اردیبهشت 1392, 16:35 عصر
دوست عزیز شما اگه نوع فیلدتون توی SQL از نوع image باشه و درست اونو ذخیره کرده باشید کریستال ریپورت خودش خودکار اونو باز میکنه

hessam2003
یک شنبه 08 اردیبهشت 1392, 16:42 عصر
سلام.
نوع فیلدتون در جدول باید از نوع Image باشه.
picturebox باید در حالت streach عکس را بگیرد.
وقتی آدرس عکس را ذخیره کنید خود datagridwiew فیلد عکس را در اندازه 40*40 px نمایش میده. که اندازه قابل تغییر است.
موفق باشید.

Ship Storm
یک شنبه 08 اردیبهشت 1392, 20:38 عصر
ممنون
من دو تا عکس از فرم هام بزارم بیشتر با قضیه آشنا بشید چطوریه
فکرک نم منظور رو درست نرسوندم
ببینید این فرم کریستال ریپورت من هست که اتصالش دادم به بانکم :
103440

اونم اون بخش عکس هستش که مشخص شده و تو مشخصات زده picture1

اینم فرمی که جستجو رو برای یک گزارش انجام میده و یک دکمه داره برای ایجاد گزارش و یک عکس که تو این صفحه بخوبی نمایش داده میشه قراره تو گزارش ما هم نمایش داده بشه ولی نمایش نمیده و کد عکس رو بر میگردونه چون تو کد نویسی برنامه من عکس ها رو تو یک مسیر برنامه با یک کد رندوم ذخیره کردم

103441

این هم جدول من تو sql

103442

این هم قطعه کدی هست که برای ذخیره عکس نوشتم تو برنامم :



Dim rnd As New Random
Dim temp As String
temp = rnd.Next(100000, 999999).ToString()
File.Copy(ImgPath, ("H:\Automation Project\Automation\Automation\CustomerPictures") & "\" & temp & ".JPG")

Dim stream As New FileStream(("H:\Automation Project\Automation\Automation\CustomerPictures") & "\" & temp & ".JPG", FileMode.Open)

Dim reader As New BinaryReader(stream)
Dim imgByte() As Byte
imgByte = reader.ReadBytes(stream.Length)



متغیر temp هم که مقدار دهی میکنه به sql که یک عدد رو تو بانک ذخیره میکنه بصورت رندوم

اینم قطعه کدی که برای نمایش عکس گذاشتم :



PictureBox1.ImageLocation = ("H:\Automation Project\Automation\Automation\CustomerPictures\") + e.Item.SubItems(6).Text + ".jpg"



که روی فرمم یک listview دارم که با e.item مقدار دهیش کردم


.....
حالا میخوام همین عکسی که اینجا بارگذاری شده رو توی کریستال ریپورتم بکار بگیرم اما فقط اون کد رندومی که تو بانک ذخیره شده رو نمایش میده تو گزارش من

ممنون میشم راهنمایی فرمائید
با تشکر

Ship Storm
سه شنبه 10 اردیبهشت 1392, 22:59 عصر
پس مهندس ها و برنامه نویس ها کجا رفتند ما رو رها کردید اینجا فی امان الله ...