تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
إعطاء عنوان ديناميكي لقاعدة البيانات لربطه مع تقرير الكريستال
#1
السلام عليكم ورحمة الله

عند تصميم التقرير الكريستال ببيئة الفيجوال , أقوم بإعطاء التقرير عنوان لقاعدة البيانات لإنشاء اتصال جديد وإدراج الحقول وخلافه ...
المشكلة أنه عندما أضع البرنامج عند العميل يطلب تحديد مكان قاعدة البيانات لأن العنوان للقاعدة اختلف !

قمت بوضع هذا الكود في زر عرض التقرير :
كود :
Dim arr As New arrivalReport
        Dim rep As New rep
        rep.CrystalReportViewer1.ReportSource = arr
        arr.DataSourceConnections.Item(0).SetConnection(Application.StartupPath & "\data.accdb", "data.accdb", False)
        arr.Refresh()
        rep.ShowDialog()

وفي حدث CrystalReportViewer1_Load للتقرير قمت بوضع هذا الكود :
كود :
CrystalReportViewer1.RefreshReport()

تم حل المشكلة ولكن لابد لهذه الرسالة من الظهور : Logon Failed. Please Try Again Later مع زر موافق .
ما إن تضغط موافق حتى يعمل التقرير بالشكل السليم , كيف أتخلص من هذه الرسالة المزعجة أو إذا كان هناك طريقة أخرى أتمنى معرفتها؟

شكرا لكم والسلام عليكم
الرد }}}}
تم الشكر بواسطة:
#2
السلام عليكم ورحمة الله وبركاته

جرب هذا الترتيب في ربط الكريستال ريبورت مع قاعدة البيانات ثم عرض التقرير (طبعا في الأول أربط الكريستال في التصميم وبعدها لا يمكنك نقل قاعدة البيانات لأي مكان ثم تحديد مكان قاعدة البيانات في الكود - وهنا يفترض وجوده في مجلد البرنامج)
لا تنس أن يكون المشروح معد للعمل على منصات x86.
كود :
Dim rpt As New rpt1
Dim conn As New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source =" & Application.StartupPath & "\Database1.mdb")
Dim dt As New DataTable
Dim da As New OleDb.OleDbDataAdapter("SELECT * FROM table1", conn)
da.Fill(dt)
rpt.SetDataSource(dt)
CrystalReportViewer1.ReportSource = rpt

السلام عليكم ورحمة الله وبركاته
الرد }}}}
تم الشكر بواسطة:
#3
شكرا جزيلا لك أخي الكريم , المشكلة لدي هي جملة الإستعلام فهي متشعبة ومعقدة بعض الشيئ ومن الصعب نقلها وملأ dt بها Sad
الرد }}}}
تم الشكر بواسطة:
#4
تم حل المشكلة وأخيرا عبر هذا السطر البسيط :
كود :
rpt.SetDatabaseLogon("", "", Application.StartupPath & "\data.accdb", "data.accdb")

بدون أي مشاكل

شكرا لكم والسلام عليكم
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  كيفية جمع اكثر من field في الكريستال ريبورت نسيم 9 162 03-12-16, 10:15 PM
آخر رد: محمود بكرى
  ماهي الطريقة لعرض بيانات مشفره في تقرير؟ قناص المدينة 0 53 12-11-16, 06:29 PM
آخر رد: قناص المدينة
  كيف يمكننى جعل مربع النص يحتوى الارقام الكبيرة فى الكريستال ريبورت محمود بكرى 1 58 06-11-16, 11:14 AM
آخر رد: محمود بكرى
  الطباعة بواسطة الكريستال ريبورت باستخدام الاجراء المخزن حماده السعيد 7 888 10-10-16, 10:34 AM
آخر رد: محمد فاوي
  هل الكريستال ريبورت متواجد بنسختي طالب 22 0 118 18-06-16, 08:41 AM
آخر رد: طالب 22
  [VB.NET] إنشاء تقرير Crystal Report من أكثر من جدول saad.abu 0 251 06-06-16, 11:43 PM
آخر رد: saad.abu
  [سؤال] كيفية وضع الباركود داخل الكريستال ريبورت احمد عبد الحكيم 8 886 01-06-16, 09:02 PM
آخر رد: علي كعبي
  لم يظهر لدي الكريستال ريبورت في برنامج vb.net 2015 aftfm 4 332 18-05-16, 10:21 AM
آخر رد: محمود بكرى
Lightbulb [سؤال] تقرير يعتمد على نص في التكست بوكس محمد 1 842 02-01-16, 01:02 AM
آخر رد: الراشيدي
  مشكلة اللغة العربية في الكريستال ريبورت حماده السعيد 17 1,333 28-11-15, 01:22 AM
آخر رد: حماده السعيد

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


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم