PDA

View Full Version : مشخص کردن دسترسی در درختواره



tefos666
پنج شنبه 19 اردیبهشت 1387, 09:40 صبح
با سلام دوستان :

من یک برنامه دارم مینویسم که گزارشات خودم رو از توی دیتابیس میخونم (نام گزارش - آدرس فایل و....) که تو بانک sql ذخیره کردم و در نهایت اونها رو روی یک tree نمایش میدم که کاربر با کلیک روی هر آیتم گزارش مربوطه که با crystal طراحی شده رو باز میکنه و میبینه ضمنا کاربرهای من زیاد هستن و هرکس نام کاربری و کلمه عبور خودش رو داره که باز از تو بانک اطلاعاتی تعریف شدند . حالا من یک مشکل دارم و اونم اینه که میخوام کاربران خودم رو نسبت به گزارشات سطح دسترسی ایجاد کنم . مثلا یوزر x فقط گزارشات مربوط به ..... رو بتونه ببینه و باقی گزارشات خاصیتش enable شون false باشه یا با کلیک روی اون یک پیغام مبنی بر عدم دسترسی بده .

در آخر هم من یک فرم دارم که روی اون یک کمبوباکس دارم که نام کاربرهام رو لود میکنه و یک grid که نام گزارشات رو نشون میده و چک باکس داره با فشردن یک دکمه تمام گزارشاتی که یوزر انتخاب شده از کمبوباکس داره رو نشون بده و با کلیک روی هر چک باکس اون یوزر بتونه اون گزارش رو ببینه یا نبینه مشخص بشه !!! والسلام :متعجب:


http://barnamenevis.org/forum/attachment.php?attachmentid=17235&stc=1&d=1210225116

**** success is doing , not wishing ****

bobrus
پنج شنبه 19 اردیبهشت 1387, 11:17 صبح
دوست عزيز سلام
روش متداول براي اينكار اينه كه شمابراي هر جايي كه مي خوايد دسترسي بگذاريد مي تونيد از يه رشته استفاده كنيد كه از صفرويك تشكيل شده صفر يعني عدم دسترسي و يك به معني دسترسي كاربر تعريف ميشه حالا قبل از اجراي هر قسمت اول كاركتر موجود توي رشته دسترسي رو بررسي مي كنيد و مطابق اون اجازه كار به كاربر ميديد
مثال :
رشته دسترسي 11100100111
حالا فرض كنيد كاربر مي خواد ازقسمت شماره سوم استفاده كنه جون سومين كاركتر تو رشته ما عدد 1 هست پس اجازه داره ولي براي قسمت شماره چهار چون عدد صفر شده نمي تونه اجرا كنه
اميدوارم منظورم رو متوجه شده باشي
جزئياتش رو خودت فكر كن و طراحي كن

tefos666
شنبه 21 اردیبهشت 1387, 08:30 صبح
http://barnamenevis.org/forum/attachment.php?attachmentid=17317&stc=1&d=1210393663




دوست عزیز نظر شما درسته - ولی مشکل اصلی من اینه که یک فرم دارم که کاربر admin میتونه گزارش و یا شاخه اضافه کنه - بنابراین تعداد نود ها و ریشه های من نامحدود هستش و راهی که شما میگید یه مقدار پیچیده هستش اگر راه حل مناسبتری برای من سراغ دارید لطفا کمکم کنید . :متعجب:


success is doing , not wishing !!!

AmirAmiri
شنبه 21 اردیبهشت 1387, 09:21 صبح
خوب مسلما خوده فایل اجرایی رو که نمیتونی تغییرش بدی پس باید از یک فایل کمکی که مخصوص نگهداریه نودها و زیر نودها باشه استفاده کنی. فکر میکنم اینطوری قابل قبول تر از استفاده از رجیستری باشه.

tefos666
شنبه 21 اردیبهشت 1387, 14:43 عصر
دوست عزیز من تمامی اطلاعاتم از دیتابیس لود میشه -

نام و کلمه عبور کاربر

نام گزارش ها - نام شاخه ها - آدرس مسیر گزارشات

ABERTINO
شنبه 21 اردیبهشت 1387, 15:43 عصر
سلام دوستان
اگه شما توي بانكتون يه فيلد به عنوان شماره داشته باشيد كه توش شماره شاخه يا گزارش حالا چه از قبل تعريف شده باشن چه جديد توسط كاربر اضافه بشه رو بنويسي به سادگي مي توني محل مورد نظرت در در رشته دسترسي پيدا كني خيلي هم پيچيده نيست فقط احتياج به زمان و كد نويسي زياد داره