# مباحث متفرقه برنامه نویسی > گزارش سازی با Crystal Report >  لود فایل عکس از مسیر ان که در بانک ذخیره شده..

## coral

سلام
من یک برنامه ویژوال بیسیک دارم... با بانک اکسس من در این بانک مسیر عکس هایی را ذخیره کرده ام می خواهم اون عکس ها در کریستال نمایش داده شود چه باید بکنم؟

----------


## مهدی کرامتی

من هم همین مشکل رو دارم.

من از یکی از دوستان در پست های دیگر شنیدم که با نوشتن Script در بخش فرمولها میتوان اینکار را انجام داد، اما ایشان مثال عملی در این زمینه نزده بودند. اگر لطف کنند و مثال عملی بنویسند بسیار متشکر خواهم بود.

----------


## setarehman

نیازی به Script یا چیزه دیگه ای نیست
بلکه کریستال موقع ساخت گزارش فیلد هایی که حاوی picture هستند رو با اینکه شما موقع ساخت
 اون فیلد ها رو اتنخاب کردید ولی به گزارش اضافه نمیکنه.فرقی هم نمیکنه از چه بانکی داره اطلاعات رو میخونه
فقط شما باید بعد از اتمام ساخت گزارش  خودتون فیلد هایی رو که از نوع Picture هستند رو روی صفحه گزارشتون 
بیارید 
 اگر بعد از ساخت گزارش لیست فیلد هارو ببینید متوجه میشید که با اینکه شما فیلد حاوی تصویر ها رو هم انتخاب کردید ولی اون فیلد تیک نخورده که خودتون باید زحمت آوردن اون رو روی صفحه گزارش بکشید
و به همین راحتی میتونید تصاویر رو هم در گزارش مشاهده کنید

----------


## M-Gheibi

سلام
setarehman متوجه منظور دوستان نشدید. منظور اینه که ما در یک فیلد آدرس فیزیکی تصاویر روی هارد رو داریم و می خوایم این آدرس های رو در گزارش به صورت تصوی مربوطه نمایش دهیم.

----------


## setarehman

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

----------


## M-Gheibi

تصویری در بانک ذخیره نمیشه. ببینید بدین شکل:
برای مثال در جدول tblinfo فیلدهایی مثل firstname, lastname, pic و ... داریم. همه این فیلدها از نوع متنی هستند. نام و نام خانوادگی که مشکلی نداره. میمونه pic
فیلد pic نگهدارنده مسیر فایل های تصاویر است. برای مثال بدین شکل: C:\MyProg\pic.jpg
حالا مشکل اینجاست که چطور میشه به جای اینکه در گزارش مسیر ذخیره شده در بانک رو نمایش دهیم، تصویر مربوطه را از مسیر آن لود کنیم.
امیدوارم متوجه منظور شده باشید.

----------


## M-Gheibi

سلام
دوستان مثل اینکه راهی در نسخه های 10 و پایین تر وجود نداره ولی در نسخه 11 این نرم افزار این مشکل حل شده.
(بالاخره یافتم  )
Dynamic Image Location Pictures and graphics can now be placed in a report through a link in the database so that it is no longer necessary to store images within the database. This supports the common practice of storing images on the web server and storing references to those images in the database. برای مثال کد زیر همونیه که دنبالشیم : 
"C:\Test\" + {Product.Graphic Image Location} 

شب خوش

----------


## In_Chan_Nafar

با سلام

دوستان برای ورژن 10 دو مثال می ذاریم .

مثال اولی برای Crystal Reports 10 Developer 

مثال دومی هم برای Crystal Reports 10 Pro

شایان ذکر است مثال ها در Vb6 بوده و حتما آنها را به درایو C کامپیوتر خود کپی نمایید.

----------


## M-Gheibi

گروه این چند نفر ممنون.

----------


## In_Chan_Nafar

خواهش می کنیم جناب اقای غیبی

----------


## Mohamad_VB

خیلی ممنون ! In_Chan_Nafar!
مخصوصا آقا مسعود گل

----------


## GOLDEN USER

