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

استدعاء التقارير من داخل برامج VB بدلا عن الكريستل ريبورت

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

تحية للجميع

طبعاً يمكن تصميم التقارير على الاكسيس

ولكن هل يمكن استدعائها من داخل برامج الفيجول بيسك بدلا عن الكريستل ريبورت

هل جرب احدكم ذلك

#2

نعم يمكن ذلك ولكني جربتها مرة واحدة ولم تنجح معي وهذا بداية تعلمي للبرمجة والسبب الذي دعاني لعدم المحاولة مرة اخرى هي ليس من الواجب ان يكون لدى المستخدم اكسس حتى يتم استدعاء التقارير منه ولذلك وجب وجود حلول اخرى

جديد مدونتي الشخصية http://www.badwi.com

ادعو لنا بظاهر الغيب

MyBooksExchange.jpg

#3

يمكن فعل ذلك باستخدام تقنيات OLE Automation لأتمتة تقارير Access وهنا يشترط وجود Access على الجهاز وسأوافيكم بالتفاصيل لاحقاً إن شاء الله

#4

الاخ محمد عبدالودود

الاخ محمد بدوي

شكراً لكما انني قمت بتصميم تقرير لقاعدة بيانات بشكل جيد وحسب طلب الجهة التي طلبته ولكنني لم استطيع عمل تقرير مشابه له سواء على اداة التقارير أو على الكريستلي ريبورت

فهل يمكن فتح التقرير للمعاينة و الطباعة من داخل برنامجي المصمم لأدارة قاعدة البيانات بواسطة VB6 وماهي شروط تحقيق ذلك

شكراً للجميع .. رعاكم الله

#5

السلام عليكم ورحمة الله وبركاته ،،،

جربوا هذا المثال:

مثال تشغيل تقرير اكسس من فيجول بيسك :

1- في الأكسس :

نفرض لديك قاعدة بيانات بإسم :- dbname.mdb

وتحتوي على جدول بإسم :-tab1

وهذا الجدول يحتوي على حقل واحد بإسم :- sname

وتحتوي على تقرير بإسم : Rpt1

حيث يحتوي التقرير على حقل sname الذي مصدره الجدول tab1

عند حدث الفتح للتقرير :

Private Sub Report_Open(Cancel As Integer)

Me.RecordSource = Recsource

End Sub

وأيضاً تحتوي قاعدة البيانات على وحدة نمطية :-

تحتوي على الكود التالي :

Option Compare Database

Option Explicit

Global Recsource As String



Sub OpenRpt(strname As String)

Recsource = strname

DoCmd.OpenReport "rpt1", acViewPreview

DoCmd.Maximize

End Sub

2- في الفيجول بيسك :

من شريط القوائم افتح قائمة Project

ثم اختر مراجع Refrences

ثم ضع علامة على المرجع التالي : Microsoft Access 8.0 Object Library

نفرض لديك فورم 1 يحتوي على زر أمر عند النقر على زر الأمر هذا تظهر inputbox

تطلب إدخال إسم من الأسماء المخزنة في الجدول .

حيث سيصبح الكود كالتالي :

Dim appAccess As Access.Application

Sub RunAccessSub()

Dim Inputmessage As String

Inputmessage = InputBox("أدخل الإسم", "")

Inputmessage = Trim(Inputmessage)



Set appAccess = CreateObject("Access.application.8")

appAccess.OpenCurrentDatabase App.Path & "dbname.mdb", False



appAccess.Run "OpenRpt", "select * from tab1 where sname='" & Inputmessage & "'"



Set appAccess = Nothing



End Sub

Private Sub Command1_Click()

Call RunAccessSub

End Sub

نفذ البرنامج بعد تعبئة الجدول بالاسماء التجريبية .

#6

مثال تشغيل تقرير اكسس من فيجول بيسك :

1- في الأكسس :

نفرض لديك قاعدة بيانات بإسم :- dbname.mdb

وتحتوي على جدول بإسم :-tab1

وهذا الجدول يحتوي على حقل واحد بإسم :- sname

وتحتوي على تقرير بإسم : Rpt1

حيث يحتوي التقرير على حقل sname الذي مصدره الجدول tab1

عند حدث الفتح للتقرير :

Private Sub Report_Open(Cancel As Integer)

Me.RecordSource = Recsource

End Sub

وأيضاً تحتوي قاعدة البيانات على وحدة نمطية :-

تحتوي على الكود التالي :

Option Compare Database

Option Explicit

Global Recsource As String



Sub OpenRpt(strname As String)

Recsource = strname

DoCmd.OpenReport "rpt1", acViewPreview

DoCmd.Maximize

End Sub

2- في الفيجول بيسك :

من شريط القوائم افتح قائمة Project

ثم اختر مراجع Refrences

ثم ضع علامة على المرجع التالي : Microsoft Access 8.0 Object Library

نفرض لديك فورم 1 يحتوي على زر أمر عند النقر على زر الأمر هذا تظهر inputbox

تطلب إدخال إسم من الأسماء المخزنة في الجدول .

حيث سيصبح الكود كالتالي :

Dim appAccess As Access.Application

Sub RunAccessSub()

Dim Inputmessage As String

Inputmessage = InputBox("أدخل الإسم", "")

Inputmessage = Trim(Inputmessage)



Set appAccess = CreateObject("Access.application.8")

appAccess.OpenCurrentDatabase App.Path & "dbname.mdb", False



appAccess.Run "OpenRpt", "select * from tab1 where sname='" & Inputmessage & "'"



Set appAccess = Nothing



End Sub

Private Sub Command1_Click()

Call RunAccessSub

End Sub

نفذ البرنامج بعد تعبئة الجدول بالاسماء التجريبية .

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

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

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

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

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

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