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

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


ابو جودي

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

السلام عليكم ورحمة الله تعالى وبركاته
كانت حاجتى ملحة فى وضع صلاحيات للمستخدمين للحفاظ على البيانات التى يتم ادخالها وعدم التلاعب بها وذلك لحساسية البيانات المدخلة
واصناء البحث وجدت البرنامج الخاص بالاستاذ محمد مهند العبادى بإسم Users Maker
قمت بإضافة المعالج الى قاعدة البيانات الخاصة بى وبصراحة حاولت التعديل عليها 
فقمت بالاتى 
- جعل المستخدم يقوم باختيار الاسم من كمبوبوكس  بدلا من كتابة اسمه كل مرة من خلال تيكست بوكس
- بعد التعديلات على النموذج user name  وذلك لجعل المستخدم يستطيع تغيير كلمة السر الخاصة به دون الرجوع الى المسئول عن البرنامج 
- قما قمت بوضع زر يفتح فورم الاذونات للمستخدمين من فورم الدخول 


ولكن الية العمل تكون كالاتى

عند إضافة الصلاحيات  من خلال معالج اضافة الصلاحيات لاى قاعدة بيتم الاتى 

  • انشاء مستخدم ادمن لقاعدة البياااانات
  • ادراج جدول  frm  وبيتم وضع كل اسماء النماذج الموجوده بالقاعدة بطريقة الية
  • ادراج جدول     Frm Ability
  • ادراج نموذج  Users Ability
  • ادراج الجدول             Users 

هناك اكثر من ذلك ولكن ذكرت ما يهمنى ذكره فقط

النموذج  Users Ability  من خلاله يتم من خلاله 

     اولا   : انشاء مستخدمين 
     ثانيا : اعطاء التصاريح لكل مستخدم بما يتناسب معه من قبل الادمن

ملاحظات هامة جدا جدا جدا 

عند انشاء مستخدمين من النموذج   Users Ability  يتم الاتى

1- ادراج سجلات فى الجدول  Frm Ability   عن طريق الجدول  Frm  وذلك طبقا لكل النماذج الموجودة بعددها 

2-رقم المستخدم  SN  ومصدره الجدول  Users

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

----------------------------------هذا هو الاصل فى الية المعالج والية عمل قاعدة البيانات بعد معالجتها --------

ما أريد تحقيقه هو الاتى 

اولا النموذج  Users Ability  يتم تغيير إسمه مثلا إلى  Group Ability  

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

ثانيا : عند انشاء مستخدم جديد يتم الاتى

1- تحديد اسم الجروب / رقم الجروب  الذى نريد اضافة المستخدم له فيدرج فى الجدول  Users

2-ادراج سجلات فى الجدول  Frm Ability   عن طريق الجدول  Frm  وذلك طبقا لكل النماذج الموجودة بعددها

2-رقم الجروب / اسم الجروب  "WG  مثلا  بدلا من  SN"  ويكون مصدره الجدول  Users  :wink2:

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

Public Function GetAbility(FormName As String, Ability As AbilityType)
    Dim c As String
    c = "[" & Choose(Ability, "o", "A", "d", "e") & "]"
    GetAbility = DLookup(c, "FRM Ability", "FRM = '" & FormName & "' and SN = " & Str(UserNum))
End Function


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



Private Function CheckValid() As Boolean
On Error GoTo Err
    CheckValid = False
    CheckValid = decode(DLookup("[PW]", "Users", "deCode([uname],'User')='" & Trim(UserName) & "'"), "Pass") = Trim(Me.pass)
    If CheckValid Then
        LogTime = Now()
        UserNum = DLookup("[SN]", "Users", "deCode([uname],'User')='" & Trim(UserName) & "'")
    End If
Err:
End Function

 الاستاذ مهند جعل التخصيص من خلال الاسماء عن طريق السيريال نمبر الخاص بكل يوزر ليكون فريد من نوعه 
امممممم
هل يمكن التعديل وتغير  sn  الى رقم فريد لمجموعة العمل ولتكن wg ؟
ويتم تخصيص رقم لكل مجموعة عمل
بإدراج جدول  workgroup ويكون فى هذا الجدول مثلا اسماء المجموعات ورقم معرف لكل مجموعه

مثلا

اسم المجموعه         رقم تعريف المجموعه

admin                        1                                  

2                        data entry

3                        editor

4                        viewer


هذا الجزء من الكود فى نموذج  user name  فى حدث عند الضغط على الزر  موافق 

DoCmd.RunSQL "INSERT INTO [Frm Ability] (SN,FRM,FRMDESC) SELECT" & Str(n) & " AS Expr1,FRMS.FRM,FRMDESC FROM FRMS;"

على حسب فهمى هو استعلام الحاق 
عند الضغط على الزر يقوم بالحاق اسماء النماذج ووصفها من الجدول  frm   وكذلك الـ sn  الخاص بالمستخدم الجديد الذى يتم انشائه الى الجدول  frm apility 

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

الحاق اسماء النماذج ووصفها  من الجدول frm  وكذلك الحاق رقم مجموعة العمل للمستخدم الجديد بناء على تحديدها من كومبوكس فى النموذج user name  الى الجدول   frm apility  ولكن تتم بنفس الالية التى تتم بها مع الـ  sn :smile:
ارفق قاعدة تم عمل المعالج الخاص بالصلاحيات عليها للاطلاع عليها وان شاء الله لو تم التعديل عليها كما اتمنى سوف اقوم بوضع هذا التعديل على المعالج وان شاء الله يمكننى ذلك 

 

تطوير صلاحيات المستخدمين.rar

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

17 ساعات مضت, karrar sabry said:

عاشت ايدك ... مشروع جميل

استمر

هههههههه
طيب انا باحاول الاستمرار بالفعل لكن اتمنى ان نستمر جميعا فى التطوير والتحديث

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

  • 3 years later...

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

وهل هناك نظام صلاحيات أخر (أسهل في التعامل) يكون مشابة لطريقة عمل نظام صلاحيات أستاذ العبادي وشكرا                          

صلاحيات2.jpg

صلاحيات1.jpg

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

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.

×
×
  • اضف...

Important Information