اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

طاهر اوفيسنا

04 عضو فضي
  • Posts

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

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

كل منشورات العضو طاهر اوفيسنا

  1. المشكلة في الشطر الثاني اي يذهب الكود له عند الشهر 3 والشهر 7 لانه فما اقتطاع Inkhiratيساوي 1500.00 الملف اكسل المرفق يوضح استاذي العزيز موضوع الطلب هو تغيير detach بـ Nr Inkhirat.xlsx
  2. يبدو ان هناك مشكلة في الاستثناء myCriteria = "[Nr] < 6" مع العلم ان المشكل يظهر غير في الشرط If Month(Now()) = 3 Or Month(Now()) = 7 شهر 1 و 2 عادي اما شهر 3 و 7 ففيهما خاصية اقتطاع الانخراط 1500.00 يتم فيه ظهور الميساج ولم يتم اقتطاع المبلغ 20250123.rar
  3. وهو كذالك استاذ والان كيف يتم استنثاء في الشطر 2 من الكوذ If Month(Now()) = 3 Or Month(Now()) = 7 Then Dim rstE As DAO.Recordset Set rst = CurrentDb.OpenRecordset("Select * From tbl_Loans") myCriteria = "[detach]='موظف'" myCriteria = myCriteria & " Or [detach]='متعاقد كامل'" myCriteria = myCriteria & " Or [detach]='متعاقد جزئي'" myCriteria = myCriteria & " Or [detach]='عون نظافة'" 'myCriteria = "[Nr]= 1 " 'myCriteria = myCriteria & " Or [Nr]= 2 " 'myCriteria = myCriteria & " Or [Nr]= 3 " 'myCriteria = myCriteria & " Or [Nr]= 4 " 'myCriteria = myCriteria & " Or [Nr]= 5 " 'myCriteria = myCriteria & " Or [Nr]= 10 " Set rstE = CurrentDb.OpenRecordset("Select * From Employee Where " & myCriteria) rstE.MoveLast: rstE.MoveFirst Rc = rstE.RecordCount For i = 1 To Rc 'check if payment is already entered, if it is, then skip this Record rst.FindFirst "[Loan_Type]='Inkhirat' And [EmployeeID]=" & rstE!EmployeeID & " And [Payment_Month]=#" & Me.txtMonth & "#" ' TblOther مبلغ لانخراط المقرر في جدول If rst.NoMatch Then rst.AddNew a2 = 1 rst!EmployeeID = rstE!EmployeeID rst!Loan_ID = 0 rst!Payment_Month = DateSerial(Year(Me.txtMonth), Month(Me.txtMonth), 1) rst!Payment_Made = DLookup("Other_Value", "TblOther", "ID=1") 'to be used in Other loan Form rst!Loan_Type = "Inkhirat" rst!Nr = GetNumDetach(rst!EmployeeID) rst!Remarks = "إقتطاع من الراتب لإنخراط شهر " & Year(Me.txtMonth) & "/" & Month(Me.txtMonth) rst!annee = Year(Date) If rst!Loan_Type = "Inkhirat" Then rst!sadad = rst!Payment_Made If rst!sadad.Value = True Then rst!wada3 = "تم الإنخراط" Else rst!wada3 = "لم يتم الإنخراط" End If End If TheSum = TheSum + Nz(rst!Payment_Made, 0) rst.Update rstE.MoveNext Next i rstE.Close: Set rstE = Nothing End If TheSum = Format(TheSum, "#,##0.00") MsgBox " " & "تم توزيع الإقتطاعات" & vbLf & vbLf & "مجموع الإقتطاعات = " & TheSum, , "إقتطاعات شهر" & FrenchMonth(Month(Date)) & Year(Date) I_am_Done: Case vbNo MsgBox "لم يتم توزيع الإقتطاعات" End Select 'clean up rst.Close: Set rst = Nothing End If Exit Sub err_cmd_Pay_installments_Click: If Err.Number = 3021 Then 'No Records, ignore Resume Next Else MsgBox Err.Number & vbCrLf & Err.Description End If End Sub علما انه شغال 100 بالمئة ولكن احبذ تغيير myCriteria = "[detach]='موظف'" myCriteria = myCriteria & " Or [detach]='متعاقد كامل'" myCriteria = myCriteria & " Or [detach]='متعاقد جزئي'" myCriteria = myCriteria & " Or [detach]='عون نظافة'" ب : Nr >= 6
  4. السام عليكم اساتذتي الكرام ارجو أن لا أكون عبء عليكم بطلباتنا المتكررة والشبه يوميا لديا Nr "نوع الوظيفة"من 1 الى 16 عند الاقتطاع الشهري احبذ التعديل على الكود لكي يستثني Nr >=6 اي يضع له في جدول tbl_Loans Payment_Made= 0.00 علما انني وقعت في مشكلة عندما استبدلت myCriteria myCriteria = "[detach]='موظف'" myCriteria = myCriteria & " Or [detach]='عامل متعاقد توقيت كامل'" myCriteria = myCriteria & " Or [detach]='عامل متعاقد توقيت جزئي'" myCriteria = myCriteria & " Or [detach]='حارس متعاقد توقيت جزئي'" myCriteria = myCriteria & " Or [detach]='عون نظافه وتطهير'" بهذه لكي استنثي ماطلبت myCriteria = "[Nr]= 1 " myCriteria = myCriteria & " Or [Nr]= 2 " myCriteria = myCriteria & " Or [Nr]= 3 " myCriteria = myCriteria & " Or [Nr]= 4 " myCriteria = myCriteria & " Or [Nr]= 5 " والكود الي يقطتع Select Case MsgBox(" هل تريد أن يتم توزيع الإقتطاعات لشهر " & Me.txtMonth, vbYesNo + vbQuestion + vbDefaultButton1) Case vbYes For i = 1 To Rc rst.Edit If rst!Loan_Type = "Cridi" Then rst!Payment_Made = rst!Loan_Made: rst!sadad = rst!Loan_Made: rst!Loan_Remise = 0 If rst!Loan_Type = "Elec" Then rst!Payment_Made = rst!Loan_Made: rst!sadad = rst!Loan_Made: rst!Loan_Remise = 0 If rst!sadad.Value = True Then rst!wada3 = "تم التسديد" Else rst!wada3 = "لم يتم التسديد" End If TheSum = TheSum + Nz(rst!Payment_Made, 0) rst.Update rst.MoveNext Next i فأين يتم وضع الشرط جزاكم الله خيرا
  5. أولا : شكرا استاذ ابو أحمد على ايجاد الحل الصحيح . ثانيا: الاستاذ القدير جعفر صحيح يتعب من اجل ايجاد الحلول المستعصية والشبه مستحيلة لمساعدة اخوانه في هذا المنتدى القيم نتمنى من الله سبحانه وتعالى ان يوفقه لما فيه خير لصالح العباد و البلاد العربية الاسلامية قاطبة. ثالثا : مع تحياتي للاستاذ FoKsh الذي بذلك قصارى جهده من اجل المساعدة
  6. لان النموذج مفتوح اغلق النموذج وافتح الاستعلام وسترى النتيجة استاذ ابو احمد حياك الله ان شاء الله انك طبت للشفاء يارب الاستعلام من تصميم الاستاذ القدير جعفر حياه الله ولكن الاستعلام يجلب النتيجة الصحيحة وهي باقي القروض الى غاية 2024/12/31 او 2024/12/01 النتيجة 1281.000.00 2025-01-22_07-29-09.rar
  7. استاذ الاستعلام Baghi3112 ظهرت لك النتيجة 54000.00 ام كيف ؟
  8. كيف ؟ يأتي بمجموع الباقي Remaining_Cridi وهي النتيجة الصحيحة
  9. استاذي العزيز انا وضحت لك بالمنطق الحسابي تسلم قروض مالية على عدة اشهر لكي يسترجع مجموع القروض هي مجموع Loan_Made مبلغ الاشهر المقتطعة هي مجموع Payment_Made مجموع القروض - مبلغ القروض للاشهر المقتطعة = الباقي ولكن لماذا النتيجة خاطئة ؟؟؟ مقارنة بالاستعلام Baghi3112
  10. صح كما اشرت استاذي ولكن لم افهم النتيجة تظهر خاطئة مانعرف ايحسب على تاريخ Payment_Month ام على تاريخ Auto_Date في الحدول tbl_Loans
  11. استاذ العزيز انظر لهذا الكود في الوحدة النمطية fAdd_Observations لربما يوضح لك بعض الاشياء المخفية ولربما انا لم اوضحها Function Sum_Remaining(p, ID_Emp As Integer, t As String, Loan_ID) As Currency 'On Error Resume Next 'P = DateSerial(Year(P), Month(P), 1) M = Month(p) Y = Year(p) If Loan_ID <> 0 Then If t = "Cridi" Then s = DSum("[Payment_Made]", "tbl_Loans", "[EmployeeID]=" & ID_Emp & " And month([Payment_Month])=" & M & " And Year([Payment_Month])=" & Y & " And [Loan_Type]='Cridi'") End If If t = "Elec" Then s = DSum("[Payment_Made]", "tbl_Loans", "[EmployeeID]=" & ID_Emp & " And month([Payment_Month])=" & M & " And Year([Payment_Month])=" & Y & " And [Loan_Type]='Elec'") End If Else If t = "Inkhirat" Then s = DSum("[Payment_Made]", "tbl_Loans", "[EmployeeID]=" & ID_Emp & " And month([Payment_Month])=" & M & " And Year([Payment_Month])=" & Y & " And [Loan_Type]='Inkhirat'") End If End If If IsNull(s) Then Sum_Remaining = 0 Else Sum_Remaining = s End If End Function
  12. ظهر المبلغ Total_Net_Value=54000.00 والصحيح 1,281,000.00
  13. استاذي الكريم طريقة جلبه من الجدول لم تفلح معي ابدا يعني ما أعطاني النتيجة الصحيحة اطلاقا لهذا ذهبت الى الاكواد لانها اعطتني النتيجة الصحيحة الجدول هو tbl_Loans الحقل هو مجموع " Loan_Made ناقص Payment_Made" التاريخ هو Payment_Month ويكون الى غاية 2024/12/31 او 2024/12/01 حيث النتيجة تكون 1,281,000.00 الشرط Loan_ID اكبر من 0
  14. السلام عليكم اساتدتي الكرام وجدت مشكلة في جلب قيمة مالية من استعلام بمعيار تاريخ اخر السنة كلما حاولت يكتب النتيجة 0 فورم FrmMada5il Me.txtYear = Year(Date) Me.txtMonthe = #12/31/2024# Me.Roming = Nz(DSum("[Remaining_Cridi]", "[Baghi3112]", "[Forms]![FrmMada5il]![Payment_Month1]=" & [txtMonthe]), 0) الاستعلام Baghi3112 SELECT tbl_Loans.Loan_ID, tbl_Loans.EmployeeID, Format([Payment_Month],"mmmm yyyy") AS Month_Year, [Forms]![FrmMada5il]![txtMonth] AS Payment_Month1, Sum_Remaining([Payment_Month1],[EmployeeID],"Cridi",Loan_ID) AS Cridi, Count_Remaining([Payment_Month1],[EmployeeID],[Loan_ID],"Cridi") AS Remaining_Cridi FROM tbl_Loans GROUP BY tbl_Loans.Loan_ID, tbl_Loans.EmployeeID, Format([Payment_Month],"mmmm yyyy"), [Forms]![FrmMada5il]![txtMonth] HAVING (((Format([Payment_Month],"mmmm yyyy"))=Format([Forms]![FrmMada5il]![txtMonth],"mmmm yyyy"))); ارجو المساعدة 20250121.rar
  15. مبدئيا حسب مارأيت هذا هو المطلوب شكرا لك استاذ ابو أحمد نتمنى لك الشفاء العاجل وربي يسعدك وياريت بعد الشفاء توضح لي أين تم التعديل وشكرا
  16. شكرا استاد ابو أحمد على الاهتمام هذه قيمتها تؤخذ من tbl_loans totalPaid = Nz(DSum("Payment_Made", "tbl_Loans", "EmployeeID = " & ID & " AND Year(Auto_Date) = " & yearNow & " AND Loan_ID = 0"), 0)
  17. 01- في نظري يتم وضع هذا الكود قبل كود المنحة بدالة IF ولكن المشكلة اين يوضع وكيف يتم التنسيق بينهما ( اي لما ندخل من فورم القروض ينتقل الكود مباشرة الى القروض واذا دخلنا من فورم المنح يذهب مباشرة الى كود المنح) Select Case [Forms]![FrmCridi]![Etar] Case "القروض المالية" CridiID = [Forms]![FrmCridi]![Frm_sub].[Form]![CmdCridi] latestDate = Nz(DMax("Cridi_Date", "[Cridi]", "[EmployeeID] = " & ID & " AND [Cridi_ID] = " & CridiID), #1/1/1900#) Case "الأدوات الكهرومنزلية" ElecID = [Forms]![FrmElec]![Frm_sub].[Form]![CmdElec] latestDate = Nz(DMax("Elec_Date", "[ Elec]", "[EmployeeID] = " & ID & " AND [Elec_ID] = " & ElecID), #1/1/1900#) 02- وضع الاستاذ Barna هذا الشرط في الكود غير مفهوم ' جلب معرف المنحة من النموذج والتحقق من نوع الامتياز menhaID = 0 03 - اساتذتي الي يعرف كيف يتم التعديل رجاءا لايبخل علينا بالحل 04- اي استفسار غير مفهوم فالعبد لله موجود للتوضيح ماهو مطلوب
  18. اساتذتي الكرام الكود يعمل بشكل جيد في فورم المنح واردت زيادة فورم القروض فكيف يتم التعديل وشكرا
  19. السلام عليكم اساتذة تعديلا على الموضوع الرابط هنا المطلوب التعديل على هذا الكود علما انه مخصص للمنح والتعويضات فقط والان اريد زيادة القروض والادوات الكهرومنزلية اي منح الاستفادة منهما يشرط ان يكون منخرطا بدفع مبلغ مالي قيمة 3000 Public Function CheckInkhirat(ByRef ID As Integer) As String On Error GoTo err_CheckInkhirat Dim yearNow As Integer, totalPaid As Currency Dim paymentMarch As Boolean, paymentJuly As Boolean Dim t As Integer, t1 As Integer Dim result_haj As Variant, latestDate As Variant Dim todayDate As Date, yearsDifference As Long Dim menhaID As Integer, eligibilityPeriod As Integer Dim menhaName As String, menhaType As String Dim message As String ' تحديد السنة الحالية If Month(Date) < 3 Then yearNow = Year(Date) - 1 t = 1 Else yearNow = Year(Date) t = 2 End If ' الحصول على تاريخ اليوم todayDate = Date ' إجمالي المبلغ المدفوع totalPaid = Nz(DSum("Payment_Made", "tbl_Loans", "EmployeeID = " & ID & " AND Year(Auto_Date) = " & yearNow & " AND Loan_ID = 0"), 0) ' جلب معرف المنحة من النموذج والتحقق من نوع الامتياز menhaID = 0 Select Case [Forms]![FrmMenah]![Etar] Case "المنح العائلية" menhaID = [Forms]![FrmMenah]![Frm_sub].[Form]![CmdMenha] latestDate = Nz(DMax("Menha_Date", "[Mena7]", "[EmployeeID] = " & ID & " AND [Menha_ID] = " & menhaID), #1/1/1900#) Case "التعويضات الطبية" menhaID = [Forms]![FrmMenah]![Frm_sub].[Form]![cmdSanitaire] latestDate = Nz(DMax("[Sanitaire_Date]", "[Sanitaire]", _ "[EmployeeID] = " & [Forms]![FrmMenah]![EmployeeID] & _ " And [Nom_Beneficiaire] = '" & Replace([Forms]![FrmMenah]![Frm_sub].[Form]![Nom_Beneficiaire], "'", "''") & "'" & _ " And [Sanitaire_ID] = " & [Forms]![FrmMenah]![Frm_sub].[Form]![cmdSanitaire]), #1/1/1900#) End Select ' جلب اسم المنحة ونوعها وفترة الاستحقاق من الجدول menhaName = Nz(DLookup("Menha_Name", "tbl_MenhaRules", "Menha_ID = " & menhaID & " AND Menha_Type = '" & [Forms]![FrmMenah]![Etar] & "'"), "") menhaType = Nz(DLookup("Menha_Type", "tbl_MenhaRules", "Menha_ID = " & menhaID & " AND Menha_Type = '" & [Forms]![FrmMenah]![Etar] & "'"), "") eligibilityPeriod = Nz(DLookup("Eligibility_Period", "tbl_MenhaRules", "Menha_ID = " & menhaID & _ " AND Menha_Type = '" & menhaType & "' AND Eligibility_Period > 0"), 0) ' التحقق إذا كانت هناك فترة استحقاق مسجلة If eligibilityPeriod > 0 Then yearsDifference = DateDiff("yyyy", latestDate, todayDate) t1 = IIf(yearsDifference < eligibilityPeriod, 1, 2) End If ' التحقق من دفع المبلغ في مارس ويوليو paymentMarch = Nz(DLookup("Payment_Made", "tbl_Loans", "EmployeeID = " & ID & " AND Year(Auto_Date) = " & yearNow & " AND Month(Auto_Date) = 3"), 0) = 1500 paymentJuly = Nz(DLookup("Payment_Made", "tbl_Loans", "EmployeeID = " & ID & " AND Year(Auto_Date) = " & yearNow & " AND Month(Auto_Date) = 7"), 0) = 1500 ' بناء الرسالة بناءً على الشروط If totalPaid = 3000 Then message = "عزيزي المنخرط(ة)، يمكنك الاستفادة من " & menhaType & ": " & menhaName & "." If t = 1 Then message = message & " لأنك دفعت مبلغ الانخراط الخاص بالسنة الماضية كاملاً." ElseIf t = 2 Then message = message & " لأنك دفعت مبلغ الانخراط كاملاً." If paymentMarch And paymentJuly Then message = message & " على دفعتين." End If End If ' التحقق من آخر تاريخ لاستفادة المنحة If Not IsNull(latestDate) And eligibilityPeriod > 0 Then If eligibilityPeriod = 100 Then ' إذا كانت فترة الاستحقاق 100، تكون المنحة لمرة واحدة فقط message = "عزيزي المنخرط(ة)، لا يمكنك الاستفادة من " & menhaType & ": " & menhaName & "." & vbNewLine & _ "هذه المنحة يتم الاستفادة منها مرة واحدة فقط." ElseIf t1 = 1 Then ' في حالة الرفض بسبب فترة الاستحقاق message = "عزيزي المنخرط(ة)، لا يمكنك الاستفادة من " & menhaType & ": " & menhaName & "." & vbNewLine & _ "لقد استفدت من هذه المنحة بتاريخ: " & Format(latestDate, "dd/mm/yyyy") & "." & vbNewLine & _ "يجب الانتظار لمدة " & eligibilityPeriod & " سنة قبل الاستفادة مجددًا." Else ' في حالة القبول بعد انتهاء فترة الاستحقاق message = message & vbNewLine & "يمكنك الاستفادة من المنحة مجددًا." End If End If Else ' في حالة عدم دفع مبلغ الانخراط message = "عزيزي المنخرط(ة)، لا يمكنك الاستفادة من " & menhaType & ": " & menhaName & "." & vbNewLine & _ "لم تقم بدفع مبلغ الانخراط بالكامل المطلوب للاستفادة." End If ' إرجاع الرسالة CheckInkhirat = message Exit Function err_CheckInkhirat: MsgBox "خطأ رقم " & Err.Number & ": " & Err.Description, vbCritical, "خطأ" CheckInkhirat = "حدث خطأ أثناء التحقق من بيانات الانخراط." End Function BAR_A(2025).rar
  20. هل من مساعدة اساتذة استاذ Barna يبدو أنه غايب عن المنتدى نتمنى ان يكون بخير
  21. السلام عليكم استاذ Barna معذرة . . . استاذي تم التعديل على المنح ونسيت القروص المالية والأدوات الكهرومنزلية قكيف يتم إضافة الكود الخاص بهم Select Case [Forms]![FrmCridi]![Etar] Case "القروض المالية" CridiID = [Forms]![FrmCridi]![Frm_sub].[Form]![CmdCridi] latestDate = Nz(DMax("Cridi_Date", "[Cridi]", "[EmployeeID] = " & ID & " AND [Cridi_ID] = " & CridiID), #1/1/1900#) Case "الأدوات الكهرومنزلية" ElecID = [Forms]![FrmElec]![Frm_sub].[Form]![CmdElec] latestDate = Nz(DMax("Elec_Date", "[Cridi]", "[EmployeeID] = " & ID & " AND [Elec_ID] = " & ElecID), #1/1/1900#) End Select الى الكود التالي المعدل من حضربك Public Function CheckInkhirat(ByRef ID As Integer) As String On Error GoTo err_CheckInkhirat Dim yearNow As Integer, totalPaid As Currency Dim paymentMarch As Boolean, paymentJuly As Boolean Dim t As Integer, t1 As Integer Dim result_haj As Variant, latestDate As Variant Dim todayDate As Date, yearsDifference As Long Dim menhaID As Integer, eligibilityPeriod As Integer Dim menhaName As String, menhaType As String Dim message As String ' تحديد السنة الحالية If Month(Date) < 3 Then yearNow = Year(Date) - 1 t = 1 Else yearNow = Year(Date) t = 2 End If ' الحصول على تاريخ اليوم todayDate = Date ' إجمالي المبلغ المدفوع totalPaid = Nz(DSum("Payment_Made", "tbl_Loans", "EmployeeID = " & ID & " AND Year(Auto_Date) = " & yearNow & " AND Loan_ID = 0"), 0) ' جلب معرف المنحة من النموذج والتحقق من نوع الامتياز menhaID = 0 Select Case [Forms]![FrmMenah]![Etar] Case "المنح العائلية" menhaID = [Forms]![FrmMenah]![Frm_sub].[Form]![CmdMenha] latestDate = Nz(DMax("Menha_Date", "[Mena7]", "[EmployeeID] = " & ID & " AND [Menha_ID] = " & menhaID), #1/1/1900#) Case "التعويضات الطبية" menhaID = [Forms]![FrmMenah]![Frm_sub].[Form]![cmdSanitaire] latestDate = Nz(DMax("[Sanitaire_Date]", "[Sanitaire]", _ "[EmployeeID] = " & [Forms]![FrmMenah]![EmployeeID] & _ " And [Nom_Beneficiaire] = '" & Replace([Forms]![FrmMenah]![Frm_sub].[Form]![Nom_Beneficiaire], "'", "''") & "'" & _ " And [Sanitaire_ID] = " & [Forms]![FrmMenah]![Frm_sub].[Form]![cmdSanitaire]), #1/1/1900#) End Select ' جلب اسم المنحة ونوعها وفترة الاستحقاق من الجدول menhaName = Nz(DLookup("Menha_Name", "tbl_MenhaRules", "Menha_ID = " & menhaID & " AND Menha_Type = '" & [Forms]![FrmMenah]![Etar] & "'"), "") menhaType = Nz(DLookup("Menha_Type", "tbl_MenhaRules", "Menha_ID = " & menhaID & " AND Menha_Type = '" & [Forms]![FrmMenah]![Etar] & "'"), "") eligibilityPeriod = Nz(DLookup("Eligibility_Period", "tbl_MenhaRules", "Menha_ID = " & menhaID & _ " AND Menha_Type = '" & menhaType & "' AND Eligibility_Period > 0"), 0) ' التحقق إذا كانت هناك فترة استحقاق مسجلة If eligibilityPeriod > 0 Then yearsDifference = DateDiff("yyyy", latestDate, todayDate) t1 = IIf(yearsDifference < eligibilityPeriod, 1, 2) End If ' التحقق من دفع المبلغ في مارس ويوليو paymentMarch = Nz(DLookup("Payment_Made", "tbl_Loans", "EmployeeID = " & ID & " AND Year(Auto_Date) = " & yearNow & " AND Month(Auto_Date) = 3"), 0) = 1500 paymentJuly = Nz(DLookup("Payment_Made", "tbl_Loans", "EmployeeID = " & ID & " AND Year(Auto_Date) = " & yearNow & " AND Month(Auto_Date) = 7"), 0) = 1500 ' بناء الرسالة بناءً على الشروط If totalPaid = 3000 Then message = "عزيزي المنخرط(ة)، يمكنك الاستفادة من " & menhaType & ": " & menhaName & "." If t = 1 Then message = message & " لأنك دفعت مبلغ الانخراط الخاص بالسنة الماضية كاملاً." ElseIf t = 2 Then message = message & " لأنك دفعت مبلغ الانخراط كاملاً." If paymentMarch And paymentJuly Then message = message & " على دفعتين." End If End If ' التحقق من آخر تاريخ لاستفادة المنحة If Not IsNull(latestDate) And eligibilityPeriod > 0 Then If eligibilityPeriod = 100 Then ' إذا كانت فترة الاستحقاق 100، تكون المنحة لمرة واحدة فقط message = "عزيزي المنخرط(ة)، لا يمكنك الاستفادة من " & menhaType & ": " & menhaName & "." & vbNewLine & _ "هذه المنحة يتم الاستفادة منها مرة واحدة فقط." ElseIf t1 = 1 Then ' في حالة الرفض بسبب فترة الاستحقاق message = "عزيزي المنخرط(ة)، لا يمكنك الاستفادة من " & menhaType & ": " & menhaName & "." & vbNewLine & _ "لقد استفدت من هذه المنحة بتاريخ: " & Format(latestDate, "dd/mm/yyyy") & "." & vbNewLine & _ "يجب الانتظار لمدة " & eligibilityPeriod & " سنة قبل الاستفادة مجددًا." Else ' في حالة القبول بعد انتهاء فترة الاستحقاق message = message & vbNewLine & "يمكنك الاستفادة من المنحة مجددًا." End If End If Else ' في حالة عدم دفع مبلغ الانخراط message = "عزيزي المنخرط(ة)، لا يمكنك الاستفادة من " & menhaType & ": " & menhaName & "." & vbNewLine & _ "لم تقم بدفع مبلغ الانخراط بالكامل المطلوب للاستفادة." End If ' إرجاع الرسالة CheckInkhirat = message Exit Function err_CheckInkhirat: MsgBox "خطأ رقم " & Err.Number & ": " & Err.Description, vbCritical, "خطأ" CheckInkhirat = "حدث خطأ أثناء التحقق من بيانات الانخراط." End Function علمان انه فورم مستقل لوحده ومافيه حتى شرط الا ان يكون دافع مبلغ الانخراط كما في المنح والتعويضات BAR_A(2025).rar
×
×
  • اضف...

Important Information