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

Khalid Jnb

الخبراء
  • Posts

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

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

  • Days Won

    5

مشاركات المكتوبه بواسطه Khalid Jnb

  1. السلام عليكم

    اخي العزيز ماقي مشكلة ليس لها حل ان شاء الله

    تفضل اخي الكريم طلبك :

    1-البرنامج يحسب لك تاريخ استحقاق العلاوة  الجديدة بصورة تلقائية لمدة سنة واحدة  عند ادخال تاريخ العلاوة السابق.

    2- عند وجود شكر للموظف يتم اختياره من القائمة المنسدلة  ويقوم البرنامج بتقديم تاريخ استحقاق العلاوة الجديده لمدة شهر واحد. 

    3- اقصى حد للتشكرات  التي تقوم بتقديم تاريخ العلاوة السنوية هو (3) .

    4- عملت لك رسالة تنبيه باللون الاحمر  (وميض متحرك) نعمل قبل 5 ايام من تاريخ الاستحقاق الجديد ويمكن زيادة مدة التنبيه الى اكثر من ذلك.

    5- عملت لك تقرير بالعلاوات السنوية / في حالة وجود اي علاوة بقتح التقرير بصورة طبيعية / وفي حالة عدم وجود اي علاوة تظهر لك رسالة / لاتوجد علاوات هذا اليوم.

    اعلمنا النتائج ؟؟؟؟؟  تحياتي 

    test.rar

    • Like 2
    • Thanks 1
  2. السلام عليكم 

    تعريف الوحدات النمطية : هي دالة او مجموعة من الدوال مكتوبة بلغة VBA تؤدي غرضاً معيناً او تعيد قيماً محددة بناءً على قيماً مدخلة.ويتم استدعاء الوحدة النمطية في اي موقع في قاعدة البيانات سواءً في الاستعلامات او النماذج او في اشرطة الادوات.

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

    ---------------------------------------------------------------------------------------------------------------------------

     انشاء الوحدة النمطية بكون بالدخول الى محرر فيجيوال بيزيك: الكود التالي يمثل الدالة الاجرائية وهي ابسط انواع الدوال:

    Function Function_Name( ) 
    Statement
    End Function

    شرح الكود :يجب ان تبدأ الدالة بهذه الكلمة للتعريف بانها دالة وهناك كلمات اخرى للتعريف بنوع الدالة لكن هذا النوع الشائع. (اسم الدالة)  Function_Name

     ويجب مراعاة مايلي عند اختيار اسم الدالة :

    - اختيار الاسم باللغة الانجليزية

    - اختيار اسم يدل على وظيفة الدالة

    - اختصار الاسم قدر الامكان ويفضل ان تكون كلمة واحدة.

    - في حال استخدام عدة كلمات يجب ان لا تحتوي على فراغ يما بينها ولذلك يتم الفصل بينها بواسطة الشرطة السفلية.

    - تجنب استخدام الكلمات المحجوزة واذا لزم الامر اضف حرفاً الى بداية او نهاية الكلمة .

    -----------------------------------------------------------------------------------------------------------------------------------------

    - مجموعة الكودات الاجرائية التي نحتاجها (Statement  )

    - التصريح عن نهاية الدالة (End Function)

    وتستخدم الدالة الاجرائية في تنفيذ الاوامر مثل فتح واغلاق النماذج , التنقل بين السجلات , التحكم في خصائص النماذج وعناصر التحكم , تشغيل جمل ال SQL , اظهار الرسائل المختلفة ... الخ 

    ويتم استدعاء هذه الدالة كالتالي  بالكود:  Call Function_Name  ( اسم الدالة)

    هذه بعض التلميحات المنقولة حول الدوال ارجو ان يكون فيها الفائدة

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

     

    test.rar

    رسالة ترحيب.rar

    • Like 4
  3. السلام عليكم

    اخي العزيز من الافضل ارفاق ملف  للتعديل / للسرعة في انجاز المطلوب

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

    'بالنسبة للنماذج يتم الجمع داخل الحقل بان يكون الحقل غير منظم وتكتب داخله مثلا
    =Sum([اسم الحقل])
    'جلب قيمة من نموذج الى آخر يشرط يكون مفتوح
    =[Forms]![اسم النموذج]![اسم الحقل]

    ويمكن جلب القيم مباشرة من الجدول او الاستعلام  الى النموذج باحدى الدوال

    • Like 1
  4. اخي العزيز abdulmajid انتظرني قليلا انني اعمل عليه  

    انظر للمرفق / وضعت صلاحيات المستخدم داخل النموذج  ويمكنك تغيير مكانها  اووضعها في نموذج منقصل او اخفائها 

    اعلمنا النتائج 

    q.rar

    • Like 1
  5. السلام عليكم

    كود سيط لعمل كلمة مرور   يوضع بعد التحديث او عند الضغط بزر

     

    If [password] = 123  Then
      MsgBox "تفضـل بالدخـول", , "مبـروك"
      DoCmd.Close
      DoCmd.OpenForm "اسم النموذج"
    ElseIf [password] <> 123  Then
        MsgBox " كلمة المرور خطأ ", 16, "تنبيه"
        [password] = Null
      End If

     

    test.rar

    • Like 2
  6. السلام عليكم

    لم اقهم سؤالك  (تتكرر قيمتها بإختياري

    اذا كان قصدك  عندما  تقوم بفتح سجل جديد  تجد قيمة ثابته: ممكن عملها باكثر من طريقة

    1- عن طريق وضع  القيمة الافتراضية لحقول 

    2- عن طريق الدالة if  

    If IsNull(text) Then
    Me.text= 0
    End If

     

    3- جعل القيمة  الاقتراضبة للحقل تتكرر مثل اخر سجل تم الكتابة به

    =dlast("اسم الحقل","اسم الجدول")

    اعلمنا النتائج

     

     

    • Like 2
  7. " العطاء قيمة انسانية عظيمة"

    علينا دائماً أن نشكر ونقدر من قدّموا لنا المساعدة ومدّوا لنا يد العون عند حاجتنا لمن يقف إلى جانبنا، وعلينا أن نبوح لهم دوماً عن فرحنا بوجودهم وتقديرنا لمساندتهم. شكرا لفريق الموقع على هذه الثقة وشكراً لكل المشاركين في هذا الصرح الرائع . اخوكم خالد

    • Like 3
    • Thanks 2
  8. السلام عليكم

    بعد اذن استاذ  Ali Sadiq

    وضع الكود في الحالي (Form_Current) ويمكن تغييره الى عدة صيغ 

    وشكرا لكم

    'يمكن اختيار احد الكودات التالية'
    
    Me.txtShowMe = "الصفحة " & CurrentRecord & " من " & RecordsetClone.RecordCount
    'or
    Me.txtShowMe = "Record No. " & CurrentRecord & " of " & RecordsetClone.RecordCount
    'or
    Me.txtShowMe = Me.CurrentRecord & " / " & Me.Recordset.RecordCount

     

    • Like 2
  9. السلام عليكم

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

    لااعرف لماذا  لاتضيف حقل اخر بالجدول للشهر  التالي 

    اتمنى ان  توضح الفكرة لي ؟؟

     

  10. دالة NZ وهي اختصاراً لكلمتي : NULL Zero
    
    ومهمتها أن يتم التخلص من مشكلة وجود القيمة Null في بعض العمليات مما يعطي خطأ ..
    
    Nz(DSum("Qty";"tabl2";"barcode=" & [barcode]);0)

    السلام عليكم

    انظر للمرفق اخي الكريم

    اتمنى ان يكون المطلوب

    Qty in table - Qty on form.rar

    • Like 2
  11. السلام عليكم

    انظر للمرفق اخي الكريم

    ‏‏‫‏‏Library2.rar

    'استخدم الكود التالي لفتح التقرير'
    DoCmd.OpenReport "العدد والادوات", acViewPreview
    'وعند فتح التقرير سوف يتم اغلاق النموذج'
    DoCmd.Maximize
    DoCmd.Close acForm, "Table_Visitor"
    'وعند اغلاق التقرير سيتم فتح النموذج'
    DoCmd.OpenForm "Table_Visitor"

     

    • Like 1
×
×
  • اضف...

Important Information