سلام 
اگه میشه دو تا مثالی که آوردید مثالش در vb.net  را هم بیاورید.

----------


## habedijoo

سلام 
Data Type ستونی که  درونش مسیر عکس ها رو نگه می دارید چیه . ؟
توی SQL Server دقیقا این کار رو  میشه با داده از نوع BLOB  انجام داد . 
اگه مثالی پیدا کردم و یا نوشتم حتما براتون میزارم روی سایت .

----------


## GOLDEN USER

میشه این مثالهاتون رو در vb.net هم بیان کنید.

----------


## Reza_sh_42

میشه لطف کنید برای ورژن 9 هم یه مثال بدید ؟ ممنون میشم

----------


## Erfan_eng

با سلام 
من بعد از download sample ها نمی تونم بازشون کنم error هم اینه 
    c:\Sample1\crviewer.dll could not be loaded
یه log فایل هم ایجاد میکنه 
Line 22: Class CrystalActiveXReportViewerLib10Ctl.CrystalActiveXR  eportViewer of control Crysta was not a loaded control class.
شما این فایل crviewer.dll رو خودتون ایجاد کردین یا چون crystal من 8.5 هست این error رو میده

----------


## yasinmh

سلام 

راستش نمیدونم الان کجا هستید 
ولی من این برنامه را اجرا کردم (ضمیمه) ولی crviewer .dll احتیاج داشت

----------


## meh_secure

crviewer با خود کریستال نصب میشه.

----------


## meh_secure

آقا مسعود پس مثال برای دات نت چی شد؟ تو این سورس ها نوشته بودی که اگه خواستید خبرم کنید.

----------


## samiraamiri

می شه مثال vb.net هم بزنید؟

----------


## Arminizer_88

منم به نوبه خودم ممنونم. مرسی.

----------


## programmermp

آقا این مثال هایی رو که گذاشتید

برای دات نتش رو هم بذارید

با تشکر

----------


## amirsadeghi

سلام
به نتیجه نرسیدم

----------


## science20012003

hi i am egyptian programmer 
i am really happy 2 be with ur team 
i am really didnt understand ur languge but i am really understand ur code 
thanx alot my friends

----------


## بهار1385

دم این تاپیک گرم!
برنامه نویس مصری ازتون تشکر کرد!

----------


## mohammad hadi

خیلی ممنون از راهنمایی ها و کمک هایتان

----------


## amir1363

سلام . من می خواستم بدونم چطور می تونم نتیجه یک query را در crystal report در vb.net 2005 چاپ کنم؟

----------


## engineer_vm

سلام .. من به همه برو بچز.. من امین..! یک تازه وارد..
یه مشکل دارم..!لود کردن تصاویر در کریستال ریپورت تحت VB.Net 2005 
دیدم اینجا تحت vb6 مثال بود.. ممنون میشم VB.Net 2005 رو هم بزارین..!
تشکر

----------


## engineer_vm

سلام..!
همونطور که یکی از دوستان اشاره کرده بودند در Crystal Report 11 میشه عکس رو از دیتابیس خوند و توش نشون دادوو من اینکارو کردم..
منتها یه اشکالی واسم بوجود اومده و اینکه من توی خود محیط کریستال 11 میتونم این عکس رو به همراه بقیه فیلدهای مربوطش (فرض کنید مشخصات یه دانشجو به همراه عکسش) مشاهده کنم و با Refresh کردن و دادن مقدار جدید یه فرد دیگری مشخصات و عکسش خونده میشه و نمایش داده میشه..! اما وقتی میخوام اینکارو توی VB2005 که کریستال ریپورت 10 رو داره انجام بدم..کار نمیکنه..!
واضح تر بگم.. با کریستال 11 یه ریپورت درست کردم.. حالا اون ریپورت رو توی VB2005 صداش میزنم.. همه مشخصات مربوط ( به اون دانشجو یا غیره..) رو میاره به جز عکسش..
چه بکنم؟

----------


## engineer_vm

بابا جان کسی نیست مارو کمک کنه؟
ایشالا که خیر ببینید..

----------


## art2000ir

اکر کسی کد 2005 را دارد بدهد

----------


## art2000ir

کسی کد 2005 این کار رو نداره ؟

----------


## mojtaba66

امیدوارم مطالبتون کار من و هم را بندازه
همه شب در این امیدم که ببینم از تو رویی
چه زیان...

----------


## mojtaba66

:چشمک:  امیدوارم مطالبتون کار من و هم را بندازه
همه شب در این امیدم که ببینم از تو رویی
چه زیان تو را که من هم برسم به

----------


## engineer_vm

مرسی از اینکه هیشکی این مورد رو بلت نیست

----------


## engineer_vm

سلام من طبق گقته یکی از بچه ها مبنی بر اینکه اگر Cr11R2 رو نصب کنم میتونم کریستال VS رو Update کنم اینکارو کردم..! اما اصلاً این کریستال 11 توی دات نت کار نمیکنه.!!
نمیدونم چرا...!

----------


## engineer_vm

من که دیگه بیخیال این مورد شدم.. کریستال ریپورت 11 که نصب کردم و میشود باهاش  
عکس رو از دیتابیس بخونم و نمایش بدم توی Vb.Net اصلاً عمراً کار نمیکنه..
میخواستم ببینم کامپوننت یا چیز دیگه ای هست که بتونم این کارو باهاش انجام بدم..!؟
به جای کریستال ریپورت چی دیگه هست که توی  VB.Net هم میشه ازش استفاده کرد.

----------


## samiram

طرز ارتباط کریستال با ویژوال را میخوام لطفا کمک کنید .ممنون

----------


## sm

خوش آمدید ... لطفا ابتدا قوانین سایت رو مطالعه نمایید...جستجو فراموش نشه

https://barnamenevis.org/showthread.php?t=64328

موفق باشید

----------


## ehsan_aman

من که نتونستم با اون کد هایی که داده بودید تو دات نت کار کنم. 
اگه بخواید می تونید به مسیر فیزیکی (یه فایل) رو به یه OLE توی کریستال ریپورت لینک کرد و بعدش با عوض کردن عکس (مسیرش نباید عوش بشه) عکس توی کریستال ریپورت هم به صورت دینامیکی عوش میشه . واسه گذاشتن لوگو ی شرکت بالای گزارش خوبه.

اینجوری : 

توی دات نت یک فایل کریستال ریپورت درست کن . بازش کن. رو صفحه راست کلیک کن .  Insert<-ole object رو بزن . از دیالوگ ظاهر شده from file رو بزن . حالا گزینه link رو هم تیک بزن. مسیر فایل رو انتخاب کن. دقت کن که این مسیر فبکسه و نمیشه بعدا تغییرش داد پس ترجیحا بذار درایو c که همیشه ثابته
خوب دیگه ok کن بره پی کارش . حالا هر موقع فایل رو عوض کنی اینجا توی کریستال ریپورت هم عوش میشه. فقط دقت کن که فایله اولی که انتخاب می کنی باید bmp باشه حتما. ولی خوب مایکروسافته دیگه سوتی هم میده ؛ بعدا که گزارش رو ساختی اگه یه فایله jpg رو هم فقط پسوندشو تغییر بدی به bmp می تونی تو این نشونش بدی.
خلاص

----------


## قاصدک

لطفا یک مثال ساده راجع به گزارش گیری با کریستال ریپورت به ما بدهید

----------


## sm

این هم مثال ساده:
با جدول Northwind خود SQL  کار میکنه و نیازی به تنظیمات نداره.

موفق باشید

----------


## once4ever

مثال 2 با CR11 R2 اصلا عکس نشون نمیده!!!
میشه یکی یه مثال بزاره با دات نت که یک عکس از بانک (اکسس) نمایش بده ؟

----------


## aidin300

مثال VB.NET رو از اینجا 
 How to load an image from disk into Crystal Reports?
 گرفتم دومی هم C#‎ 2005 همون هست

----------


## alirzn

مرسی از راهنماییتون

----------


## amini699

دوستان میشه کمک کنید جناب  In_Chan_Nafar  عزیز لطف کردن و مثال گذاشتن ولی وقتی این رو از فرم دیگه لود میشه برای اول بار که برنامه اجرا میشه مشکلی نداره ولی دفعه دوم که لود میشه خطا میده اگه از دوستان کسی کار کرده و مشکل را برطرف کرده ممنون میشم کمک کنه منمون    				 				vbmenu_register("postmenu_131606", true);

----------


## amini699

دوستان میشه کمک کنید

----------


## amini699

جناب مدیر سایت میشه کمک کنید

----------


## amini699

جناب sm شما می تونید به من کمک کنید ممنون میشم

----------


## sm

دوست عزیز چون با vb6 کار نکردم، شرمنده ام که نمی تونم راهنماییتون کنم.

موفق باشید

----------


## saeen

> دوستان میشه کمک کنید جناب  In_Chan_Nafar  عزیز لطف کردن و مثال گذاشتن ولی وقتی این رو از فرم دیگه لود میشه برای اول بار که برنامه اجرا میشه مشکلی نداره ولی دفعه دوم که لود میشه خطا میده اگه از دوستان کسی کار کرده و مشکل را برطرف کرده ممنون میشم کمک کنه منمون    				 				vbmenu_register("postmenu_131606", true);



