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

كيف أطبع صفحة بها معلومات من قاعدة البيانات

بدأه Saad AL.Moosa في 25 أغسطس 2009 · 8 رد · 1,080 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

أخواني أنا لدي قاعدة بيانات وأريد أن أطبع صفحة تحتوي معلومات سجل كامل بحيث تكون الحقول موزعة داخل الصفحة حسب تنسيقي

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

أريدها بتنسيق أنا أضعة وشكرا.

أخوكم سعد

تم تعديل هذه المشاركة بواسطة Saad AL.Moosa في 25 أغسطس 2009 في 03:50

google.gif

spamxk4.gif

petitionbanner17a.gif

Email : sao_-5000@hotmail.com

#2

أظن أن أسهل طريقة هي بـ string concatenation أي أنه عندي اسم شخص سأضع في الحدث PrintPage للكائن PrintDocument :

dim s as string = "الإسم : "+ textbox1.text
e.Grphics.DrawString(s, ...)

طبعا يجب أن يكون عندي متغير اسمه مثلا textY حيث سيمكنني من حساب البيكسل التالي الذي سأقوم برسم السطر التالي ابتداء منه. ارتفاع السطر يمكن حسابه من كائن Font المستعمل في رسم النصوص عبر الدالة GetHeight.

تحياتي...

#3

طيب مشكور على الأجابة لكن مافي طريقة بحيث مثلا أنا أجهز قالب بالفراغات ومن ثم تكون عملية ملئ الفراغات آلية مثلا أجهز صفحة HTML جاهز بفراغتها وأعبئها آليا ومن ثم أطبعها؟ مشكور على التجاوب.

google.gif

spamxk4.gif

petitionbanner17a.gif

Email : sao_-5000@hotmail.com

#4

يمكن فعل ذلك و لكن في هذه الحالة ستتم الطباعة عن طريق برنامج خارجي كـ IE أو وورد.

تحياتي...

#5

ماعندي مشكلة ممكن أستخدم بارمتر لتمرير أمر الطباعة ولكن هل لديك خلفية كيف يمكنني تعديل ملفات HTML آليا؟

ومشكور على التفاعل.

google.gif

spamxk4.gif

petitionbanner17a.gif

Email : sao_-5000@hotmail.com

#6

لتعديل كود HTML آليا, نفترض أن لنا موديل الصفحة التالي :

<table>
<tr>
<th>الإسم :</th>
<th>#name#</th>
</tr>

<tr>
<th>تاريخ الإزدياد :</th>
<th>#birthday#</th>
</tr>

<tr>
<th>العنوان :</th>
<th>#adress#</th>
</tr>

<tr>
<th>الهاتف :</th>
<th>#phone#</th>
</tr>

</table>

نقوم باستعمال الدالة Replace للكائن string بالشكل التالي :

dim s as string = "htm_document_code"
s = s.Replace("#name#", textBox1.Text)
s = s.Replace("#birthday#", dateTimePicker1.Value.ToString())
...

بعدها نكتب محتوى s داخل ملف و نمرره للبرنامج الخارجي للطباعة.

Shell("""C:\Program Files\Microsoft Office\Office12\winword.exe"" test.htm /mFilePrintDefault")

فمثلا الكود أعلاه يفتح الملف test.htm على الوورد مع تشغيل الطباعة عند الفتح أوتوماتيكيا.

تحياتي...

#7

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

سؤال آخر وإعذرني إذا كثرت عليك بالأسئلة هل أستطيع أن أنفذ أمر الطباعة بدون أن يظهر الورد؟؟

وهل أستطيع التعديل على ملفات وورد؟؟؟

مشكور أخوي.

تم تعديل هذه المشاركة بواسطة Saad AL.Moosa في 26 أغسطس 2009 في 03:43

google.gif

spamxk4.gif

petitionbanner17a.gif

Email : sao_-5000@hotmail.com

#8

هذا ما استطعت الوصول إليه. نافذة الوورد تظهر و تختفي بعد بدأ الطباعة.

أولا قم بزيادة Reference لـ Microsoft Word 12.0 Object Library إلى المشروع.

ثانيا, قم بزيادة السطرين التاليين في أعلى الموديل الذي به كود الطباعة.

Imports Word = Microsoft.Office.Interop.Word
Imports System.Runtime.InteropServices

و أخيرا الكود الذي يفتح وورد في الخلفية للطباعة فقط :

		Dim wordApp As Word.Application = CreateObject("Word.Application")
		Dim wordDoc = wordApp.Documents.Add("C:\Users\emmr.rida\Desktop\test.htm")
		wordDoc.PrintOut()
		wordApp.Documents.Close()
		wordApp.Quit()

تحياتي...

#9

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

http://www.java2s.com/Tutorial/VB/0440__Wi...orddocument.htm

ولكن ما لم أجده كيف أضيف أو أعدل صورة لملف وورد؟؟؟

وشكرا أخوي سأحاول أن أبحث عن الإجابة وإن وجدت شيئ سأضعه هنا.

مشكور.

google.gif

spamxk4.gif

petitionbanner17a.gif

Email : sao_-5000@hotmail.com

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

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

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

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

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