al.sheen2000 قام بنشر يناير 18, 2016 مشاركة قام بنشر يناير 18, 2016 السلام عليكم ورحمة الله وبركاته تحية طيبة للجميع يوجدلديه تاريخ مباشرة الموظف ومخزنة في جدول akad_amel وجدول اخر يتم تسجيل الرواتب فيه raetb_tamb اريد ان افحص الشهر اللذي لم يسجل راتب فيه للموظف واللذي يقع بين تاريخ المباشرة واخر شهر راتب صرف للموظف ارجو المساعدة وتحياتي للجميع الشهر الغير موجود.rar رابط هذا التعليق شارك More sharing options...
al.sheen2000 قام بنشر يناير 19, 2016 الكاتب مشاركة قام بنشر يناير 19, 2016 ارجوووووووووا المساعدة ياشباب الله يحفظكم رابط هذا التعليق شارك More sharing options...
al.sheen2000 قام بنشر يناير 25, 2016 الكاتب مشاركة قام بنشر يناير 25, 2016 للرفع رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر يناير 26, 2016 مشاركة قام بنشر يناير 26, 2016 وعليكم السلام أخي ممكن تعطينا مثال على الاجابة الصحيحة ، من بياناتك جعفر رابط هذا التعليق شارك More sharing options...
al.sheen2000 قام بنشر يناير 26, 2016 الكاتب مشاركة قام بنشر يناير 26, 2016 (معدل) تفضل اخي والله ومحتاج هذا المثال ضروري عندي جدول مخزن فيه تاريخ مباشرة الموظف وهذا التاريخ ثابت وهو جدول akad_amel ولديه جدول اخر يتم فيه اعداد الرواتب لكل شهر وهذ الجدول هو raetb_tamb اللذي اريده استعلام او كود يعطيني الاشهر التي لم يتم اعداد راتب للموظف فبها والتي تقع بين تاريخ المباشرة وتاريخ اليوم بناء على جدوال اعداد الرواتب مثال ( تاريخ المباشرة 1/11/2014 تم اعداد الراتب اشهر 12/2014 وشهر 1/2015 وشهر 5/2015 معني ان هناك ثلاثة اشهر لم يتم اعداد الراتب لها وهي 11/2014 و 3/2015 و 4/2015 http://www.officena.net/ib/applications/core/interface/file/attachment.php?id=106106 اشكرك الجميع وجزاكم الله بكل حرف حسنة تم تعديل يناير 26, 2016 بواسطه al.sheen2000 رابط هذا التعليق شارك More sharing options...
سعيد صواب قام بنشر يناير 27, 2016 مشاركة قام بنشر يناير 27, 2016 (معدل) حياك الله اخي الكريم ومشاركة مع استاذنا الحبيب جعفر .. ولأن المثال انا سويته من فترة بس نسيت ارفعه اعذرني وعل في الأمر خيره. شاهد المرفق وشاهد الشروط في الإستعلام ...Q1 وشاهد حدث بعد التحديث لرقم الموظف في النموذج الرئيسي بإمكانك في ما بعد اخفاء الحقول التي لا تريدها ان تظهر في النموذج الفرعي .. بالتوفيق MissMonth.rar MissMonth.rar تم تعديل يناير 27, 2016 بواسطه سعيد صواب رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر يناير 27, 2016 مشاركة قام بنشر يناير 27, 2016 السلام عليكم انا فكرتي تختلف عن فكرة أخي سعيد ، وهذه ميزة أكثر من مشاركة في موضوع واحد فكرتي هي: 1. عمل جدول مؤقت باسم tbl_Temp ، ونُدخل فيه جميع الاشهر ، ابتداء من الشهر بعد تاريخ التوظيف ، الى الشهر الماضي ، لكل موظف ، 2. ثم نستعمل الاستعلام في مقارنة هذه الاشهر ، مع الاشهر المدفوعه ، ونطلب من الاستعلام ان يعطينا قائمة بالاشهر الغير موجودة الكود التالي يعمل العمل رقم 1: Private Sub cmd_Go_Click() On Error GoTo err_cmd_Go_Click Dim rstF As DAO.Recordset Dim rstT As DAO.Recordset 'empty tbl_Temp CurrentDb.Execute ("Delete * From tbl_Temp") 'table To Set rstT = CurrentDb.OpenRecordset("Select * From tbl_Temp") 'table From Set rstF = CurrentDb.OpenRecordset("Select * From akad_amel") rstF.MoveLast: rstF.MoveFirst RC = rstF.RecordCount 'Loop from table From, 'and get the w-code, and his starting date For i = 1 To RC Date_From = rstF!bad_akd 'Starting date Date_To = DateSerial(Year(Date), Month(Date), 0) 'Last month How_Many_Months = DateDiff("m", Date_From, Date_To) 'How many months in-between Last_Day_Of_Last_Month = DateSerial(Year(Date_From), Month(Date_From), 30) 'Last_Day_Of_Last_Month 'we will generate All the months for each Employee, from his start date to Last month For j = 1 To How_Many_Months 'start adding rstT.AddNew rstT!w_code = rstF!w_code 'w_code rstT!iDate = DateAdd("m", j, Last_Day_Of_Last_Month) 'the month rstT.Update Next j rstF.MoveNext Next i rstF.Close: Set rstF = Nothing rstT.Close: Set rstT = Nothing MsgBox "Done" Exit Sub err_cmd_Go_Click: If Err.Number = 3021 Then 'No Records Exit Sub Else MsgBox Err.Number & vbCrLf & Err.Description End If End Sub ثم النتيجة تكون في الاستعلام qry_Temp Without Matching raetb_tamb ، والذي يُفضل ان تعمل تقرير على اساسه ** ملاحظة ، بسبب استعمال الجدول المؤقت ، والذي يتم حذف جميع بياناته واضافة بيانات جديدة ، هذا يجعل حجم قاعدة البيانات تكبر ، فيجب استخدام الضغط والاصلاح بين كل فترة لإرجاع الحجم الى حقيقته جعفر 240.الشهر الغير موجود.mdb.zip 1 رابط هذا التعليق شارك More sharing options...
سعيد صواب قام بنشر يناير 27, 2016 مشاركة قام بنشر يناير 27, 2016 حياك الله استاذنا الحبيب جعفر مشاركة قيمة ومليئة بالفوائد .... والفكرة تشمل مجموعة الموظفين .. فكرتي كانت على موظف واحد فقط . وفقنا الله واياكم جميعا . رابط هذا التعليق شارك More sharing options...
al.sheen2000 قام بنشر يناير 28, 2016 الكاتب مشاركة قام بنشر يناير 28, 2016 في البداية جزاكم الله خيرا في هذه الليلة المباركة افكار جميلة جدا ولو حبذا الاستغناء عن الجدول الموقت ويكون نفس فكرة اخونا سعيد ويكون لجميع العاملين بدلا من عامل واحد والشكر موصول jjafferr شكر جزيلا رابط هذا التعليق شارك More sharing options...
al.sheen2000 قام بنشر يناير 29, 2016 الكاتب مشاركة قام بنشر يناير 29, 2016 اسف وهذا المثال بس يبغالة تضبيط الفففففففففففف شكر للجميع الشهر الغير موجود.rar رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر يناير 29, 2016 مشاركة قام بنشر يناير 29, 2016 9 ساعات مضت, al.sheen2000 said: ولو حبذا الاستغناء عن الجدول الموقت تفضل اخوي سعيد ، هذا رزق اتاك ، فاكمله جعفر رابط هذا التعليق شارك More sharing options...
سعيد صواب قام بنشر يناير 30, 2016 مشاركة قام بنشر يناير 30, 2016 (معدل) حياكم الله ههههههه الله يرزقنا واياكم الجنه. ===== برايي المتواضع وبحسب المعلومات المتوفرةاعتقد انه لا يوجد حل افضل مما تفضل به الأستاذ جعفر وخصوصا ان الجدول يحذف مابداخلة في كل مره تستعلم .. مسألة الضغط والإصلاح بإمكانك ضبطها من خيارات قاعدة الأكسس والأمر يسير بإذن الله بالتوفيق للجميع تم تعديل يناير 30, 2016 بواسطه سعيد صواب رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر يناير 30, 2016 مشاركة قام بنشر يناير 30, 2016 6 ساعات مضت, سعيد صواب said: وخصوصا ان الجدول يحذف مابداخلة في كل مره تستعلم .. مسألة الضغط والإصلاح بإمكانك ضبطها من خيارات قاعدة الأكسس والأمر يسير بإذن الله السلام عليكم هناك طريقة اخرى للجدول المؤقت: الطريقة الاولى: 1. اعمل الجدول اللي تريده في قاعدة بياناتك ، بالحقول المطلوبة ، وبدون سجلات وبيانات ، 2. برمجيا اعمل ملف اكسس mdb او accdb خارجي ، واستنسخ اليه هذا الجدول ، 3. اجعل الكود يولّد البيانات ويحفظها في هذا الجدول الخارجي ، 4. طبعا سيكون تقريرك يأخذ بياناته من هذا الجدول الخارجي ، 5. عند اغلاق البرنامج ، احذف هذا الملف الخارجي بهذه الطريقة ، لا يوجد اي ضغط على القاعدة الحالية انا استخدمت هذه الطريقة في برنامج مسقط التقارير: http://www.officena.net/ib/topic/59415-هدية-مسقط-التقارير/ الطريقة الثانية: 1. اعمل الجدول اللي تريده في قاعدة بياناتك ، بالحقول المطلوبة ، وبدون سجلات وبيانات ، 2. اعمل ملف اكسس mdb او accdb خارجي ، واعمل فيه هذا الجدول ، 2.1. احفظ هذا الملف في نفس مجلد برنامجك ، وعند طلب عمل الاستعلام ، اعمل نسخة منه باسم آخر ، او احفظ هذا الملف داخل قاعدة بياناتك بصيغة BLOB ، وعند طلب عمل الاستعلام ، استخرج واحفظ الملف الى مجلد برنامجك (انا كنت احفظه في مجلد الوندوز المؤقت Temp) ، 3. اجعل الكود يولّد البيانات ويحفظها في هذا الجدول الخارجي ، 4. طبعا سيكون تقريرك يأخذ بياناته من هذا الجدول الخارجي ، 5. عند اغلاق البرنامج ، احذف هذا الملف الخارجي جعفر رابط هذا التعليق شارك More sharing options...
al.sheen2000 قام بنشر يناير 30, 2016 الكاتب مشاركة قام بنشر يناير 30, 2016 اشكر مجهودكم والله يعطيكم العافية طيب اخي جعفر شوف المثال هذا طبقت عليه الجدول الموقت في نفس القاعدة ولايعطي اي نتيجة كرما منك شوف لي الخلل لوثقلت عليك شكر جزيلا 240.الشهر الغير موجود.rar رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر يناير 30, 2016 مشاركة قام بنشر يناير 30, 2016 وعليكم السلام البرنامج شغال تمام ، بس المشكلة عندك في البيانات!! كان عندك الموظفين الثلاث تاريخ عقدهم 31-12-2015 ، والى الآن (31-1-2016) ما انتهى شهر على توظيفهم حتى يحصلوا على راتب شهر 1 ، يعني اذا شغلت البرنامج بكرة 1-2-2016 فبتحصل نتائج!! بس لاحظ ، لما غيرت تاريخ عقد الموظف رقم 34 الى 30-11-2015 ، فعلى طول اخبرني التقرير ان راتبه لشهر 12 غير مدفوع . جعفر رابط هذا التعليق شارك More sharing options...
al.sheen2000 قام بنشر يناير 30, 2016 الكاتب مشاركة قام بنشر يناير 30, 2016 اشكرك جزيل الشكر رابط هذا التعليق شارك More sharing options...
al.sheen2000 قام بنشر فبراير 6, 2016 الكاتب مشاركة قام بنشر فبراير 6, 2016 (معدل) الاخ جعفر السلام عليكم كرما منك بالغالي تعديل بسيط وهو اذا كان تاريخ العقد 02/01/2016 وتاريخ الجهاز 5/2/2016 لايعطيني الراتب اللذي يخص شهر يناير --------------------------------------------------- االيك المثال بالتواريخ اضبط تاريخ الجهاز على 5/2/2016 ولاحظ الله يسعدك اشكرك 240.الشهر الغير موجود.rar تم تعديل فبراير 6, 2016 بواسطه al.sheen2000 رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر فبراير 6, 2016 مشاركة قام بنشر فبراير 6, 2016 وعليكم السلام الظاهر ان مشكلتنا هي في كيفية حساب الشهر انا اجعل البرنامج يحسب الشهر ، مثلا: تاريخ العقد: 1-1-2016 نهاية الشهر الماضي: 31-1-2016 عدد الاشهر = 0 فرجاء تخبرني عن الطريقة التي تريد الحساب على اساسها جعفر رابط هذا التعليق شارك More sharing options...
al.sheen2000 قام بنشر فبراير 6, 2016 الكاتب مشاركة قام بنشر فبراير 6, 2016 اشكرك اخي لابد وان يعطي شهر يناير حيث لم يحرر راتب للموظف -------------------------------------- لان تاريخ المباشرة 1/1/2016 معنى ذلك يستحق شهر يناير اشككككككككككككككككككرك رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر فبراير 6, 2016 مشاركة قام بنشر فبراير 6, 2016 واذا تاريخ المباشرة 2 / 1 ؟ فهل يستحق راتب شهر يناير؟ رابط هذا التعليق شارك More sharing options...
al.sheen2000 قام بنشر فبراير 6, 2016 الكاتب مشاركة قام بنشر فبراير 6, 2016 نعم نعم رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر فبراير 6, 2016 مشاركة قام بنشر فبراير 6, 2016 يعني حتى لو كان تاريخ مباشرته اي يوم من الشهر ، فهو يستحق راتبه؟ رابط هذا التعليق شارك More sharing options...
al.sheen2000 قام بنشر فبراير 6, 2016 الكاتب مشاركة قام بنشر فبراير 6, 2016 نعم رابط هذا التعليق شارك More sharing options...
jjafferr قام بنشر فبراير 7, 2016 مشاركة قام بنشر فبراير 7, 2016 السلام عليكم أضفت فقرة جديدة (رقم 1 في الكود) ، وهي الجزء الجديد فقط ، وتعمل كالتالي: اذا bad_akd لم يكن آخر يوم في الشهر ، فسيعطيك سجل راتب لذلك الشهر ، اما بقية الاشهر ، فالوضع كما هو: Private Sub cmd_Go_Click() On Error GoTo err_cmd_Go_Click Dim rstF As DAO.Recordset Dim rstT As DAO.Recordset 'empty tbl_Temp CurrentDb.Execute ("Delete * From tbl_Temp") 'table To Set rstT = CurrentDb.OpenRecordset("Select * From tbl_Temp") 'table From Set rstF = CurrentDb.OpenRecordset("Select * From akad_amel") rstF.MoveLast: rstF.MoveFirst RC = rstF.RecordCount 'Loop from table From, 'and get the w-code, and his starting date For i = 1 To RC Date_From = rstF!bad_akd 'Starting date Date_To = DateSerial(Year(Date), Month(Date), 0) 'Last month How_Many_Months = DateDiff("m", Date_From, Date_To) 'How many months in-between 'Last_Day_Of_Last_Month = DateSerial(Year(Date_From), Month(Date_From), 30) 'Last_Day_Of_Last_Month Last_Day_Of_Last_Month = DateSerial(Year(Date_From), Month(Date_From) + 1, 0) 'Last_Day_Of_Last_Month '1 'for the first month ONLY First_Day_First_Month = Day(Date_From) Last_Day_First_Month = Day(DateSerial(Year(Date_From), Month(Date_From) + 1, 0)) How_Many_Days = DateDiff("d", First_Day_First_Month, Last_Day_First_Month) If How_Many_Days <> 0 Then rstT.AddNew rstT!w_code = rstF!w_code 'w_code rstT!iDate = DateSerial(Year(Date_From), Month(Date_From) + 1, 0) rstT.Update End If '2 'we will generate All the months for each Employee, from his start date to Last month For j = 1 To How_Many_Months 'start adding rstT.AddNew rstT!w_code = rstF!w_code 'w_code rstT!iDate = DateAdd("m", j, Last_Day_Of_Last_Month) 'the month rstT.Update Next j rstF.MoveNext Next i rstF.Close: Set rstF = Nothing rstT.Close: Set rstT = Nothing MsgBox "Done" Exit Sub err_cmd_Go_Click: If Err.Number = 3021 Then 'No Records Exit Sub Else MsgBox Err.Number & vbCrLf & Err.Description End If End Sub جعفر 240.2.الشهر الغير موجود.mdb.zip رابط هذا التعليق شارك More sharing options...
al.sheen2000 قام بنشر فبراير 7, 2016 الكاتب مشاركة قام بنشر فبراير 7, 2016 لك مني جزيل الشكر والعرفان الاخ جعفر رابط هذا التعليق شارك More sharing options...
الردود الموصى بها