اخواني لديا صورة مخزنة في مسار وليكن c:\Docs\a.jpg اريد عرضها داخل تقرير Microsoft Report Viwer
المثال مرفق لكم
اخواني لديا صورة مخزنة في مسار وليكن c:\Docs\a.jpg اريد عرضها داخل تقرير Microsoft Report Viwer
المثال مرفق لكم
افتح شاشة تصميم التقارير
ومن قائمة Report
اختر Add Pictuer
حدد مكان الصورة ثم خزنها داخل التقرير
بعد ذلك اضف كائن الصورة الى التقرير
اذهب الى خصائص الكائن واجعل Source = Impeded
ثم اذهب الى Value
واختر الصورة
او راجع هذا الرابط فهو نفس الخطوات هنا
بالتوفيق
تم تعديل هذه المشاركة بواسطة عبدالرحمن المرشود في 12 يناير 2011 في 12:31
بسم الله الذي لا يضر مع اسمه شيء بالارض ولا بالسماء وهو السميع العليم
تشكر اخي
لكن كيف ادرج الصورة انا استخدم تقرير Report1.rdlc و مستعرض التقارير Microsoft Report Viewer
لم استطع ادراج كائن الصورة الى التقرير Report1.rdlc
وعندي رابط صورة مخزنة في مجلد اريد عرضها على التقرير
انا لا اريد استخدام الكريستال ريبورت عشان مراح اضمنها على ملف تحزيم البرنامج
bnitt كتب:لكن كيف ادرج الصورة انا استخدم تقرير Report1.rdlc و مستعرض التقارير Microsoft Report Viewer
هلا اخوي
اذا كنت تستخد vb.net فالطريقة الاولى فعال 100% اما الاخرى
فجرب هذا الرابط Adding Image to Report Viewer
بالتوفيق
بسم الله الذي لا يضر مع اسمه شيء بالارض ولا بالسماء وهو السميع العليم
اولاً : اتقدم بالشكر لك اخي على جهودك الطيبة
انا استخدمت هذا الكود لكن لم يعرض لي الصورة وغيرت الخاصية الى ReportViewer1.LocalReport.EnableExternalImages = True
Imports Microsoft.Reporting.WinForms
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Try
ReportViewer1.LocalReport.EnableExternalImages = True
Dim filepath As Uri
filepath = New Uri(Application.StartupPath & "\Pic01.JPG")
Dim par1 As New ReportParameter("Path", filepath.AbsolutePath)
Dim pars(0) As ReportParameter
pars(0) = par1
ReportViewer1.LocalReport.SeetParametrs(pars)
ReportViewer1.LocalReport.Refresh()
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
End Classلكن لماذا لم يعرض الصورة
هل امرر الصورة الى Parametr
مالخطأ في هذا الكود الذي كتبتة
ثم لم استطع ادراج الصورة في التقرير
انا ادرجت الكائن لكن لماذا لايضهر على التقرير
تم تعديل هذه المشاركة بواسطة bnitt في 12 يناير 2011 في 22:07
السلام عليكم اخي الكريم
انا لاحظت انك تستخدم vb.net
واليك طريقة عرض صورة بالتقرير بالصور
بسم الله
الصورة الاولى
في هذه الصورة اضافة التقرير
الصورة الثانية
بعض اضافة التقرير نضع عليه كائن الصورة والذي اسمه Image
ومن قائمة Report كما هو ظاهر نختار الامر Embeded Image
الصورة الثالثة
هذا صندوق حوار اضافة الصورة نختار New Image
الصورة الرابعة
بعد ذلك نحدد مسار الصورة ونختارها
الصورة الخامسة
كما نرى بالصورة الخامسة تمت اضافة الصورة الى التقرير
والان علينا وضعها في كينونة الصورة على راس التقرير
الصورة السادسة
كما ترى اخي العزيز لقد ظهرت الصورة بالتقرير
ولكن عليك عمل بعض الخطوات والاسهم بالصورة توضع معناها
السهم الاول يشير كيفية حجم الصورة في الكائن وانا اختر Fit وتعني ملائم لحجم الكينونة وذلك لعدم اخذ مساحة داخل التقرير
السهم الثاني يشير الى نوع المصدر وهو اما خارجي(External) او داخلي يعني من داخل الجهاز(Embeded) وهذا ما نريد فنختار الخيار الثاني
السهم الثالث ويشير الى القيمة وهي الصورة وتقوم باختيارها بكل سهولة
وبعد ذلك تقوم بحفظ التقرير
وهكذا يكون لدينا صورة داخل التقرير
واخر شيء هكذا يظهر التقرير عند التنفيذ
الصور بالمرفقات وبالترتيب
بالتوفيق
بسم الله الذي لا يضر مع اسمه شيء بالارض ولا بالسماء وهو السميع العليم
اشكرك اخي عبدالرحمن على الايضاح لكن المشكلة هي في كيفية تمرير الصورة من داخل PictureBox داخل البرنامح الى التقرير
انا استخدمت ال Parmerter لنقل الصورة لكن لم تعرض في التقرير
هذا الكود في الشاشة حيث الصورة مخزنة في مسار
اريد ارسال الصورة برمجيا وليس اختيارها اختيار من الكمبيوتر
Imports Microsoft.Reporting.WinForms
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Try
ReportViewer1.LocalReport.EnableExternalImages = True
Dim filepath As Uri
filepath = New Uri(Application.StartupPath & "\Pic02.Jpg")
Dim Path As ReportParameter
Path = New ReportParameter("Path", filepath.AbsolutePath)
Me.ReportViewer1.LocalReport.SetParameters(New ReportParameter() {Path})
ReportViewer1.LocalReport.Refresh()
Catch ex As Exception
MsgBox(ex.Message)
End Try
Me.ReportViewer1.RefreshReport()
End Sub
End Classالمثال مرفق
التقرير يحتوي على كائن Image1 ويحتوي على Parameter اسمة Path
كيف ارسل الصورة من الشاشة الى التقرير اعطي مسار الصورة وتعرض داخل كائن Image الموجود في التقرير
تم تعديل هذه المشاركة بواسطة bnitt في 14 يناير 2011 في 01:04
السلام عليكم اخي
انت تقصد انك تريد تمرير الصورة الى التقرير برمجيا
وانا لدي الحل هنا بأذن الله
هذه مشاركة لموضوع وهو اضافة صورة الى قاعدة البيانات وفيها مثال يحتوي على كود تمرير الصورة في المسار لقاعدة البيانات
ملاحظة :
عندما نريد ان نمرر صورة الى تقرير او قاعدة بيانات بالكود فنحن نحتاج الى تحويلها الى صيغة Byet ومن ثم نقوم بقرأتها وتخزينا داخل المسار المراد
والكود في المثال في المشاركة يشرح ذلك
واي استفسار اخي انا جاهز
بالتوفيق
بسم الله الذي لا يضر مع اسمه شيء بالارض ولا بالسماء وهو السميع العليم
اخي عبدالرحمن اشكرك
انا لا احفظ الصورة في قاعدة البيانات
انا احفظ الصور داخل مجلد ومسار الصورة مثلا يكون c:\Photo\1.jpg
اريد عرض الصورة داخل التقرير من مسار وليس من قاعدة البيانات
لكن ليس من التقرير نفسة
في التقرير انا ادرجت كائن image اريد عرض صورة من مسار المسار انا اححدة برمجيا
Imports Microsoft.Reporting.WinForms
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Try
ReportViewer1.LocalReport.EnableExternalImages = True
Dim filepath As Uri
filepath = New Uri(Application.StartupPath & "\Pic02.Jpg")
Dim Path As ReportParameter
Path = New ReportParameter("Path", filepath.AbsolutePath)
Me.ReportViewer1.LocalReport.SetParameters(New ReportParameter() {Path})
ReportViewer1.LocalReport.Refresh()
Catch ex As Exception
MsgBox(ex.Message)
End Try
Me.ReportViewer1.RefreshReport()
End Sub
End Class
هذا المطلوب
اعتقد هناك خطأ بالكوت الذي كتبتة انااخي الكريم لقد فهمت قصدك من التعليق الماضي
وانا احاول الان بعمل بمثال على ذلك
بالتوفيق
تم تعديل هذه المشاركة بواسطة عبدالرحمن المرشود في 14 يناير 2011 في 22:48
بسم الله الذي لا يضر مع اسمه شيء بالارض ولا بالسماء وهو السميع العليم
اشكرك على تعاونك اخي عبدالرحمن
السلام عليكم
اخي الفاضل بصراحة انا اعتذر على جعلك تنتظر لكن لم اتمكن ان اجد طريقة لطلبك والسبب ان التقرير يقبل طريقتين
اما Embedded
او External
بالنسبة لل(External) فهي تعتمد على المواقع يعني الانترنت لانني طيلت بحثي كل المواضيع تتحدث عن هذه الطريقة ولكن في النهاية
ينتهي الامر بالمواقع
اما الطريقة الاولى لقد تم شحها بالاعلى
لذلك انا اعتذر منك واوعدك اذا وجدت جواب سوف احدثك عنه باسرع وقت
بالتوفيق
بسم الله الذي لا يضر مع اسمه شيء بالارض ولا بالسماء وهو السميع العليم
اشكرك اخي انا كذالك بحثت ووجدت نفس الشي يكون على سرفر
اشكرك انا خليتها بطريقة اخري عن طريق Printdailog
أخي
بعد البحث المضني وجدت طريقة
Handling Images
You may need additional tweaks to migrate a server report to a local report. For example, if the server report uses an external image located in the same folder of the report catalog, you may need to re-adjust the image path. As it stands, the Report Viewer won't attempt to load the image from the current application directory by default. As a workaround, you should use the file:// protocol to load external images. Embedding the image path in the report definition is something you will probably want to avoid. For this reason, the Customer Orders.rdlc report contains a simple VB.NET embedded function which returns the application path.
Public Function GetAppPath() As String
Return System.IO.Directory.GetCurrentDirectory
End FunctionUsing this function, here's how you can set up the Value property of the logo image to point to the external AWC.jpg file.
=String.Format("file:///{0}\{1}", Code.GetAppPath(),
"AWC.jpg")You won't see the image at design time but it should appear when the report is run. Of course, another approach to get away the external images limitation in local mode is to convert all external images to embedded images that are saved in the report definition.
When you are done authoring the report, you can remove the report definition file from the project. Upon deployment, the application setup program could copy the report definition to a known location where the Report Viewer can find it.
Here's a useful tip: To automate copying the local report definition to the application runtime folder at design time, you can define a post-build event in the Build Events tab of the project properties.
هذه الطريقة ناجحه جداً
وهي مفيده في حالة استدعا ءالتقارير من السيرفر أيضاً
بعد التحية ارجو وضغ مثال للفائدة للجميع
وشكرآ علي المساعدة الاخرين
تم تعديل هذه المشاركة بواسطة hajriss في 28 يوليو 2013 في 22:03