تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
مساعدة في حل مشكلة
#1
السلام عليكم 
عندما وضعت ملف تنفيذي في جهاز اخر عند طباعة تظهر لي هذه الرسالة اريد حل وشكرا

تظهر لي هذه الرسالة Microsoft.ReportViewer.Common Version=12.0.0.0
الرد }}}
تم الشكر بواسطة:
#2
وعليكم السلام ورحمة الله وبركاته،
الرسالة التي تظهر لك تدل على أن الجهاز الآخر لا يحتوي على مكتبة Microsoft Report Viewer 2012 أو أن النسخة المطلوبة (Version=12.0.0.0) غير مثبتة.
لحل هذه المشكلة، إليك الخطوات:

الحل 1: تثبيت Microsoft Report Viewer 2012
قم بتحميل وتثبيت الأدوات المطلوبة:
  1. Microsoft Report Viewer 2012 Runtime
    رابط مباشر من مايكروسوفت (ابحث عن:
    Report Viewer 2012 Runtime download
  2. أو استخدم الرابط التالي إن توفر):
    https://www.microsoft.com/en-us/download...x?id=35747
  3. Microsoft System CLR Types for SQL Server 2012
    (مطلوب من أجل تشغيل Report Viewer):
    https://www.microsoft.com/en-us/download...x?id=29065
إقتباس :تأكد من تثبيت الإصدار المتوافق مع نواة النظام (x86 أو x64) حسب نسخة ويندوز.

الحل 2: تضمين ملفات ReportViewer في مشروعك
إذا كنت تريد تشغيل البرنامج بدون تثبيت منفصل على كل جهاز، يمكنك:
  • تضمين ملفات مكتبة ReportViewer (DLLs) داخل مجلد المشروع.
  • وضع علامة على ملفات ReportViewer مثل
    Microsoft.ReportViewer.WinForms.dll
  • و
    Microsoft.ReportViewer.Common.dll
  • لتكون:
    • Copy Local = True في خصائص الملف داخل Visual Studio.

الحل 3: تحويل إلى إصدار أحدث أو استخدام Crystal Reports
إذا كنت تبدأ مشروعاً جديداً أو ترغب بحل طويل الأمد، يمكنك:
  • استخدام ReportViewer 2015 أو الأحدث.
  • أو الانتقال إلى Crystal Reports أو مكتبة تقارير أخرى أكثر استقلالية.
الرد }}}
تم الشكر بواسطة: مصمم هاوي , Zuhare
#3
جزاك الله خيرا اخي
الرد }}}
تم الشكر بواسطة:
#4
السلام عليكم
بعدما تطرق الى الحل الثاني بدأت تخرج لي هذه الرسالة يأخي ممكن حل لهذه الرسالة
Unhandled exception has occurred in your application. If you click Continue, the application will ignore this error and attempt to continue. If you click Quit, the application will close immediately.

An error occurred during, local report processing.
الرد }}}
تم الشكر بواسطة:
#5
إذا استخدمت ReportViewer محليًا بدون تثبيت على الجهاز، يجب أن تضمّن جميع الملفات التابعة. هذه الملفات على الأقل:
Microsoft.ReportViewer.WinForms.dll
Microsoft.ReportViewer.Common.dll
Microsoft.ReportViewer.ProcessingObjectModel.dll
Microsoft.ReportViewer.DataVisualization.dll (إذا كنت تستخدم رسوم بيانية)
Microsoft.SqlServer.Types.dll (للدوال الخاصة ببيانات SQL مثل Geometry/Geography)
اجعل كل ملف من خصائص الملف داخل Visual Studio.:

PHP كود :
Copy Local True 

2. تأكد من وجود ملف التقرير (RDLC) في المكان الصحيح
إذا كنت تستخدم تقارير من نوع RDLC، فتأكد أن الملف موجود داخل المشروع ومساره صحيح.
إذا كنت تستخدم الكود مثل:

PHP كود :
reportViewer1.LocalReport.ReportPath "Reports\\MyReport.rdlc"

فتأكد أن:
الملف MyReport.rdlc موجود داخل مجلد Reports
خاصية Copy to Output Directory = Copy if newer
3. تأكد من توافق البيانات مع التقرير
إذا كان التقرير يعتمد على DataSet معين أو DataSource مخصص، تأكد مما يلي:
الاسم الداخلي للـ DataSet في الكود مطابق تمامًا للاسم داخل ملف RDLC
مثال:

PHP كود :
3. تأكد من توافق البيانات مع التقرير
إذا كان التقرير يعتمد على DataSet معين أو DataSource مخصص، تأكد مما يلي
:

الاسم الداخلي للـ DataSet في الكود مطابق تمامًا للاسم داخل ملف RDLC

مثال

تأكد أن "MyDataSet" يطابق الاسم الموجود في RDLC (داخل خصائص DataSet Name).
4. سجل الخطأ التفصيلي
أضف try-catch حول الكود الخاص بالتقرير لتظهر لك الرسالة الحقيقية:

PHP كود :
try
{
 
   reportViewer1.LocalReport.ReportPath "Reports\\MyReport.rdlc";
 
   ReportDataSource rds = new ReportDataSource("MyDataSet"myData);
 
   reportViewer1.LocalReport.DataSources.Clear();
 
   reportViewer1.LocalReport.DataSources.Add(rds);
 
   reportViewer1.RefreshReport();
}
catch (
Exception ex)
{
 
   MessageBox.Show(ex.ToString(), "خطأ"MessageBoxButtons.OKMessageBoxIcon.Error);


5. تثبيت Microsoft CLR Types إن لم تفعل
حتى لو كنت تستخدم الحل الثاني، في بعض الحالات ما زال ReportViewer يحتاج إلى:
Microsoft System CLR Types for SQL Server 2012
اختر النسخة المناسبة لنظامك (x86 أو x64).

إذا كنت تريد أن أساعدك بدقة، أرسل لي:
السطر الذي تستخدم فيه reportViewer
أو صورة من الخطأ الكامل
أو اسم RDLC واسم الـ DataSet
الرد }}}
تم الشكر بواسطة: مصمم هاوي , مصمم هاوي
#6
أنا أستعمل طباعة مباشر من نموذج بدون نخزين البيانات

أنا أستعمل الكود هذا Imports Microsoft.Reporting.WinForms
Public Class Form2

Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load

Dim testParam As New ReportParameter("demoParameter", Form1.TextBox1.Text)

ReportViewer1.LocalReport.SetParameters(testParam)

Me.ReportViewer1.RefreshReport()

End Sub
End Class
الرد }}}
تم الشكر بواسطة:



التنقل السريع :


يقوم بقرائة الموضوع: