سنكمل الدورة ان شاء الله بعد غياب طويل بسبب بعض الإلتزامات مع بعض المشتركين في الموقع الذين ساعدناهم في التخرج
و الذين لم يشكرونا حتى ..... سامحهم الله
في هذا الدرس الثامن قمنا بإنشاء نافدة جديدة نستطيع من
خلالها التحكم في المعلومات الخاصة بالمدرسة او المؤسسة التي تستعمل هذا البرنامج حيث اننا قمنا ببرمجة
خاصية المؤسسة الوحيدة اي ان البرنامج يعمل بنسخة وحيدة لكل مدرسة و لا نستطيع
اضافة مدارس اخرى في نفس نسخة البرنامج في ما اذا اضفنا المعلومات طبعا العمليات
الأخرى بالنسبة للمدرسة موجودة مثل التعديل
والحذف إضافة الى العمليات الخاصة بتنبيه المستخدم للبرنامج بالعتاد التابع للمدرسة خاصة المعلومات المتعلقة بالسيارات من تأمين و تاريخ نهاية البطاقة التقنية و تاريخ نهاية صلاحية البطاقة الرمادية اضافة الى تغيير زيت المحرك بحسب عدد الكيلومترات المستهلكة من قبل السيارة
ثم لدينا الجزء الخاص بقاعدة البيانات و الإحتفاظ بنسخة احتياطية ثم استرجاعها في حال تم حدوث خلل في البرنامج أو في جهاز الكمبيوتر
والحذف إضافة الى العمليات الخاصة بتنبيه المستخدم للبرنامج بالعتاد التابع للمدرسة خاصة المعلومات المتعلقة بالسيارات من تأمين و تاريخ نهاية البطاقة التقنية و تاريخ نهاية صلاحية البطاقة الرمادية اضافة الى تغيير زيت المحرك بحسب عدد الكيلومترات المستهلكة من قبل السيارة
ثم لدينا الجزء الخاص بقاعدة البيانات و الإحتفاظ بنسخة احتياطية ثم استرجاعها في حال تم حدوث خلل في البرنامج أو في جهاز الكمبيوتر
النافدة الخاصة بالإعدادات
الدرس
قمنا بتقسيمه الى جزئين من حيث شرح الفيديو نتمنى ان يكون الشرح مفهوم ان شاء الله
الأكواد المستعملة
الكود الأول استعملناه في الحدث onchange لكل مكون خاص بالحجز للمدرسة حتى لا نترك الحقول فارغة في قاعدة البيانات كشرط لتفعيل زر الموافقة على ادخال المعلومات
procedure TForm4.spSkinDBDateEdit1Change(Sender: TObject);
begin
if (spSkinDBEdit1.Text <> '') and
(spSkinDBEdit2.Text <> '') and
(spSkinDBEdit3.Text <> '') and
(spSkinDBEdit4.Text <> '') and
(spSkinDBEdit5.Text <> '') and
(spSkinDBEdit6.Text <> '') and
(spSkinDBDateEdit1.Text <> ' / / ')
then
begin
spSkinSpeedButton24.Enabled := true;
end
else
begin
spSkinSpeedButton24.Enabled := false;
end;
end;
الكود الثاني استعملناه في الزر اضافة مدرسة و الذي يعطينا الفرصة لحجز مدرسة وحيدة لكل نسخة البرنامج حتى تظهر في
جميع الوثائق المراد طباعتها و حتى في حول البرنامج
procedure TForm4.spSkinSpeedButton19Click(Sender: TObject);
begin
spSkinDBEdit1.SetFocus;
spSkinDBEdit1.ReadOnly := false;
spSkinDBEdit2.ReadOnly := false;
spSkinDBEdit3.ReadOnly := false;
spSkinDBEdit4.ReadOnly := false;
spSkinDBEdit5.ReadOnly := false;
spSkinDBEdit6.ReadOnly := false;
spSkinDBDateEdit1.ReadOnly := false;
spSkinSpeedButton21.Enabled:=false;
spSkinSpeedButton23.Enabled:=false;
spSkinSpeedButton3.Enabled:=false;
if DataModule2.ABSTableETS.RecordCount<=0 then
begin
DataModule2.ABSTableETS.Insert;
DataModule2.ABSTableETS.Edit;
end
else
messagebox(form4.handle,' لقد تم حجز المدرسة مسبقا يمكنك التعديل او الحدف ... شكرا','....حدث خطأ ',64);
end;
الكود المستعمل في تصدير قاعدة البيانات
procedure TForm6.spSkinEdit1Change(Sender: TObject);
begin
if (spSkinEdit1.Text<>'') and (spSkinEdit2.Text<>'') then
begin
spSkinSpeedButton1.Enabled := true;
end
else
spSkinSpeedButton1.Enabled := false;
end;
procedure TForm6.spSkinEdit2Change(Sender: TObject);
begin
if (spSkinEdit1.Text<>'') and (spSkinEdit2.Text<>'') then
begin
spSkinSpeedButton1.Enabled := true;
end
else
spSkinSpeedButton1.Enabled := false;
end;
procedure TForm6.spSkinSpeedButton1Click(Sender: TObject);
begin
form6.Height := 320;
CopyFile(pchar(spSkinEdit1.Text),pchar(spSkinEdit2.Text),False);
timer1.Enabled := true;
end;
procedure TForm6.spSkinSpeedButton2Click(Sender: TObject);
var source : string;
begin
if spSkinOpenDialog1.Execute then
begin
source := spSkinOpenDialog1.FileName;
spSkinEdit1.Text := source;
end;
end;
procedure TForm6.spSkinSpeedButton3Click(Sender: TObject);
var
Dir: string;
begin
Dir := ExtractFilePath(Application.ExeName);
if SelectDirectory(Dir, [sdAllowCreate, sdPerformCreate, sdPrompt],1000) then
begin
spSkinEdit2.Text := Dir;
spSkinEdit2.Text := spSkinEdit2.Text + '\' + ExtractFileName(spSkinEdit1.Text);
end;
end;
أما الأكواد المستعملة في الأزرار فهي
procedure TForm4.spSkinSpeedButton21Click(Sender: TObject);
begin
DataModule2.ABSTableETS.Edit;
spSkinDBEdit1.ReadOnly := false;
spSkinDBEdit2.ReadOnly := false;
spSkinDBEdit3.ReadOnly := false;
spSkinDBEdit4.ReadOnly := false;
spSkinDBEdit5.ReadOnly := false;
spSkinDBEdit6.ReadOnly := false;
spSkinDBDateEdit1.ReadOnly := false;
spSkinDBEdit1.ReadOnly := false;
spSkinSpeedButton23.Enabled:=false;
spSkinSpeedButton15.Enabled:=false;
spSkinSpeedButton24.Enabled:=true;
end;
procedure TForm4.spSkinSpeedButton22Click(Sender: TObject);
begin
Form4.Enabled := false;
form7.Show;
form7.Height := 255;
form7.spSkinEdit1.text := '';
form7.spSkinEdit2.text := '';
form7.timer1.Enabled := false;
end;
procedure TForm4.spSkinSpeedButton23Click(Sender: TObject);
begin
DataModule2.ABSTableETS.Delete;
spSkinSpeedButton19.Enabled:=true;
spSkinSpeedButton21.Enabled:=false;
spSkinSpeedButton24.Enabled:=false;
spSkinSpeedButton23.Enabled:=false;
end;
procedure TForm4.spSkinSpeedButton24Click(Sender: TObject);
begin
DataModule2.ABSTableETS.Post;
spSkinSpeedButton24.Enabled:=false;
spSkinSpeedButton15.Enabled:=true;
spSkinSpeedButton21.Enabled:=true;
spSkinSpeedButton23.Enabled:=true;
spSkinSpeedButton1.Enabled:=true;
spSkinSpeedButton3.Enabled:=true;
end;
درس الفيديو ج1
--------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------
درس الفيديو ج2
--------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------
قد يعجبك ايضا