تقييم الموضوع :
  • 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")

بدون أي مشاكل

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


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [مشروع] حل جذري لكل من يعاني من ارسال الباركود والصورة الى الكريستال ربيورت مصمم الدوادمي 8 5,396 30-06-25, 04:39 AM
آخر رد: abdulazizsaeeed100
  لم يظهر لدي الكريستال ريبورت في برنامج vb.net 2015 aftfm 7 6,388 30-06-25, 04:36 AM
آخر رد: abdulazizsaeeed100
  اريد التحكم فى حجم الفونتبواستطة الكود لتقارير الكريستال new_programer 0 579 30-01-25, 08:32 AM
آخر رد: new_programer
  استدعاء مكتبة dll من c# في الكريستال ريبورت Mohamed.vbnet 0 531 12-11-24, 02:51 AM
آخر رد: Mohamed.vbnet
  [سؤال] مشكلة في طباعة footer تقرير كريستال ريبورت i1982 5 1,774 29-03-23, 11:30 PM
آخر رد: sanyor77
  دالة التفقيط داخل الكريستال ريبورت bassant 6 6,549 08-02-23, 04:26 PM
آخر رد: kezzat
  هل يوجد امكانية لعمل متغير لكل record في الكريستال ريبورت bassant 0 1,037 29-11-22, 12:47 PM
آخر رد: bassant
  كيفية تصميم التقرير الكريستال ريبورت للطباعة على جانبين الورقة (وش وظهر) bassant 3 1,495 22-11-22, 12:22 PM
آخر رد: Taha Okla
  هل يمكن عرض سجل واحد من DatagreadView في تقرير ReportView VB.net؟ QWERTU 0 1,428 21-07-22, 01:01 AM
آخر رد: QWERTU
  تغيير اتجاة صفحة الكريستال ريبورت aftfm 0 2,017 06-09-21, 05:34 PM
آخر رد: aftfm

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


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