اذهب الي المحتوي
أوفيسنا

طرح تاريخين في سجلين مختلفين


shod90

الردود الموصى بها

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

أنا أعمل حالا  علي برنامج حضور  إنصراف 

قابلتني مشكلة و هي الحضور و صف و الإنصراف في الصف اللي تحتة 

أريد طرح التاريخين من بعض ليخرج لي عدد الساعات التي حضرها الموظف

اليكم صورة للتوضيح

Attendance.PNG.e698d13a1e6cac5dd038ef082796efb3.PNG

المتوقع تكون النتيجة :

05-03-2017 08:15 h:m
06-03-2017 08:50 h:m

attBackup.rar

رابط هذا التعليق
شارك

1 ساعه مضت, shod90 said:

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

أنا أعمل حالا  علي برنامج حضور  إنصراف 

قابلتني مشكلة و هي الحضور و صف و الإنصراف في الصف اللي تحتة 

أريد طرح التاريخين من بعض ليخرج لي عدد الساعات التي حضرها الموظف

اليكم صورة للتوضيح

Attendance.PNG.e698d13a1e6cac5dd038ef082796efb3.PNG

المتوقع تكون النتيجة :

05-03-2017 08:15 h:m
06-03-2017 08:50 h:m

attBackup.rar

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

2.JPG.d34acc0ff9c359ef4e3b0aca022c6a60.JPG

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

رابط هذا التعليق
شارك

 

17 minutes ago, Shivan Rekany said:

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

2.JPG.d34acc0ff9c359ef4e3b0aca022c6a60.JPG

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

هو الفكرة كلها ان في ميعاد بريك الموظفين بيبصموا فيه أيضا

يعني المفروض للشخص الواحد 4 سجلات في اليوم

دخول الصباح

خروج البريك

دخول للمكتب مرة اخري

خروج من المكتب

 

لا يهمك السجلات اللي تلخبط ممكن واحد يسجل مرتين بالغلط

أنا همسح كل السجلات اللي لا معني لها بحيث يكون النتيجة كالأتي:

دخول 09:00 صباحا

خروج للبريك 11:45 صباحا

دخول الشركة بعد البريك 12:15

خروج من الشركة 05:05 مساءاً

 

أنا أريد أن أحسب عدد ساعات العمل في اليوم.

تم تعديل بواسطه shod90
رابط هذا التعليق
شارك

منذ ساعه, shod90 said:

 

هو الفكرة كلها ان في ميعاد بريك الموظفين بيبصموا فيه أيضا

يعني المفروض للشخص الواحد 4 سجلات في اليوم

دخول الصباح

خروج البريك

دخول للمكتب مرة اخري

خروج من المكتب

 

لا يهمك السجلات اللي تلخبط ممكن واحد يسجل مرتين بالغلط

أنا همسح كل السجلات اللي لا معني لها بحيث يكون النتيجة كالأتي:

دخول 09:00 صباحا

خروج للبريك 11:45 صباحا

دخول الشركة بعد البريك 12:15

خروج من الشركة 05:05 مساءاً

 

أنا أريد أن أحسب عدد ساعات العمل في اليوم.

انتظرني حتى غدا 
ان شاء الله راح اعطيك حل

  • Like 1
رابط هذا التعليق
شارك

بعد ما خلصت انا

بعض من السجلات اي الموظفين بها 5 سجل لكل يوم

اي خرج و دخل وخرج ودخل وخرج في يوم واحد

لكن ساعمل على جزء من البيانات

وسافديك ان شاء الله

تم تعديل بواسطه Shivan Rekany
  • Like 1
رابط هذا التعليق
شارك

سلام  عليكم  

  اريد ان أضيف  أضافة  وتتعلق date    وكذاك لابدا من يكون  dateentree  and datesortie  ستقلين عن بعضهم البعض المثال التالي يوضح الفكرة اي حساب عدد الساعات  موجودة في الاستعلام

hhhh: Format([enddate]-[starddate];"Heure, abrégé")

 

 

Base de données21.rar

رابط هذا التعليق
شارك

22 hours ago, Shivan Rekany said:

بعد ما خلصت انا

بعض من السجلات اي الموظفين بها 5 سجل لكل يوم

اي خرج و دخل وخرج ودخل وخرج في يوم واحد

لكن ساعمل على جزء من البيانات

وسافديك ان شاء الله

انا بس محتاج اعرف كيفية طرح سجلين متتاليين و إظهار الفرق ما بينهم .. اما بالنسبه لموضوع ٥ سجلات لكل موظف في اليوم لا تقلق لأن سوف يتم تعديل هذه السجلات بحيث يكون لكل موظف ٤ سجلات او اقل ( في حاله انه لم يخرج للبريك ) .. 

