محاولة لانشاء برنامج قواعد بيانات للكتب والمؤلفين
#10
السلام عليكم

سأحاول التلميح لبعض الأمور ، لأن رأيي قبل البرمجة :
1-ماذا تريد أن تكون النتيجة،
2- إقرأ عن المكونات التي تريد استعمالها،
3-نظم أفكارك (لأن زمن البرمجة مباشرة على الشاشة قد ولّى منذ زمن)

أولا مكان قاعدة البيانات DataBaseName يكون دائما مشكل لمستعمل أخر، و لكي لا نحتاج دائما للتعديل بدل من D:\rabah\data يكون data\.

ثانيا : اللون الأحمر يمثل الخطأ
كود :
[color=Blue]// عند الضغط على الزر جديد[/color] procedure TForm1.BitBtn7Click(Sender: TObject); begin [color=Red]t02.Insert ;[/color] end; [color=Blue]// عند الضغط على الزر موافق[/color] procedure TForm1.BitBtn1Click(Sender: TObject); begin [color=Red]t02.open ;[/color] t02.First ; if t02.FindKey([editnum.Text]) then showmessage('هذا الرقم موجود') else begin [color=Red]t02.Append ;[/color] t02num.Value :=editnum.Text ; t02nom_livre.Value :=editnom_livre.Text ; t02nom_auteur.Value :=editnom_auteur.Text ; t02n_taslsoli.Value :=editn_taslsoli.Text ; t02n_idaa.Value :=editn_idaa.Text ; t02isbn.Value :=editisbn.Text ; t02code.Value := inttostr(combobox1.ItemIndex); t02.post; showmessage('تم إضافة الكناب ....'); end; end;

. ليس من المنطق Insert ثم Open

. لماذا T02.First ؟؟

. اختار واحد بين Append أو Insert طالع Help الخاص بالدلفي لمعرفة الفرق

ثانيا :

إقتباس :احاول ان ادخل نوع الكتاب عن طريق combobox لكنني لا أستطيع

لأن في قاعدة البيانات Code هي من نوع A من الحجم 2

و انت تريد ادخال ترتيب النوع في ComboBox علما بأن ItemIndex يبدأ من 0، لا أظن أنك تريد 0 ككود

و العقبة الأخرى هي كما قلت Code هي من نوع A من الحجم 2، لو كانت من نوع رقمي (I) لكان أحسن

لأنك استعملت ItemIndex الدي هو رقمي وجدولك يستعمل '01,02,03...' كنصوص

هناك فرق بين 1 (رقم) و 01 (نص)

لماذا لم تعملا مع t02.FieldByName('code').AsString

كود :
t02.FieldByName('code').AsString := '0'+inttostr(combobox1.ItemIndex+1);

ثالثا :

الأهم من هذا كله لقد وضعت DBEdit و أردت استعمالها كـ Edit

DBEdit لها علاقة مباشرة مع قاعدة البيانات (أدخل التعديلات منها دون الضغط على الأزرار و لاحظ الجدول)

اعذرني ، لكن البرنامج غير منظم (و أحيانا غير منطقي)

و إذا أردت (كبداية) العمل بوضوح اجعل لكل عملية واجهة و برمجة خاصة بها (الإضافة ، التعديل، الحذف ، القراءة ..) ثم بعد التمكن منها ابدا بالعمل على واجهة متعددة العمليات.

سأتوقف هنا ونصيحتي : انسى ما قمت به، نظم أفكارك، اقرأ عن الهدف من المكون المستعمل و استعمالاته، في الأخير حاول دائما تصور ما تريد القيام به قبل البدئ به

هذا رأيي وقد تجد أحسن و أنفع منه

بالتوفيق
الرد


الردود في هذا الموضوع
محاولة لانشاء برنامج قواعد بيانات للكتب والمؤلفين - بواسطة merouane - 28-05-2008, 03:53 PM

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم