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

تقرير من ثلاثة جداول

بدأه format82 في 22 ديسمبر 2009 · 7 رد · 950 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

سلام عليكم

لدي ثلاثة جداول

الجدول الاول بها رقم الموظف واسم الموظف

الجدول الثاني بها رقم الموظف والتاريخ والزمن

الجدول الثالث بها رقم الموظف والتاريخ والزمن والحالة

اريد جلب اسماء الموظفين الغير موجودين في الجدولين (الثاني والثالث) بالمقارنة (رقم الموظف في ثلاثة جداول والتاريخ في الجدولين الثاني والثالث)

#2

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

قم جمع كل ذلك باستعلام ومن ثم اطبع الاستعلام بكل بساطة

وفقنا الله واياكم لما يحبه ويرضاه

اللهم علمنا ما ينفعنا وانفعنا بما علمتنا وانفع الناس بنا واغفر لنا وارحمنا

#3

شكرا علي الرد

توضيح اكثر

الجدول الاول بيانات الموظفين

الجدول الثاني بيانات الحضور

الجدول الثالث بيانات المرضي واجازات واذونات

اريد اسماء الموظفين الذين لم يحضرو في تاريخ معين

اي لا يكون مسجل في جدول الحضور ولا جدول المرضي والخ

استعمل ADOQuery و QuickRep وDateTimePicker لادخال التاريخ

ولكم جزيل الشكر

#4

بسم الله الرحمن الرحيم

اخي الكريم يمكنك ان تستخدم ADOQuery

وترسل اليها استعلام كالاتي

Select  Field1,Field2,Field3,Field4 From Table1,Table2,Table3 Where Field =Condition

طبق هذا المثال على الحقول والجدوال التي عندك .

وتقوم بطباعتها بالطريقة العادية اذا كان لديك اي اشكال عليك ان تضع مرفقا يحتوي على المثال الذي تريده

وفقنا الله واياكم لما يحبه ويرضاه

اللهم علمنا ما ينفعنا وانفعنا بما علمتنا وانفع الناس بنا واغفر لنا وارحمنا

#5

شكرا يا اخي

بارك الله فيك

#6

عزيزي جمله الاستعلام هذه ستقوم بعرض كافة الموظفين + اسمائهم الغير موجودين في في جدول الحضور والانصراف

SELECT * FROM Employees WHERE  Employee_ID NOT IN (SELECT Employee_ID FROM Attendance)

وكرر نفس الطريقة مع جدول الاجازات .

تحياتي

تم تعديل هذه المشاركة بواسطة prof_1982 في 30 ديسمبر 2009 في 14:22

الإنسان الذي يقول بأنه لا يمكن عمل شيء يجب ألا يعيق مطلقاً الإنسان الذي يقوم بعمل ذلك الشيء.

إن تخطئ فأنت إنسان ... أما أن تلوم جهازك الكمبيوتر على خطأك فهذا أكثر إنسانية.

#7

مثال كامل للعملية

انشاء الجداول واضافة مجموعة موظفين في جدول الموظفين

Create table Employees(
id int identity (1,1) not null,
Employee_Name Nvarchar(100),
Employee_ID int 

)

Create table Attendance(
id int identity (1,1) not null,
Employee_ID int ,
Attend_Time Datetime ,
Leave_Time Datetime  
)
Insert into Employees(Employee_Name,Employee_ID) Values ('Mohammed',1000);
Insert into Employees(Employee_Name,Employee_ID) Values ('Ali',1001);
Insert into Employees(Employee_Name,Employee_ID) Values ('Ramiz',1002);

اضافة الموظف صاحب الرقم الوظيفي 1001 في جدول الحضور

Insert Into Attendance(Employee_ID,Attend_Time,Leave_Time) Values (1001,getdate(),getdate()+1);

وعند تنفيذ الاستعلام التالي

 SELECT * FROM Employees WHERE  Employee_ID NOT IN (SELECT Employee_ID FROM Attendance)

حيث سيقوم بعرض النتائج التالية ومن الملاحظ تم عرض سجلين فقط اما صاحب الرقم الوظيفي 1001 لم يظهر لانه مسجل في جدول الحضور

النتائج :

1	Mohammed	1000
3	Ramiz	1002

تم تعديل هذه المشاركة بواسطة prof_1982 في 30 ديسمبر 2009 في 14:41

الإنسان الذي يقول بأنه لا يمكن عمل شيء يجب ألا يعيق مطلقاً الإنسان الذي يقوم بعمل ذلك الشيء.

إن تخطئ فأنت إنسان ... أما أن تلوم جهازك الكمبيوتر على خطأك فهذا أكثر إنسانية.

#8

شكرا لكم جمعيا علي الرد . حلت المشكلة

بارك الله فيكم

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