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

مساعدة في تصميم الجداول

بدأه aymanabdo في 14 يونيو 2010 · 9 رد · 1,011 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

الأخوة أعضاء المنتدى

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

أخواني أنا عضو جديد في عالم البرمجة وخصوصاً الدلفي..فهذه الأيام أقوم بعمل منظومة بلغة الدلفي وقاعدة البيانات أكسس..

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

1/ البيانات الشخصية وهي عبارة عن بيانات عن الموظف..

2/البيانات العسكرية وهي عبارة عن بيانات عسكرية خاصة بالموظف

3/ الدورات التي خاضها

4 الأوسمة والميداليات التي نالها

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

ثانياً هل أقوم بعمل جدول خاص للدورات التي خاضها الموظف ؟ علماً بان الموظف ممكن يشترك في أكثر من دورة

ونفس الحال على الأوسمة والميداليات هل أحتاج لجدول خاص ؟

ملحوظة:

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

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

ولكم مني السلام

#2

اخي ايمن عبده

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

لي رجا ان تستخدم الخط العادي حتى لا ياخذ حيز اكبر في الصفحه

aymanabdo كتب:

الأخوة أعضاء المنتدى

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

أخواني أنا عضو جديد في عالم البرمجة وخصوصاً الدلفي..فهذه الأيام أقوم بعمل منظومة بلغة الدلفي وقاعدة البيانات أكسس..

اهلا بك كعضو في هواة الدولفي

aymanabdo كتب:

1/ البيانات الشخصية وهي عبارة عن بيانات عن الموظف..

2/البيانات العسكرية وهي عبارة عن بيانات عسكرية خاصة بالموظف

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

هل المعلومات العسكريه تتبع للشخص نفسه صاحب البيانات الشخصيه ام تتكرر وانا اعتقد ان هذه البيانات تصلح ان تكون في ملف واحد برقم الموظف ووضع خانه تخص النوعيه(موظف مدني او عسكري( ثابته لا تتعدل)) ليكون الإستعلام مرتبط بها

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

aymanabdo كتب:

3/ الدورات التي خاضها

4/ الأوسمة والميداليات التي نالها

يلزمك ملف للدورات وملف للأوسمه والميداليات مرتبط برقم الموظف سواءا المدني او العسكري مع النوعيه ((موظف مدني او عسكري))هذا اذا كان المعنيين مختلط مابين مدني وعسكري اما اذا كانوا نوعيه واحده فعادي ولا تحتاج اى جهد كبير

aymanabdo كتب:

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

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

عادي ستحصل عليها بتقرير واحد ولكن اهم شي ضع بكل ملف التالي

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

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

تاريخ حصوله على الدوره (مثال>>> حصل عليها في 11 / 12 / 1431 هـ انسخه ليصبح كما يلي (14311211) وضعه في حقل لوحده حتى تكون الدورات والأسمه متسلسله بالتقرير

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

تحياتي

تم تعديل هذه المشاركة بواسطة shalwan في 14 يونيو 2010 في 12:22

نسأل الله الجنه لنا ولوالدينا ولمن لهم حق علينا

#3

أخي العزيز shalwan

في الحقيقة يعجز اللسان عن التعبير لكم ...لكن كل الذي في وسعي أن أقول لكم جعلها الله في ميزان حسناتكم وأثابكم بها الجنة

أخي الملعلومات عن عسكريين وليسو مدنيين

يعني البيانات العسكرية في جدول واحد

الدورات في جدول أخر مربوط عن طريق الرقم الموظف

وكذلك الأوسمة والميداليات ؟؟؟؟

شكراً

#4
aymanabdo كتب:

أخي الملعلومات عن عسكريين وليسو مدنيين

يعني البيانات العسكرية في جدول واحد

الدورات في جدول أخر مربوط عن طريق الرقم الموظف

وكذلك الأوسمة والميداليات ؟؟؟؟ً

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

عفوا اخي

اسأل الله لنا ولوالدينا الجنه يارب

اخي صحيح ما نوهت عنه كلا في ملف برابط رقم الموظف وما اشرت اليه سابقا من الحقول المهمه

انا اعرف بأن هناك امور سريه لا ترغب ان تضع نفسك بموقف حرج ولكن اتركنا نتكلم في العاميات واما الخصوصيات فعليك انت بها اتفقنا

تم تعديل هذه المشاركة بواسطة shalwan في 14 يونيو 2010 في 18:57

نسأل الله الجنه لنا ولوالدينا ولمن لهم حق علينا

#5

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

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

ثانياً واجهتني مشكلة وهي عندما أريد أن أضيف حقل من النوع رقمي إلى قاعدة البيانات

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

Form1.ADOTable1.FieldByName('tحيث هنا أسم الحقل كما مسمى في قاعدة البيانات').AsString := Edit1.Text;

/code]]

