عناوین :
* شرح پروژه
* Tables
* Forms
* برنامه تحت ASP.NET
شرح پروژه :
به جهت امنیت سیستمهای کامپیوتری لازم است که برخی محدودیتها برروی سیستم قرار
داده شود تا دسترسی کاربران به سیستم را کنترل کند . بدین منظور طرحی با نام برنامه
Useraccess مطرح شده است . این برنامه همان طور که از اسم آن پیدا است میزان
دسترسی کاربران سیستم را تعیین می کند .بدین منظور نرم افزاری تولید می شود تا اینکه
بتواند بر روی برناه اصلی هر نوع سیستمی قرار گرفته ودرزمان اولین باراجرای برنامه
مدیر سیستم بتواند worker ها، نقشها ، منوی اصلی برنامه و … را تعریف کند .همچنین
او باید نقش هر worker در سیستم را تعریف کرده و با توجه به آن حق دسترسی برای
آن worker تعریف کند . بعد از اتمام کار با توجه به توانایی های نرم افزار و سیستم
زمان آن است که سیستم از آن اطلاعات استفاده کند. سیستم با توجه به اطلاعات وارد شده
به ساخت منوی برنامه می پردازد و پس از آن با توجه به حق دسترسی های تعریف شده
سیستم پس از شناسایی کاربر منوهایی که قرار است در اختیار او نباشد راغیرفعال خواهد
کرد .بدین صورت عملکرد سیستم کنترل شده خواهد بود .
درابتدای کار باید گفت که این نرم افزار برای ذخیره سازی اطلاعات به یک پایگاه داده
متصل می شود که در زیر به شرح کامل آن می پردازیم :
پایگاه داده مابا نام useraccess دارای5 جدول کلی برای ذخیره سازی اطلاعات است :
Tables
1 ) Login
این جدول به جهت امنیت نرم افزار ساخته شده که حاوی اطلاعات مدیر اصلی
پروژه است .این جدول دارای دو ستون است ، که شامل Username ، ورمز
مدیر اصلی است . شکل کلی جدول به شکل زیر است :
این جدول تنها جدولی است که اطلاعات آن توسط خود برنامه نویس از ابتدا پر
می شود و کاربر به آن دسترسی ندارد .
2 ) Worker
این جدول دارای چهار ستون است که شامل name ، Lname
Code وAge است . که اطلاعات کارمندان سیستم را در خود ذخیره
خواهد کرد :
3 ) Role
برای شرح نقشها در سیستم نیازمند جدول Role هستیم . این جدول شامل
دو ستون استبا نامهای role و crole که برای ذخیره سازی نام نقش ها و
کد آنها در نظر گرفته شده است :
4 ) Worker-Role
بعد ازمشخص کردنWorker ها ونقشها بایدمشخص شودکه هر Worker
چه نقشی در سیستم دارد . برای این منظور جدول worker-role قرار داده
شده است که شامل دو ستون با نام های wcode و rcode است که درهر
مرحله کد کارمند و کد نقشی که برعهده دارد مشخص وذخیره می شود :
5 ) Menu
یکی ازاطلاعاتی که باید ذخیره شوداطلاعات مربوط به منو سیستم است که مشخص
می کند سیستم اساساً چه گزینه هایی برای خدمت رسانی به کاربران دارد .این جدول
شامل سه ستون name ، mcode ، parentcode است .همان طور که می دانید
هر منو ای ممکن است یک زیر منو داشته باشد .بدین منظور ستون parentcode
درنظر گرفته شده تا در صورت لزوم برای آن زیر منو کد منو مادر آن ذخیره شود.
شکل کلی جدول به شکل زیر است :
6 ) Visible
در مرحله آخر باید مشخص شود که هر بخش از منو باید در اختیار
کدام نقشها قرار بگیرد یا قرار نگیرد یعنی برای آن نقش خواص قابل
دسترسی ( visible ) باشد یا نه . بدین منظور جدول visible را
داریم که دارای سه ستونwcode ، mcode وvisible است :
درمرحله بعد می خواهیم صفحاتی را که در اختیار کاربر قرار می گیردطراحی وپیاده
سازی کنیم . در ابتدا باید ذکر شود که چون ما در این برنامه می خواهیم از پایگاه داده
ای که تولید کرده ایم ستفاده کنیم باید در ابتدا برنامه مان به پایگاه داده متصل شویم .
FORMS
صفحهLogin :
این صفحه اولین صفحه ای است که برای کاربر ظاهر می شود . در واقع کاربر اصلی ما
مدیرسیستم خواهد بود.این صفحه شامل یک فرم Login خواهد بودکه درواقع جهت امنیت
سیستم از آن استفاده می کنیم . این فرم همان طورکه در قسمت جداول توضیح دادیم دارای
دو Textbox خواهد بود که اطلاعات کاربر شامل کلمه عبور و رمز او خواهد بود در
این صفحه یک botton قرار دارد که پس از این که کاربراطلاعات را وارد کرد بر روی
آن کلیک کرد وظیفه برنامه آن است که اطلاعات ورودی را با اطلاعاتی که در جدول
Login در پایگاه داده ما ذخیره شده مقایسه کند در صورت تطابق اجازه ورود داده می
شود و صفحه اصلی برنامه در اختیار کاربر قرار می گیرد .
همان طورکه گفتیم دستوراتی باید برای Botton (Log In) نوشته شود که دستورات
به شرح زیر است :
فرم login در زیر نشان داده شده است:
گفتیم که اگر اطلاعات ورودی درست بود باید صفحه اصلی نمایش داده شود .این صفحه
شاملbottonهای مختلفی جهت ورود به صفحات دیگر بسته به در خواست کاربراست .
همان طور که می دانید کاربر باید در پنج مرحله اطلاعات متفاوتی را وارد کند بنابراین
پنج botton در این صفحه قرار دارد که با کلیک بر رو ی هر کدام از آنها به صفحه
مربوط به آن میرود البته باید دقت داشت که بعضی ازمراحل وارد کردن اطلاعات حتماً
باید قبل از یک سری دیگر وارد شود. بنا براین اگراین این تقدم رعایت نشود پیامی جهت
اخطار ظاهر می شود . در قسمت پایین صفحه دو botton قرار داده شده تا در صورت
تمایل کاربر بتواند به صفحات قبلی یا بعدی برود . صفحه اصلی به فرم زیر است :
در این قسمت اگرکاربر بخواهد اطلاعات کارمندان را وارد کند بر روی worker کلیک
می کند و صفحه زیر باز می شود :
در فرم بالا همان طور کهنشان داده شده است مشخصات کلیه افرادی که در سیستم کار
می کنند وارد جدولی که از قبل در پایگاه داده برای کارکنان به نام worker در نظر
گرفته شده شده و ذخیره می شود . این عمل با وارد کردن اطلاعات داخل هر box و
کلیک کردن button( add ) صورت می گیرد . بعد از اتمام کار کلید خروج را زده
و به صفحه اصلی بازمی گردد.برنامه ای که این اعمال راانجام می دهد درزیرنوشته
شده است :
در مرحله بعد ، بعد از بازگشت به صفحه اصلی کاربر انتخابات دیگری خواهد داشت برای
مثال اگر بخواهد اطلاعات مربوط به نقشها در سیستم موجود را وارد کند کلید role را زده
ووارد صفحه مخصوص آن می شود . فرم زیر به جهت وارد کردن نقشها ساخته شده است :
در شکل بالا مشاهده می کنید که اطلاعات مربوط به نقشها وارد شده و سپس کلیدadd
زده می شود . بدین ترتیب این اطلاعات در جدول مر بوط به نقشها ذخیره می شود . در
پایان کار کاربر می تواند با زدن کلید خروج به صفحه اصلی باز گردد.همچنین می تواند
با انتخاب یکی از کلید های پایین صفحه به صفحه بعدی یا قبلی برود .
گفتیم که با زدن کلید add اطلاعات به جدول مربوطه انتقال یابد این عمل با دستورات
زیر امکان پذیر است :
درمرحله بعد کاربرمی تواند با تو جه به اینکه حتماً ازقبل اطلاعات مربوط به کارمندان
و نقشها را وارد کرده می تواند نقش کارمندان در سیستم را مشخص کند . بدین منظور
درصفحه مورد نظر تنها کد مربوط به فرد و کد نقشی که بر عهده داردرا وارد می کند .
شکل فرم مورد نظر به صورت زیر است :
در شکل بالا نیز همان طورکه میبینید بعد از وارد کردن اطلاعات با زدن کلید add
مقادیر داخلbox ها به داخل جدولی که بدین منظوردر data base قبلاً قرارداده ایم
منتقل می شود . و با زدن کلید exit به صفحه اصلیل بر خواهیم گشت . ریز برنامه
عملیات بالا به شرح زیر است :
در مراحل بعدی لازم است که کاربر اطلاعات و بخش های مختلف منویی که در اختیار
سایر افراد قرار می گیرد را مشخص کند بدین منظوردرمنوی اصلی کلید منو را انتخاب
می کند . با انتخاب آن صفحه مربوط به منو باز می شود . این صفحه دارای box هایی
جهت وارد کردن نام هر منو و کد آن می باشد که با زدن کلید add اطلاعات موجود در
Box ها به جدول مرتبط آن در data base وارد می شود . همان طور که می دانید هر
منومی تواند شامل زیر منو های متفاوتی باشد .بدین منظور یک کلید قرار داده شده که در
صورت لزوم کاربر می تواند با زدن آن اطلاعات مربوط به زیرمنوهای آن منو را وارد
کند . همین کار را می تواند برای آن زیرمنو نیز انجام دهد .ولی همان طور که در قسمت
جداول دیدید ،جدول menu شامل سه ستون است که کاربر تنها اطلاعات دو ستون را
وارد می کند . پر کردن ستون سوم جدول یعنی parent code به عهده برنامه نویس
است بدین صورت که اگر منوی اوصی باشد یعنی زیر منوهیچ منویی نباشد parent
code آن برابر صفر خواهد بود در غیر این صورت مقدار آن برابر code منویی
خواهد بود که آن زیرمنو متعلق به آن می باشد.فرم اصلی صفحه منوبه شکل زیراست :
شکل شماره 1 :
شکل شماره 2 :
شکل شماره 3 :
همان طور که می بینید در شکل اول چهار کلید ودو box وجود دارد . با زدن کلید
add اطلاعات box ها به داخل جدول مربوطه وارد می شود . بازدن کلید continue
می تواند مقدار بعدی را وارد کند .اما زمانی که بخواهد زیر منوها یی برای آن منو
خواص تعریف کند کلید ( … ) را می زند بدین ترتیب box های جدیدی برای وارد
کردن زیر منو ها ظاهر می شود . زمانی که زیر منو ها برای یک منو تمام شد با
زدن کلید exit می تواند یک مرحله به عقب یعنی یک منو به عقب برگردد .
این عملیات توسط دستورات زیر صورت می گیرد :
دراین قسمت پس از این که کاربر به صفحه اصلی بازگشت یکی از انتخاب های دیگر
او گزینه visible خواهد بود. با انتخاب این گزینه کاربرمی تواند به صفحه مربوطه
وارد شود .دراین صفحه قراراست کاربرمشخص کند که چه منویی دراختیار چه کسی
قرار بگیرد یا نگیرد . طبق اطلاعات وقتی برنامه اصلی سیستم راه اندازی شود با
توجه به کد کاربر منوهای برای او visible می شوند . دراین صفحه لازم است که
مدیر شبکه کد فرد و کد منو را وارد کرده و اگر می خواهد آن منو در اختیارآن فرد
قراربگیرد قسمت مربوطه راعلامت می زند و اگرعلامت نزند به معنی آن است که
می خواهدآن منو برای آن فرد غیر فعال باشد .شکل فرم صفحه به صورت زیر است :
در بالا نیز با زدن کلید add اطلاعات داخل box ها به data base منتقل می شود و
و با کلید exit در انتهای کار به صفحه اصلی بازمی گردد . دستورات انجام عملیات فرم
به صورت زیر است :
همان طور که دیدید در مراحل مختلف فرمها برنامه نشان داده شد . این بر نامه قادر است
بر روی هر سیستمی نصب شود .بعد از آن برای اولین بار آن سیستم با این برنامه کارخود
را شروع می کند . و زمانی که کار مدیرسیستم با این برنامه تمام شد پس ازخروج برنامه
اصلی سیستم با توجه به اطلاعات وارد شده شروع به کار می کند وازاین پس دیگربرنامه
کاربردی برای سایر کاربران در اختیار آنها قرار خواهد گرفت .
پایان