الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال: كيف أحدد دليل ملف mdb لكرتسال ريبورت بالكود في فيجوال 2005

مغلق
بدأه Adel_N في 12 أغسطس 2007 · 3 رد · 1,244 مشاهدة · في تصميم وبرمجة التقارير
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم... عندي سؤال أتمنى ألاقي حل مبسط.

أنا أستخدم ADO (أقصد ADODB.Connection و ADODB.Recordset) للاتصال بقاعدة بيانات Access وماعندي أي مشكلة في الاتصال وإجراء مختلف العمليات على قاعدة البيانات. كما أني لا أستخدم DataSet ولا أريد أن أتعلمها نهائياً.

أصمم التقارير في برنامج Crystal Report 10 وليس داخل الفيجوال استديو... وأنشرها مع البرنامج كما أنشر قاعدة البيانات مع البرنامج.

كنت أستخدم VB6 ولم تكن لدي أي مشكلة في التقارير.. لأني أحدد عنوان قاعدة البيانات لـ CrystalActiveXReportViewer باستخدام الكود التالي:

Dim Ap As New CRAXDDRT.Application
Dim Rp As New CRAXDDRT.Report
Set Rp = Ap.OpenReport(App.Path & "\MyReport.rpt")
Rp.Database.Tables(1).Location = App.Path & "\DB.mdb"
Rp.Database.Tables(2).Location = App.Path & "\DB.mdb"
Rp.Database.Tables(3).Location = App.Path & "\DB.mdb"
recOpt.Update
recOpt.Requery
CR1.ReportSource = Rp
CR1.Zoom 1
CR1.ViewReport

ثم حولت على VB2005، وابتدت المشكلة..

أتصل بنجاح وماعندي مشكلة في الاتصال

ولكن لا أعلم مالكود الذي أضعه في النموذج الذي يحتوي على التقرير لكي أحدد للتقرير كل من ملف rpt وملف mdb وكلاهما في نفس دليل البرنامج؟

تم تعديل هذه المشاركة بواسطة Adel_N في 12 أغسطس 2007 في 18:23

In order to understand recursion, one must first understand recursion

alawfiadel@yahoo.com

#2

قبل أن يقال لم أبحث في المنتدى...

أنا بحثت في المنتدى ووجدت أخ مر في نفس المشكلة وكان الحل هو:

Try
			Me.OleDbConnection1.ConnectionString = _
			"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
			Application.StartupPath & "\Swiss.mdb;Jet OLEDB:Database Password=261177;"
			Dim crtableLogoninfos As New TableLogOnInfos()
			Dim crtableLogoninfo As New TableLogOnInfo()
			Dim crConnectionInfo As New ConnectionInfo()
			Dim CrTables As Tables
			Dim CrTable As Table
			Dim crReportDocument As New Crpt_All()
			With crConnectionInfo
				.DatabaseName = Application.StartupPath & "\Swiss.mdb"
				.Password = "261177"
			End With
			CrTables = crReportDocument.Database.Tables
			For Each CrTable In CrTables
				crtableLogoninfo = CrTable.LogOnInfo
				crtableLogoninfo.ConnectionInfo = crConnectionInfo
				CrTable.ApplyLogOnInfo(crtableLogoninfo)
			Next
			CrystalReportViewer1.ReportSource = crReportDocument
		Catch ex As Exception
			MsgBox(ex.Message)
		End Try

ولكن ما المقصود بـ Dim crReportDocument As New Crpt_All ؟

ماهو Crpt_All ؟

مافيه أي سيرة عن ملف rpt الذي أصممه خارج الفيجوال وأنشره مع البرنامج..؟؟؟ أرجو المساعدة

In order to understand recursion, one must first understand recursion

alawfiadel@yahoo.com

#3

بسم الله الرحمن الرحيم

لتصميم التقرير خارج الدوت نت ثم ربطه مع البرنامج

يجب كتابة كود في البرنامج كالتالي :

				DataSet1 ds = new DataSet1();

				da.SelectCommand = new OleDbCommand("SELECT * FROM Contract"", Connection);
				da.Fill(ds,"Contract");
				string path = "c:\\Reports\\Rrport_Contract.rpt";
				ReportDocument reportDocument1 = new ReportDocument();
				reportDocument1.Load(path);

و الله في عون العبد مادام العبد في عون أخيه

تم تعديل هذه المشاركة بواسطة namer315 في 5 سبتمبر 2007 في 14:14

و الله في عون العبد ما دام العبد في عون أخيه

#4

أشكرك أخي..

السؤال قديم يوم انتقلت إلى 2005...

الحمد لله الآن مصمم 3 برامج متوسطة الحجم!

In order to understand recursion, one must first understand recursion

alawfiadel@yahoo.com

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…