10 hours ago, kamel2711 said:

سلام  عليكم  

  اريد ان أضيف  أضافة  وتتعلق date    وكذاك لابدا من يكون  dateentree  and datesortie  ستقلين عن بعضهم البعض المثال التالي يوضح الفكرة اي حساب عدد الساعات  موجودة في الاستعلام


hhhh: Format([enddate]-[starddate];"Heure, abrégé")

 

 

Base de données21.rar

اخي الكريم هذا ليس بالمطلوب تحديدا ولكن مشكور للمساعدة 

رابط هذا التعليق
شارك

6 دقائق مضت, shod90 said:

أخي الكريم ,, لم أستطيع فهم الذي تم في q1q1 و q2q2 ... هل من شرح مبسط ما هو WQT1 , WQT2 , REQ ? 

قبل اشرح لك ما تم عمله 

هل هو مطلبك ام لا

اذا نعم انتظرني لكي اشرح لك ما عملت

  • Like 1
رابط هذا التعليق
شارك

6 ساعات مضت, shod90 said:

أخي الكريم ,, لم أستطيع فهم الذي تم في q1q1 و q2q2 ... هل من شرح مبسط ما هو WQT1 , WQT2 , REQ ? 

لان قاعدة بياناتك بها نواقص عملت كم خطوات كثيرة لكي وصلت الى المطلوب لذا لازم تكون معي خطوة خطوة لكي تعرف ما عملت انا

منذ ساعه, shod90 said:

نعم اخي هذا هو المطلوب 

اولا اضفت حقلين للجدولك 

حقل لترقيم تلقائي

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

اي رقم 1 الى رقم 4

1.jpg.40208b8f028d05651d8bea2b4b1043af.jpg

وعملنا هذا النموذج لكي نكتب في الحقل id2 اللي قلنا في الاول

2.jpg.fb887ca3dc0fc13a476441dd97797139.jpg

وعملت هذا الاستعلام لكي يكون مصدر النموذج الاعلاه

3.jpg.4760e049603ed203447c6f8c1b5e505d.jpg 

شوف الاكواد النموذج

عند الحالي كتبنا هذا الكود

Private Sub Form_Current()
Me.Text63 = Me.USERID
Me.Text65 = Me.tar
End Sub

وعند كليك على الزر كتبنا هذا الكود

Private Sub Command22_Click()
Dim dcu As Integer
dcu = DCount("[userid]", "[wwwer]")
DoCmd.GoToRecord , , acFirst
For i = 1 To dcu
If DCount("[id2]", "[wwwer]", "[USERID] =" & Me.Text63 & "and [tar]='" & Me.Text65 & "'") < 1 Then
    Me.id2 = 1
        Else
    Me.id2 = DCount("[id2]", "[wwwer]", "[USERID] =" & Me.Text63 & "and [tar]='" & Me.Text65 & "'") + 1
End If
DoCmd.GoToRecord , , acNext
Next
End Sub

وبعد ما كتبنا ارقام من 1 الى 4 في حقل id2 اي لكل يوم كتبنا ترقيم جديد بواسطة النموذج واستعلام wwwer

وبعد اذاً عملنا هذا الاستعلام وبواسطة هذهالاستعلام نريد ان نأخذ كل السجلات اللي رقم id2 بيكون يساوي 1 او 2

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

4.jpg.363f5d3ee455a3850d36eb50014818af.jpg

ونفس الشي عملنا للسجلات اللي id2 يساوي 3 او 4

5.jpg.f566ebf581f31c41bee15e74c01cd3f1.jpg

بعدين وصلنا للخطوة الاخيرة وهو عمليات حسابية

عملنا استعلامين واحد للسجلات اللي رقم اي دي 2 يساوي 1 او 2 والاخر للسجلات اللي حقل اي دي 2 يساوي 3 او 4

6.jpg.1c3c0bdb9dc7639aa58c891705d51e11.jpg

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

WQT1: DFirst("[WQT]";"Q1Q1";"[ST]='" & [ST] & "'")

وكتبنا هذا لكي نوصل الى اخر وقت لنفس التاريخ

WQT2: DLast("[WQT]";"Q1Q1";"[ST]='" & [ST] & "'")

بعدين حذفنا WQT2 الوقت 2 من WQT1 الوقت 1 

REQ: TimeValue(FormatDateTime([WQT1];3))-TimeValue(FormatDateTime([WQT2];3))

وفي الاخير اريد اقول انا استخدمت هدول الحروف للتسمية وتقدر تتغير الى ماتريد WQT1 WQT2 REQ 

اتمنى ان يوصل لك الفكرة

تحياتي

رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information