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

الدرس العشرون من دروس -SQL Server 2014- عمليات Insert -...

اليوم في هذا الدرس سنتطرق الى العمليات الثلاث المهمة في SQL Server و هي  Insert - Up...
اقرأ المزيد
دروس قواعد البيانات
منذ بضع اعوام

الدرس التاسع عشر من دروس -SQL Server 2014- التعليمات Where...

في هذ الدرس الجديد من دروس SQL Server 2014  اليوم سنرى التعليمات الخاصة بتحديد ن...
اقرأ المزيد
دروس قواعد البيانات
منذ بضع اعوام

الدرس الثامن عشر من دروس -SQL Server 2014- التعليمة...

في هذا الدرس الجديد من دروس SQL Server 2014   ُتعتبر تعليمة  Select&nb...
اقرأ المزيد
دروس قواعد البيانات
منذ بضع اعوام

الدرس السابع عشر من دروس -SQL Server 2014- ...

في هذا الدرس الجديد من دروس SQL Server 2014 الإجراءات المخزنة (Les procédures stock...
اقرأ المزيد
دروس قواعد البيانات
منذ بضع اعوام

الدرس السادس عشر من دروس -SQL Server 2014- عمل...

في هذا الدرس الجديد من سلسلة دروس SQL Server 2014 Diagram  هي مجموعة من العناص...
اقرأ المزيد
دروس قواعد البيانات
منذ بضع اعوام

الدرس الخامس عشر من دروس -SQL Server 2014- ربط الجداول...

في هذا الدرس الجديد الخاص بدروس SQL Server 2014  اليوم في هذا الدرس سنريكم كيفية...
اقرأ المزيد
دروس قواعد البيانات
منذ بضع اعوام

الدرس الرابع عشر من دروس -SQL Server 2014- ربط الجداول...

في هذا الدرس الجديد من دروس  SQL Server 2014  سنرى اليوم كيفية ربط الجداول...
اقرأ المزيد
دروس قواعد البيانات
منذ بضع اعوام

الدرس الثالث عشر من دروس -SQL Server 2014- التحليل المعلوماتي...

في هذا الدرس الجديد الخاص بدروس -SQL Server 2014- اليوم سنرى طريقة التحليل المعلوماتي&nb...
اقرأ المزيد
دروس قواعد البيانات
منذ بضع اعوام

الدرس الثاني عشر من دروس-SQL Server 2014- إنشاء الجداول...

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

الدرس الحادي عشر من دروس -SQL Server 2014- إنشاء...

في هذا الدرس الجديد من دروس SQL Server 2014 سنرى اليوم كيفية إنشاء الجداول عن طريق النمو...
اقرأ المزيد

دورة مشروع برنامج تسيير مدارس تعليم السياقة بالدلفي من الصفر الى الإحتراف - الدرس الثامن



سنكمل الدورة ان شاء الله بعد غياب طويل بسبب بعض الإلتزامات مع بعض المشتركين في الموقع الذين ساعدناهم في التخرج 
و الذين لم يشكرونا حتى ..... سامحهم الله 

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

النافدة الخاصة بالإعدادات 



الدرس قمنا بتقسيمه الى جزئين من حيث شرح الفيديو نتمنى ان يكون الشرح مفهوم ان شاء الله

الأكواد المستعملة 

الكود الأول استعملناه في الحدث 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
--------------------------------------------------------------------------------------------------------------------------



--------------------------------------------------------------------------------------------------------------------------












قد يعجبك ايضا
تعليقات
تعليقات Bloggerتعليقات Disqus



حجم الخط
+
16
-
تباعد السطور
+
2
-