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

kanory

الخبراء
  • Posts

    2367
  • تاريخ الانضمام

  • تاريخ اخر زياره

  • Days Won

    140

كل منشورات العضو kanory

  1. لكن فنيا : في عالم الجمعيات ... تعطى فترة محددة لجمعها وليست مفتوحة ... يعني مثلا بعد نزول الراتب باسبوع مثلا ... ليش لان المستلم الى عليه الدور يبغى فلوسه كاملة وليس مقسطه .... لكن تفضل التعديل حسب طلبك .... الجمعية (4).accdb ايضا نسيت .... المفروض البيانات الاساسية تكون في جدول مستقل ..... وبيانات الدفع تكون في جدول اخر بحيث تسجل فيها بيانات الدفع وطرقة الدفع والشهر ايضا ... هناك ملاحظات نسيتها الان ... اذا تذكرتها اضيفها
  2. يعني قصدك في كل دورية تريد تحديث للمبلغ 17950 حسب الدفعات الجديدة .... صحيح .. اليس كذلك..
  3. طيب مشاركة مع حبايبنا الاساتذة ..... اظن هذه معروفة ..... صح ..... Private Sub BtnFalse_Click() ChkBox = False ChkBox.Requery DoCmd.SetWarnings False DoCmd.RunSQL "UPDATE t2 SET t2.[YesNo] = [Forms]![incom2]![ChkBox] WHERE (((t2.xuser)=[Forms]![incom2]![xuser]));" DoCmd.SetWarnings True End Sub Private Sub BtnTrue_Click() ChkBox = True ChkBox.Requery DoCmd.SetWarnings False DoCmd.RunSQL "UPDATE t2 SET t2.[YesNo] = [Forms]![incom2]![ChkBox] WHERE (((t2.xuser)=[Forms]![incom2]![xuser]));" DoCmd.SetWarnings True End Sub
  4. طيب ... ركز معي اخي الكريم هذا المرفق يعمل كالتالي :::: عند فتح نموذج التسليم .... اذا كانت الجمعية جديد يقوم البرنامج تلقائيا بتهيئة البيانات المطلوب وذلك بعد ظهور الرسالة التى تؤكد بدايتها اما اذا كان البرنامج به جمعية سابقة لم تنتهي فيعمل مباشرة دون اي رسائل واذا كان البرنامج به جمعية سابقة ولكن دورتها منتهية أي تم تسليم الجميع مستحقاتهم ... يقوم البرنامج تلقائيا بتجديد دورة اخر جديدة ======================================== ملاحظة هامة الاشخاص الذين تم استلامهم لاشهر سابقة لن تظهر اسمائهم في نموذج التسليم مرة اخرى ... حتى تستكمل الدورة للجميع ... ثم تعاد اسمائهم في الدورة الجديدة ======================================== امور فنية : الجدول المسمى distribution هو جدول لترحيل بيانات التسليم مع كل ضغطت زر للتسليم الجدول المسمى Kan_distribution هو جدول لوضع علامة امام كل مستلم حتى لايظهر اسمه قبل نهاية الدورة ..... ومع الدورة الجديد تزال تلك العلامات ========================================= انظر الصور .... مع تجربة المرفق .... وأعلمنا بالنتيجة الجمعية.accdb
  5. الحقيقة اني دخل موضوعك والمرفق الموجود فيه اكثر من مرة لكن !!!!!1 للاسف لم افهم ....لذلك حاول طرح هذه الاسئلة ؟؟؟؟ هل التوزيع الموجود في الصورة صحيح ؟؟؟؟؟ هل انت تضع التواريخ يعنيي يدوي أو تريد البرنامج يوزع مثل الى في الصورة مع تواريخ اشهر متتابعة ؟؟؟؟
  6. حياك الله ابا الحسن... واياك ... واشكرك على الدعوات الطيبة ...
  7. بارك الله فيك اخي امير وعلى سعة صدرك ...
  8. امسح هذا .... C = Null D = Null A = Null B = Null واستبدلها بهذا .... Me.Undo
  9. طيب ... جرب المرفق ووافينا بالنتيجة ... dbo_da_kan.accdb
  10. ضع هذا الكود في حدث النقر على الزر <<<<<<<>>>>>>> DoCmd.SetWarnings False DoCmd.RunSQL "UPDATE tbl_Items SET tbl_Items.iBillStatus = ""مرحل"" WHERE (((tbl_Items.iDate) Between [Forms]![frmTarhell]![Text0] And [Forms]![frmTarhell]![Text2]));" DoCmd.SetWarnings True
  11. جرب المرفق وطبق على مثالك ...... db1.mdb
  12. للتعلم ... اعمل استعلام تحديث للجدول وقم بعمل معيار bitween ....
  13. الشرح :::: تنسيق شرطي في جميع طلباتك اخي الكريم انظر الصورة ..... تفضل المرفق بعد التعديل <<<<<<<<>>>>>>>> DATA1041.mdb
  14. تفضل <<<<<<<<>>>>>>>>> DATA1041.mdb
  15. استخدم هذا الكود في مربع النص الخاص بالتاريخ في حدث بعد التحديث ...... If Not IsNull(DLookup("A", "ABCD", "C=form!C and D=form!D And A=form!A And A=form!A")) Then If MsgBox("سبق إدخال " & C & " و " & D & " هل تريد الاستمرار؟", vbYesNo, "تنبيه") = vbNo Then 'لتفريغ الحقول فقط A = Null B = Null C = Null D = Null End If End If للأسف لم استطع استخدام الكود في مثالك ......... نظرا لاستخدامك اللغة العربية في التسميات ............
  16. لان الكود ينظر لاول تريقيم في الجدول وليس الترقيم الذي انت تريده ( بداية الترقيم قي السنه ) انظر هذا الكود وتفحصة لتعرف ما الذي يجب عليك تعديلة ليفهم الكود بداية الترقيم Em.21001 DoCmd.GoToRecord , "", acNewRec Rc.MoveFirst ChequesFound = Rc.GetRows(Rc.RecordCount) ChequeNoStart = ChequesFound(0, 0) ChequeNoEnd = ChequesFound(0, UBound(ChequesFound, 2)) اما الكود الذي وجدته فلا يعيد الارقام المفقودة !!!!!
  17. احسن الله اليك ..... القصد في المشاركة حتى تتعدد الافكار والطرق وتصبح معلومة لمن يريدها وقت البحث ..... اشكر لك صعت صدرك من امثالكم نتعلم . بارك الله فيك اخي الكريم
  18. lمشاركة مع البش مهندس ... max&^min.accdb
  19. ارفق مثال مصغر للمطلوب ؛؛؛؛؛؛؛؛
  20. المنتدى للتعلم بارك الله فيك ..... حاول في الكود .... غير ... بدل ... ضيف .... احذف .... حتى تصل ... ما تخسر شيئ بل تكتسب خبرة
  21. ههههه .... اذن حاول انقاذ الموقف .... بتعديل كودك .... 😁
  22. لكن لو فكرت منطقيا ... انت اعتمدت على السنه في الترقيم .. صحيح اذن ... سوف تواجه مشكلة العام القادم ... ليش منطقيا ان كل عام له ترقيمه الخاص ... يعني كل سنه يبدأ ترقيم من جديد .... السؤال ... لك .... للتعلم .... كيف يمكن تعديل الكود السابق حتى نتلافى تلك المشكلة ؟؟؟ اريد انت تفكر بطرق حل تلك المشكلة برمجيا !!
  23. استبدل الكود الموجود لديك بهذا الكود ..... On Error Resume Next Dim Db As DAO.Database Dim Rc As DAO.Recordset Dim ChequesFound Dim ChequeNoStart As Long Dim ChequeNoEnd As Long Dim i As Long Set Db = CurrentDb Set Rc = Db.OpenRecordset("SELECT SamoBrojevitxt([dbo_ID]) AS Brojevtxti FROM dbo_Tbl_Emp ORDER BY SamoBrojevitxt([dbo_ID]);") Do While Not Rc.EOF Rc.MoveNext Loop If Rc.RecordCount = 0 Then dbo_ID = "Em." & Right(Year(Date), 2) & "001" 'MsgBox "No Records Found" GoTo cmdDisplay_Exit End If DoCmd.GoToRecord , "", acNewRec Rc.MoveFirst ChequesFound = Rc.GetRows(Rc.RecordCount) ChequeNoStart = ChequesFound(0, 0) ChequeNoEnd = ChequesFound(0, UBound(ChequesFound, 2)) For i = ChequeNoStart To ChequeNoEnd If BinarySearch(ChequesFound, i) = False Then dbo_ID = "Em." & i GoTo cmdDisplay_Exit Else dbo_ID = "Em." & Replace(Nz(DMax("dbo_ID", "dbo_Tbl_Emp", "dbo_ID like 'Em." & Right(Year(Date), 2) & "*'"), "Em." & Right(Year(Date), 2) & "000"), "Em.", "") + 1 End If Next i cmdDisplay_Exit: Set Rc = Nothing Set Db = Nothing
  24. بعد الانتهاء من اضافة الموظف قم بالضغط على حفظ ....... انظر المرفق ربما هو ما تريد .... dbo_da_kan.accdb
  25. ممكن مرفق صغير للتعديل عليه .... لان الشغلة تحتاج عمل واكواد بارك الله فيك
×
×
  • اضف...

Important Information