المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : تغيير قاعدة بيانات الشركة فى الكريستال ريبورت10


Medhat M
30-Oct-2012, 04:53 PM
برجاء الافادة فى كيف يمكننى ان استخدم تقرير واحد مصمم بالكريستال ريبورت 10 لأكثر من شركة على نفس السيرفر الاس كيو ال
من خلال الفيجوال بيسيك

osamamakled
01-Nov-2012, 08:19 AM
السلام عليكم و رحمة الله و بركاته

السؤال غير و اضح الهدف منه
إذا كنت تريد إستخراج بيانات للشركتين معا عن طريق التقرير - فيمكنك إضافة New Data Base - ADO لكل منهما و ربط الجداول مع معضهما و لكن سيكون التقرير بطيئ نوعا معا
أو عمل Union View بقاعدة البيانات للشركتين

ahai
01-Nov-2012, 08:32 AM
السلام عليكم و رحمة الله و بركاته

السؤال غير و اضح الهدف منه
إذا كنت تريد إستخراج بيانات للشركتين معا عن طريق التقرير - فيمكنك إضافة New Data Base - ADO لكل منهما و ربط الجداول مع معضهما و لكن سيكون التقرير بطيئ نوعا معا
أو عمل Union View بقاعدة البيانات للشركتين

برجاء الافادة فى كيف يمكننى ان استخدم تقرير واحد مصمم بالكريستال ريبورت 10 لأكثر من شركة على نفس السيرفر الاس كيو ال
من خلال الفيجوال بيسيك

ما فهمته من الأخ مدحت هو أنه يريد استخدام نفس التقرير ليقرأ بيانات من أي شركة دون الحاجة إلى إنشاء تقرير مستقل لكل شركة. صح أخ مدحت؟

والحقيقة معه حق في حال كانت الشركة تعتمد على تعدد الشركات بشكل كبير, فعملية ال Deployment لكل تقرير تصبح مملة ومضيعة للوقت.

Medhat M
01-Nov-2012, 08:33 AM
شكرا اخ اسامة والاخ العضو hai للرد على السؤال المقصود منه فعلا هو كيفية تغيير
قاعدة البيانات بطريقة اوتوماتيكية فى الكريستال ريبورت 10
باستخدام الفيجوال بيسيك 6
اى بمعنى اخر استخدام نفس التقرير لاكثرمن شركة بدون الحاجة للدخول على التقرير
او انشاء تقرير مستقل لكل شركة

osamamakled
01-Nov-2012, 08:52 AM
شكرا اخ اسامة والاخ العضو hai للرد على السؤال المقصود منه فعلا هو كيفية تغيير
قاعدة البيانات بطريقة اوتوماتيكية فى الكريستال ريبورت 10
باستخدام الفيجوال بيسيك 6
اى بمعنى اخر استخدام نفس التقرير لاكثرمن شركة بدون الحاجة للدخول على التقرير
او انشاء تقرير مستقل لكل شركة

أولا أخى الفاضل هل لديمكم ملفات الربط بين VB6 و Crystal Report 10 أم لا (OCX , DLL)

Medhat M
01-Nov-2012, 08:59 AM
لا ليس لدى ملفات للربط
اعتقد ان الملف المطلوب هو pdsoledb.dll
بحثت عنه كثيرا ولم اجده

ahmedzico
02-Nov-2012, 09:43 AM
السلام عليكم اخواني الاعزاء
المشكلة في استدعاء التقارير تحدث عندما تكون بيانات الــ Schema لقاعدة البيانات مخزنة بالتقرير .
فعند استدعاء التقرير يجب علينا مسح تلك البيانات ان وجدت وايضا يجب علينا المرور على جميع جداول التقرير لتمرير اسم قاعدة البيانات والمستخدم وكلمة المرور وفيما يلي الكود الخاص بتلك العملية :

Dim crxTable As CRAXDRT.DatabaseTables
For Each crxTable In crxRpt.Database.Tables
crxTable.SetLogOnInfo "ServerOrDSNName", "DBName", "UserID", "Password"
If InStr(crxTable.Location, ".dbo.") > 1 Then
crxTable.Locaton = Split(crxTable.Location, ".")(2)
End If
Next crxTable

Medhat M
03-Nov-2012, 09:33 AM
شكرا جزيللا اخ احمد
حجرب الكود

walidzak
02-Dec-2012, 02:49 PM
شكرا على الايضاح

hishamglal65
07-Jan-2013, 06:54 AM
شكرا الف شكر

osamamakled
08-Jan-2013, 07:28 AM
السلام عليكم اخواني الاعزاء
المشكلة في استدعاء التقارير تحدث عندما تكون بيانات الــ schema لقاعدة البيانات مخزنة بالتقرير .
فعند استدعاء التقرير يجب علينا مسح تلك البيانات ان وجدت وايضا يجب علينا المرور على جميع جداول التقرير لتمرير اسم قاعدة البيانات والمستخدم وكلمة المرور وفيما يلي الكود الخاص بتلك العملية :

dim crxtable as craxdrt.databasetables
for each crxtable in crxrpt.database.tables
crxtable.setlogoninfo "serverordsnname", "dbname", "userid", "password"
if instr(crxtable.location, ".dbo.") > 1 then
crxtable.locaton = split(crxtable.location, ".")(2)
end if
next crxtable


جزاك الله خيرا أخى أحمد

walidzak
29-Mar-2013, 08:39 PM
شكرا جزيللا اخ احمد