اثناء تشغيل البرنامج وعند عرض تقرير ميزان المراجعة المصمم بكريستال ريبوت تظهر رسال خطاء وعد فتح التقرير والسبب هو انه تم بناء التقرير بناء علي جملة استعلام داخل Commond في الكريستال ريبورت و ال commond مبنية علي اسم سيرفر الكمبيوتر الشخصى الخاص بي وبالتالي اسم السيرفر مختلف عن اسم سيرفر العميل
ما الحل لتشغيل هذا التقرير
علشان كده عود نفسك انك تضع جملة الاتصال في ملف نصي خارج البرنامج
دي الطريقة المفضلة بالنسبة لى
في عام
جلب جملة الاتصال من الملف
PHP كود :
Public READ_TXT() As String = File.ReadAllLines("" & Application.StartupPath & "\TXT_PRO.TXT")
Public CON As New SqlConnection(READ_TXT(0))
هذا بسبب ربط التقرير بقاعدة البيانات مباشرة
استخدم اسلوب ربط التقرير بالداتاسيت فهو الأفضل في الدوت نت
(07-02-18, 02:31 PM)طالب برمجة كتب : [ -> ]هذا بسبب ربط التقرير بقاعدة البيانات مباشرة
استخدم اسلوب ربط التقرير بالداتاسيت فهو الأفضل في الدوت نت
فعلا هذة الحقيقة
لكن اللي حصل بقي
ما الحل
جرب هذه الطريقة فقد تناسب مشكلة المشروع لديك من خلال LogOnInfo
(01-12-17, 01:05 PM)Amir_alzubidy كتب : [ -> ]السلام عليكم ورحمة الله و بركاته
ضع هذا الكود في زر الامر طباعة التقرير
بعد تعيين الداتا سيت و جملة الاستعلام
PHP كود :
Application.DoEvents()
Dim ConInfo As New CrystalDecisions.Shared.TableLogOnInfo
ConInfo.ConnectionInfo.ServerName = Application.StartupPath & "\DataBaseName.mdb"
ConInfo.ConnectionInfo.DatabaseName = "DataBaseName.mdb"
ConInfo.ConnectionInfo.UserID = "Admin"
ConInfo.ConnectionInfo.Password = "" ' كلمة المرور ان وجدت
Dim rpt1 As New Report1 'اسم التقرير
rpt1.Database.Tables(0).ApplyLogOnInfo(ConInfo)
rpt1.SetDataSource(DataSetTable)
Dim frm As New Form3 ' اسم الفورم الموجود فيه الفيور
frm.CrystalReportViewer1.ReportSource = rpt1
frm.CrystalReportViewer1.LogOnInfo(0).ConnectionInfo.Password = "" ' كلمة المرور ان وجدت
frm.ShowDialog()
ان شاء الله بجرب عند العميل يوم السبت القادم
وجزاك الله كل خير اخي
طالب البرمجة