هذه للحروف أما الأرقام فجربت بدل asstring عملت asinteger فلم تنجح

أرجو التوضيح

والله الموفق

تم تعديل هذه المشاركة بواسطة aymanabdo في 15 يونيو 2010 في 07:32

#6
aymanabdo كتب:

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

أرجو التوضيح

والله الموفق

سأوافيك بالمطلوب كلا على حده ولكن سامحني حاليا مشغول

تم تعديل هذه المشاركة بواسطة shalwan في 15 يونيو 2010 في 22:41

نسأل الله الجنه لنا ولوالدينا ولمن لهم حق علينا

#7
aymanabdo كتب:

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

نعم جدول خاص لكل ماذكرته اي ثلاثة جدوال

aymanabdo كتب:

ثانياً واجهتني مشكلة وهي عندما أريد أن أضيف حقل من النوع رقمي إلى قاعدة البيانات

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

Form1.ADOTable1.FieldByName('t').AsString := Edit1.Text;

هذه للحروف أما الأرقام فجربت بدل asstring عملت asinteger فلم تنجح

أرجو التوضيح

والله الموفق

اما الإضافه

فإستخدم ما يلي

form1.adotable.fieldbyname('').text:=edit2.text;

او اذا كان متغير رقمير وليست edit2.text

form1.adotable.fieldbyname('').text:=floattpstr(a);

او بدون تحويل كالتالي (form1.adotable.fieldbyname('').value:=a;)

او بإستخدام الكوري كالتالي

اضف ايقونة adocommand

وابدأ تعبئته كما يلي

form1.adocommand.commandtext:='insert into dbfname(a,b,c,d,t) value :p1,:p2,:p3,:p4)';

form1.adocommand.parameters.parambyname('p1').value:=edit1.text;

على اعتبار dbfname اسم الملف بقاعدة البيانات

form1.adocommand.parameters.parambyname('p2').value:=edit2.text;

form1.adocommand.parameters.parambyname('p3').value:=edit3.text;

form1.adocommand.parameters.parambyname('p4').value:=a;

form1.adocommand.execute();

وهنا سيتم الأضافه الى الملف لحقوله الأربعه والمتغيرات الأربعه وليس لديه تفرقه بين حرفي ورقمي وسواءا مفتوح او مغلق افتح الملف وشاهد الأضافه

تحياتي لك ولكافة الأخوه

نسأل الله الجنه لنا ولوالدينا ولمن لهم حق علينا

#8

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

بس أخي عندي مشكلة بسيطة أخرى عارف نفسي كتر عليكم

:P :P

هي عند أدخال نفس القيمة للمفتاح الرئيسي تظهر رسالة من الدلفي تخبر بان هنالك duplicate ...أريد أن أبرمج هذه الرسالة بنفسي لكني فشلت

وأيضاً عندما أكون في السجل الأول وأضغط على الزر مفروض تتلع رسالة تخبرني أنني حالياً في السجل الأول

أستحملوني شوية يا جماعة

#9
aymanabdo كتب:

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

بس أخي عندي مشكلة بسيطة أخرى عارف نفسي كتر عليكم

:P :P

هي عند أدخال نفس القيمة للمفتاح الرئيسي تظهر رسالة من الدلفي تخبر بان هنالك duplicate ...أريد أن أبرمج هذه الرسالة بنفسي لكني فشلت

وأيضاً عندما أكون في السجل الأول وأضغط على الزر مفروض تتلع رسالة تخبرني أنني حالياً في السجل الأول

أستحملوني شوية يا جماعة

اصلا المفتاح الرئيسي وضعته بحيث يكون فريد لا يمكن تكراره صح ام لا

وهذا يعني انك اضفت رقم سبق ادخاله اذا ابحث اولا قبل قبول الإضافه اذا كان موجود ينبهك بذالك showmessage('هذا الرقم مدخل من السابق');

ماذا تستفيد من اعلامك بالسجل الأول او الثاني لك منه الموظف فقط وبرقمه ولا يتكرر

تم تعديل هذه المشاركة بواسطة shalwan في 16 يونيو 2010 في 18:23

نسأل الله الجنه لنا ولوالدينا ولمن لهم حق علينا

#10

السلام عليكم أخي ...

قد تغلبت على أغلب المشاكل لكن مشكلتي حالياً

أستخدمت الأداة delphitwain وهي لجلب الصورة من الأسكانر الى البرنامج وتم ذلك بنجاح

لكن مشكلتي هنا كيف لي أن أحفظ الصورة في قاعدة البيانات... جربت هذا الكود ولم يفلح:

ADOTable1image.LoadFromFile(OleStrToString(ImageHolder.Picture));

وهو عندما أضغط على حفظ

ملحوظة:

imageholder هي المكان الذي يظهر عليه الصورة....من أسمها واضحة ههههههه

أرجو مساعدتي

فائق شكري وكامل ودي

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