من برنامه جناب In_Chan_Nafar  را ندیدم اما برای نمایش تصویر توی کریستال ریپورت می تونی از این روش استفاده کنی.
فیلدی که آدرس تصویرت توی اون ذخیره شده را بذار توی گزارشت (میتونی مخفیش کنی)
بعد توی قسمتی (Section) که Details گزارشت هست این کد را بنویس:

                                  (Private Sub Section10_Format(ByVal pFormattingInfo As Object
                                                                             Dim OlePic As StdPicture 
                                                         (Set OlePic = LoadPicture(Field9.Value
                                                        Set Picture1.FormattedPicture = OlePic
                                                                                                                  End Sub

       Field9 همون فیلد آدرس تصویره
       Picture1 هم یک آبجکت تصویره که از منوی Insert توی کریستال ریپورت می تونی به گزارشت اضافه کنی

----------


## amini699

جناب saeen ممنون نمونه برنامه نداری ممنون

----------


## آنجلا1982

سلام -من نمی تونم اینو دانلود کنم. خیلی هم بهش نیاز دارم. لطفا کمکم کنین. مرسی

----------


## آنجلا1982

اگه می شه به ایمیلم بفرستین .anjella1982@yahoo.com

----------


## آنجلا1982

اگه می شه به ایمیلم بفرستین . anjella1982@yahoo.com

----------


## saeen

اینم یه مثال توی VB6

----------


## farima

سلام.
چگونه باید تنظیم کنیم که خروجی های crystal report  در جدول نشان داده بشه؟
اگر بخواهیم خروجی ها بین دو تاریخی باشه که کاربر انتخاب می کنه باید چکار کنیم؟

----------


## MEHR_2008

> با سلام
> 
> دوستان برای ورژن 10 دو مثال می ذاریم .
> 
> مثال اولی برای Crystal Reports 10 Developer 
> 
> مثال دومی هم برای Crystal Reports 10 Pro
> 
> شایان ذکر است مثال ها در Vb6 بوده و حتما آنها را به درایو C کامپیوتر خود کپی نمایید.


 با سلام 
من برنامه sample2 شما را اجرا مي كنم ول اين error  را مي دهد: 
invalid TVL record
خواهش ميكنم كمكم كنيد در ضمن تمام سايت هاي برنامه نويسي را هم براي حل اين مشكل چك كردم ولي بي نتيجه بود.

----------


## balakhani

سلام 
من يك برنامه ‍#C  دارم كه براي گزارش گيري از Crystal report  استفاده مي خواهم بكنم يكي از فيلد هاي جدولم عكسه كه آدرس عكس رو داخلش ذخيره كردم چطوري مي تونم توي گزارش عكس رو بيارم
بانك اطلاعاتيم sql هستش و از crystal report  خود visual stadio  كه 9.2  هست دارم استفاده مي كنم
ممنوم ميشم اگر راهنمايي كنيد

----------


## lahij.ir

آقایاون  :لبخند گشاده!:  خسته نباشید ، مر30 ولی در کل که این تاپیک و مطالعه کردن به نتیجه نرسیدم ، بالاخره چه جوری میشه یه عکس رو حالا چه از دیتابیس چه از هارد و ... تو کریستال لود کرد ، یعنی دینامیک باشه عکس عوض بشه ، من crystal report 8.5 نصب کردم و کد هیی که شما نوشتید واسه crystal 9 یا 10 هست ، ولی باز کم و زیاد میشه یه جورایی ربط داد بهش ، اما در نهایت کار نمیکنه !!! خواهشا این مسئله رو روشن و بررسی کنین ، چون یکی از کارهای مهم تو گزارش گیری همین قضیه ی عکس هست ، مر30

----------


## hasan_esfahan

سلام دوستان یک سری هم به این تاپیک بزنید

https://barnamenevis.org/showth...636#post683636

----------


## karoonpc

کارتون جالبه خیلی عالی بود

----------


## ha64_64

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

----------


## sara.f

> نیازی به Script یا چیزه دیگه ای نیست
> بلکه کریستال موقع ساخت گزارش فیلد هایی که حاوی picture هستند رو با اینکه شما موقع ساخت
> اون فیلد ها رو اتنخاب کردید ولی به گزارش اضافه نمیکنه.فرقی هم نمیکنه از چه بانکی داره اطلاعات رو میخونه
> فقط شما باید بعد از اتمام ساخت گزارش خودتون فیلد هایی رو که از نوع Picture هستند رو روی صفحه گزارشتون 
> بیارید 
> اگر بعد از ساخت گزارش لیست فیلد هارو ببینید متوجه میشید که با اینکه شما فیلد حاوی تصویر ها رو هم انتخاب کردید ولی اون فیلد تیک نخورده که خودتون باید زحمت آوردن اون رو روی صفحه گزارش بکشید
> و به همین راحتی میتونید تصاویر رو هم در گزارش مشاهده کنید


 
خوب چطوری باید این کارو بکنم؟ البته من خود عکس را در db به صورت آرایه ای از بیت ها ذخیره کردم.

----------


## shocraneh

> من برنامه جناب In_Chan_Nafar  را ندیدم اما برای نمایش تصویر توی کریستال ریپورت می تونی از این روش استفاده کنی.
> فیلدی که آدرس تصویرت توی اون ذخیره شده را بذار توی گزارشت (میتونی مخفیش کنی)
> بعد توی قسمتی (Section) که Details گزارشت هست این کد را بنویس:
> 
>                                   (Private Sub Section10_Format(ByVal pFormattingInfo As Object
>                                                                              Dim OlePic As StdPicture 
>                                                          (Set OlePic = LoadPicture(Field9.Value
>                                                         Set Picture1.FormattedPicture = OlePic
>                                                                                                                   End Sub
> ...


دوست من می شه واضح تر توضیح بدین ( متغیر ها رو مشخص کن) یه جوری صحبت کردید که انگار کد ها رو جای خاصی می نویسید  :متفکر: در ضمن ایا رو نسخه 8.5
هم میشه یا نه . ای کاش برنامشو بزارید

----------


## shocraneh

فکر کنم دوستان به خوبی تاپیک ها رو دنبال نکردن . Aidin300 در تاپیک اگه اشتباه نکنم #43 دو تا برنامه یکی 
vb.net  و C#‎ گذاشته که هر دو درست کار می کنه (البته با ذخیره عکس ) دستشون درد نکنه فقط دو تا زبان رو جابجا معرفی کردن 

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

----------


## shocraneh

دوستان پیدا کردم . برنامشو گذاشتم 
https://barnamenevis.org/showth...557#post800557

----------


## vahidvahidvahidvahidvahi

سلام 
ممنون.

----------


## Masoome_das

سلام این کدی که شما در بالا گفته اید در کجای برنامه اضافه کنیم

----------


## طبیب دل

> من برنامه جناب In_Chan_Nafar را ندیدم اما برای نمایش تصویر توی کریستال ریپورت می تونی از این روش استفاده کنی.
> فیلدی که آدرس تصویرت توی اون ذخیره شده را بذار توی گزارشت (میتونی مخفیش کنی)
> بعد توی قسمتی (Section) که Details گزارشت هست این کد را بنویس:
> 
> (Private Sub Section10_Format(ByVal pFormattingInfo As Object
> Dim OlePic As StdPicture 
> (Set OlePic = LoadPicture(Field9.Value
> Set Picture1.FormattedPicture = OlePic
> End Sub
> ...


 دوست عزیز من از cr11 استفاده میکنم و زبان برنامه نویسی هم سی شارپ میشه با اینها هم توضیح بدید مثلا کدی که گذاشتید تو سی شارپ چی میشه؟

----------


## طبیب دل

> سلام
> دوستان مثل اینکه راهی در نسخه های 10 و پایین تر وجود نداره ولی در نسخه 11 این نرم افزار این مشکل حل شده.
> (بالاخره یافتم  )
> Dynamic Image Location Pictures and graphics can now be placed in a report through a link in the database so that it is no longer necessary to store images within the database. This supports the common practice of storing images on the web server and storing references to those images in the database. برای مثال کد زیر همونیه که دنبالشیم : 
> "C:\Test\" + {Product.Graphic Image Location} 
> 
> شب خوش


 میشه بگید در کریستال 11 این کد کجا باید نوشت و اگه میشه در مورد کد توضیح بدید

----------


## Armin62

چرا در مثالی که گروه In_Chan_Nafar قرار دادن وقتی دو بار کلید Load رو میزنیم خطای  Object Doesn't support this action  رو میده

----------


## Armin62

کسی از دوستان نمی تونه کمک کنه

----------


## Armin62

????????????????????

----------


## Armin62

کسي نميتونه کمک کنه

----------


## mn_zandy63

سلام دوست من،
اگه همون اول لینک به پست مورد نظرت رو هم میزاشتی مطمئنا حداقل آدمای تنبلی مثل من سریعتر یه نیگاه بهش مینداختن، تا اینکه قرار باشه ۸ تا صفحه رو چک کنه طرف تا ببینه اصلا پستی که مورد نظرت هست چی هست و کجا هست.
این رو به این خاطر گفتم که کارت سریعتر راه بیافته.
https://barnamenevis.org/showthread.p...l=1#post131606
به هر حال من متاسفانه VB6 روی سیستمم نصب نیست تا بتونم چک کنم. اما با توجه به تاریخ پست (سال ۸۴) و اینکه توضیح داده از کریستال ۱۰ استفاده میکنه. با توجه به خیلی قدیمی بودن پست، حدس میزنم مربوط به ورژن کریستال باشه.
شما از چه نسخه ای استفاده میکنی؟
مشکلت قرار دادن فایل عکس با استفاده از آدرس هست؟ در ورژن های جدید اینکار بسیار ساده است که در پست قبلی In_Chand_Nafar هم اومده.
موفق باشی

----------


## Armin62

سلام ممنون از کمکت
من از ورژن 10 استفاده ميکنم و مشکلم همونيه که فرموديد اما متاسفانه نميتونم ورژن رو عوض کنم

----------


## mn_zandy63

سلام دوست من،
متاسفانه با کریستال ۱۰ کار نکردم و اطلاعی ندارم.
دوستان دیگه اگه بدونند باید کمک کنند.

موفق باشی

----------


## Armin62

بار اول که برنامه رو اجرا ميکنم يعني Load رو که ميزنم درسته ولي دوباره که کليک ميکنم error ميده

----------


## ali190

سلام
دوستان فهمیدم مشکل از کجاست
زمانی این ارور ساطع میشه که فرم هنوز در حافظه سیستم جا مونده
در رویداد Form_Unload فرمی که درش گزارش وجود داره کد زیر رو بنویسید
Set form1= Nothing
البته این کد مخصوص vb6 هست
یاعلی

----------


## alibahardoost

بابا ایول 
من 3 روزه در به در این مشکلم.
شنا حلش کردی. 
واقعا دس مریزا.
فوق العاده ای

  :قلب:

----------

