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

طباعة الdbgrid

مغلق
بدأه عيد الخلف في 26 مارس 2006 · 21 رد · 3,340 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

اسمي عيد الخلف عضو جديد في المنتدى

أود منكم مساعدتي في هذه المسألة

كيف أقوم بطباعة الDBGRID مباشرة دون الإستعانة بالQREPORT

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

و لكم جزيل الشكر

#2

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

مرحبا بك أخي في منتداك

يمكنك فعل ذلك بنفسك، إقرء

Formatting and Printing Output for the Printer

أو يمكنك تجربة المكون المرفق و يحتوي مثال

ويوجد مكونات غير مجانية أخرى

وإن واجهتك مشاكل لا تتردد

GridPrint.zip

d4baa0.gif
#3

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

فياليت لو يكون في شي مثال عملي يعني على dbgrid موجودة

و لكم مني جزيل الشكر

#4

أخي أكتب مثال، و سيتم لإظافة زر الطباعة

إن شاء الله

d4baa0.gif
#5

شكرا جزيلا على الإهتمام

و أنا ناطر الرد

ولكم مني جزيل الشكر

#6

لم تفهمني جيدا -_-

أنت أكتب مثال و إرفقك

d4baa0.gif
#7

شكرا للتوضيح

فيما يلي برنامج كمثال قاعدة البيانات فيه MSAccess و باستخدام ADO و لكن عند القيام بتفحص الأخطاء ظهر خطأ عند التعريف

var PrintReport:TPrintReport;

و بعد حذفه لم يعطي أخطاء

و عند ضغط زر الطباعة أعطى الرسالة خطأ في الوصول إلى الذاكرة

فأرجو المساعدة

test.zip

#8

السلام عليكم

للأسف الجهز الذي أعمل به الأن به Delphi 5 Pro

أي لا يوجد به مكونات ADO

لكن أرفقت لك مثال بسيط بلإستخدام Table

والملف PDF المرفق هو نتيجة الطباعة

لأظن سبب ظهور الخطاء هو نسيان شيئ ما

الأمر سهل،

بعد تثبيت المكون المرفق في مشاركتي الأولي

فقط ضعه في Form برنامجك،

وإكتب:

  PrintGrid1.DBGrid := DBGrid1;
  PrintGrid1.Print;

Print_DBGrid_Example.rar

Printed.pdf

d4baa0.gif
#9

السلام عليكم

شكرا أخي الفاضل

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

و هذا سبب لي مشكلة و هي أنن سأضطر لإعادة بناء قاعدة البيانات من جديد

#10

هل يمكن بناء اتصال مع قاعدة بيانات من نوع Access باستخدام الBDE

أرجو شرح الطريقة إن أمكن

و لكم مني جزيل الشكر

#11
عيد الخلف كتب:
هل يمكن بناء اتصال مع قاعدة بيانات من نوع Access باستخدام الBDE

أرجو شرح الطريقة إن أمكن

و لكم مني جزيل الشكر  بعد تطبيق الربط نفذت البرنامج و أعطى نفس رسالة الخطأ

و لذلك أعتقد أن المشكلة تكمن في قاعدة البيانات

#12

اخي الكريم انا شخصيا افضل استخدام Ado مع قواعد البيانات التي من عمل Microsoft مثل الاكسس و السيكول سيرفر

فهي تعمل معها بأداء افضل و بتوافقية اعلى

لا يمكن الاتصال مع Access عن طريق ال BDE و ذلك حسب قول Borland

اقتباس
Question:

Why can’t I connect to an Access database using the BDE and native MSACCESS driver?

Answer:

Access 2000:

You cannot connect to an Access 2000 database using the BDE’s native MSACCESS driver. It is recommended that you upgrade to Delphi 5 and use ADO. You could also connect using the BDE with ODBC.

Access 95 or 97:

You may get the message "BDE error 13059" and "General SQL error". If you are trying to connect to Access 95 or 97 databases using the BDE’s native MSACCESS driver, then you need to have DAO 3.0 installed for Access 95 or DAO 3.5 for Access 97 (DAO = Data Access Objects for Visual Basic). You can install the DAO by doing a custom installation of MS Office and selecting only to install Data Access Objects for Visual Basic. You must also have the correct DLL32 setting in the BDE Administrator for the DAO you have installed: IDDA3532.DLL for Access 97, IDDAO32.DLL for Access 95.

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#13

أخوتي الأعزاء قمت بربط قاعدة البيانات بواسطة الbde و باستخدام odbc و لكن المشكلة التي ظهرت لدي أنه و في حال كان الجدول يحتوي على أكثر من 10 حقول لا يقوم بطباعته و إنما يعطي رسالة خطأ

هذا من ناحية

من الناحية الثانية كيف أقوم بعمل preview للتقرير قبل طباعته

و لكم مني جزيل الشكر

#14

لا ادري ما هو الخطأ و لكن انصحك باستعمال Ado فهي متوافقة 100 % مع قاعدة البيانات Access

بالنسبة لمعاينة التقرير

ما هو برنامج التقارير الذي تستخدمه

Quick Report, Report Builder, quick Report, Rave report

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#15
اقتباس
ما هو برنامج التقارير الذي تستخدمه

Fast Report

لا يستخحم أي برامج

طلب كيفية طبع DBgrid بدون إستخدام Quick Report

لم يقل أبحث عن بديل لبرنامج QuickReport!

أخي عيد الخلف لما لم توضح من البداية أنك تريد PreView و تعمل بقاعدة بيانات Access...

هناك من المكونات غير المجانية ما يلبي حاجتك

http://www.tmssoftware.com/tmspackt1.htm

http://www.greatis.com/delphicb/printsuite/

http://www.grebarsys.com/html/printdat_features.html

http://www.objectsight.com/TopGridOverview.htm

http://www.etvsoft.com/

وغيرها

http://www.torry.net/pages.php?id=511

d4baa0.gif
#16

عذرا اخي دلتا لم انتبه الى الموضوع من بدايته

يعني يا اخي عيد من البداية قل تريد طباعة تقرير و ليس طباعة DbGraid فالامر مختلف

يعني الاخ دلتا شو بعرفوا انك بدك تطبع تقرير :blink: :blink:

لطباعة تقرير او استعراضه يمكنك استخدام احد برامج التقارير فهي تعطيك كل الامكانيات

في التصميم و المعاينة

هناك العديد من البرامج التي تساعد في كتابة التقارير يجب عليك اختيار احداها

ما هي نسخة دلفي التي تعمل عليها؟

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#17

السلام عليكم

يبدو انني لم أوضح الفكرة لكم بالشكل المطلوب

أنا أريد أن أطبع Dbgrid و لكن أيضأ أتمكن من استعراضه و معاينته قبل الطباعة و التحكم بمظهره

أنا أستخدم دلفي 6

و قد حاولت استخدام الqreport و لكن لم ينجح الأمر

فأرجوالإفادة إن أمكن

أخوتي الأعزاء أرجو ألا أكون قد أزعجتكم و لكن أرجو إفادتي في كيفية بناء تقرير باستخدام الQreport الموجود مع دلفي 6

و لكم مني جزيل الشكر

كيف يمكن نقل عناصر الStringGrid إلى جدول في قاعدة البيانات

#18

اخي الكريم لا يمكنك استعراض Dbgraid هكذا يجب عليك الاعتماد على برنامج Report لعمل ذلك

بالنسبة لل Quick Report

في اخر المشاركة التالية هناك ملف يشرح ال Quick Report

من هنا

و هذا ايضا قد يساعدك كثير من هنا

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

بالنسبة ل

اقتباس
كيف يمكن نقل عناصر الStringGrid إلى جدول في قاعدة البيانات

لماذ تريد ان تفعل هذا هل لأن هناك نقص ما في DBGraid؟

على كل

يمكنك ذلك ببساطة بعمل اجرائية تقوم بأخذ مثل Stringgraid,table مثلا لتقوم هذه الاجرائية بتعبئة القيم

الموجودة

سوف اضع لك مثال في ما بعد و لكن هل مازلت تستخدم BDE؟

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#19

السلام عليكم

نعم قمت بربط قاعدة البيانات باستخدام الBDE و ضبطت الأمور

أنا ما أود القيام به هو نقل ملفات إكسل إلى قاعدة البيانات

قمت بنقل محتويات ملف الإكسل إلى الStringGrid و بقي أن أنقل محتويات الStringGrid إلى الجدول

و شكرا لكم

#20

سأعطيك طريقة افضل و اسهل بكثير من StringGraid

قم بوضع Adotable من صفحة Ado ثم قم بالضغط على خاصية ConnectioString

ثم اختر Build ثم في صفحة Provider قم باختيار Microsoft.Jet.OLEDB.4.0 ثم في صفحة Connection

قم بتحديد ملف الاكسل ثم من صفحة All قم باختيار Extended Properties ثم حررها و اكتب

Excel 8.0

ثم قم من الخاصية TableName لل Adotable بوضع اسم الصفحة التي تريد الاستيراد منها

هكذا اصبح هناك ربط عن طريق ال AdoTable مع ملف الاكسل

ثم قم بالنقر مرتين على Adotable ثم اختر زر يميني ثم Addallfields

يجب الان نقل البيانات من Adotable الى Table سوف اعطيك القالب و انت فصل حسب ما تريد

adotable.active:= true;
while not adotable.eof do
begin
table1.insert;
table1Name.value:= adotableName.value;
//قم بوضع بقية الحقول التي ترغب بها
table1.post;
adotable.next
end;

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

#21

السلام عليكم

قمت بالعملية و كما وصفتها لي و لكن عند إدخال اسم الجدول تظهر لي الرسالة التالية external table is not in the expected format

مع العلم أني أستخدم Office 2003

#22

لا ادري ما المشكلة حاول اولا ان تربط مع ملف Excel جديد قم بوضع بعض الحقول به فاذا نجحت في ذلك يكون هناك مشكلة ما في تنسيق

ملف ال Excel الذي تستعمله

لحل المشكلة مع ملف Excel تبعك اذا كان هناك مشكلة

قم بفتح الملف ببرنامج Excel ثم قم باختيار Insert ثم Name ثم Define ثم قم بوضع المجال الذي تريد ان تتعامل معه

و ذلك لأن Excel ليس قاعدة بيانات و انما SperadSheet ذلك يجب عليك تعريف المجال الذي تريد ان تتعامل معه في بعض الاحيان

اذا ما مشي الحال قم بارفاق نسخة من الملف و سوف انطر ما المشكلة

رب اجعلني مقيم الصلاة ومن ذريتي ربنا وتقبل دعاء.

لا تنسى: "العقل مثل العضلة كلما استخدمته أكثر كلما ازدادت قوته"

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

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