PDA

نسخه کامل مشاهده نسخه کامل : نحوه نمایش یک فرم در ابتدای برنامه فقط برای یک بار؟



Sh-Meteor
16-07-2014, 17:49
سلام
.
من می خواستم یه برنامه مدیریت رزرواسیون هتل بنویسم.
.
( طبق در خواست استاد )، برنامه باید به نحوی باشه که وقتی روی سیستم A نصب میشه، بعد از نصب، وقتی برای اولین بار برنامه رو اجرا می کنی، یه فرم اجرا بشه
و توش یه سری اطلاعات از کاربر بپرسه. ( مثل اسم هتل، تعداد طبقه، تعداد اتاق در هر طبقه، تعداد تخت در هر اتاق و ... )
.
طبیعتا کاربر مسئول رزرو هتل، هر روز صبح نباید از اول به این سوال ها جواب بده.
( می خوام فقط یه بار، اونم زمانی که برنامه رو بعد از نصب برای اولین بار اجرا می کنی، اون فرم اجرا بشه )
و زمانی که همون برنامه به هتل دیگری برده شد و روی سیستم دیگری ( مثلا B ) نصب شد، بازم اون فرم فقط یه بار اونم بعد از نصب اجرا بشه.
.
من قراره برنامه رو با C# و بانک اطلاعاتی SQL Server بنویسم.
.
می خواستم بپرسم چطور این کارو کنم؟ راهی داره؟ چطوریه؟
پیشیپیش ممنون از توضیحات تون:n16::n16:

Mr.Pooya
16-07-2014, 18:13
سلام

ببینید کلیت طرح می تونه اینطوری باشه که شما به فرض یک کلمه رو تعریف می کنی Define می کنی به فرض اسمش رو می زاری IS_FIRST_TIME و مقدارش رو false میدی ( این مقدار رو تو Database ذخیره کن ) و بعد چک می کنی که اگر false بود برو فرم رو اجرا کن خب تا اینجا کار چک کردی که بعد از نصب برنامه فرم رو اجرا بشه. خب حالا چطوری چک کنی که فقط برای اولین بار اجرا بشه ؟

بعد از پر کردن فرم می تونی و ارسال اون اگر همه چی صحیح بود اون مقدار رو آپدیت می کنی تو دیتابیس و مقدارش رو به True تغییر می دی.

حالا برای اون شرط می نویسی که اگر IS_FIRST_TIME مقدارش TRUE بود دیگه فرم رو نشون نده.

اگر هم میخوای چک کنی که اگر اطلاعات اصلی سیستم از دیتابیس پاک شدند دوباره فرم رو نشون بده می تونی یک QUERY بگیری از جدولی که اطلاعات اصلی درش ذخیره می شن و بگی اگر خالی بود اون IS_FIRST_TIME رو دوباره به FALSE تغییر بده که فرم نمایش داده بشه.

راه های مختلفی هست ولی این روشی بود که الان در یک لحظه به ذهنم رسید . این طرح داستان هست و پیاده سازیش در C# با شماست.

موفق باشید

szh_1367
16-07-2014, 22:12
سلام

ببینید کلیت طرح می تونه اینطوری باشه که شما به فرض یک کلمه رو تعریف می کنی Define می کنی به فرض اسمش رو می زاری IS_FIRST_TIME و مقدارش رو false میدی ( این مقدار رو تو Database ذخیره کن ) و بعد چک می کنی که اگر false بود برو فرم رو اجرا کن خب تا اینجا کار چک کردی که بعد از نصب برنامه فرم رو اجرا بشه. خب حالا چطوری چک کنی که فقط برای اولین بار اجرا بشه ؟

بعد از پر کردن فرم می تونی و ارسال اون اگر همه چی صحیح بود اون مقدار رو آپدیت می کنی تو دیتابیس و مقدارش رو به True تغییر می دی.

حالا برای اون شرط می نویسی که اگر IS_FIRST_TIME مقدارش TRUE بود دیگه فرم رو نشون نده.

اگر هم میخوای چک کنی که اگر اطلاعات اصلی سیستم از دیتابیس پاک شدند دوباره فرم رو نشون بده می تونی یک QUERY بگیری از جدولی که اطلاعات اصلی درش ذخیره می شن و بگی اگر خالی بود اون IS_FIRST_TIME رو دوباره به FALSE تغییر بده که فرم نمایش داده بشه.

راه های مختلفی هست ولی این روشی بود که الان در یک لحظه به ذهنم رسید . این طرح داستان هست و پیاده سازیش در C# با شماست.

موفق باشید

بهتره هرچه میتوانیم ارتباط با دیتابیس رو کمتر کنیم

برای این کار یک setting در خوب برنامه ست کنید تا ارتباط با دیتابیس

Sh-Meteor
16-07-2014, 23:35
بهتره هرچه میتوانیم ارتباط با دیتابیس رو کمتر کنیم

برای این کار یک setting در خوب برنامه ست کنید تا ارتباط با دیتابیس
یعنی چی؟
چطوری باید این کارو کنم؟
.
مثلا توی منو ها یه منوی تنظیمات بزارم؟

Mr.Pooya
17-07-2014, 01:00
بهتره هرچه میتوانیم ارتباط با دیتابیس رو کمتر کنیم

برای این کار یک setting در خوب برنامه ست کنید تا ارتباط با دیتابیس

بله درسته حق با شماست. به نظر من هم ارتباط با دیتابیس باید تا حد ممکن کم بشه ولی عرض کردم که این یکی از هزار راه هست و راهی بود که اون لحظه به ذهنم رسید.

ـــــــــــــــــــــــــ ــــــــ

برای این کار می تونید یک کار دیگه هم بکنید.

بیاید یک فایل فرم ایجاد کنید بعد چک کنید اگر اون فایل حاوی فرم موجود بود نمایش داده بشه اگر نبود هم بره تو صفحه اصلی. البته میگم این ها راه های ساده و پیش پا افتاده ای هستند که میگم برای راحتی کار ولی اگر نیاز دارید واقعا حرفه ای باشه باید یک روش حرفه ای تر انتخاب کرد. بستگی به پروژتون داره چه چقدر حرفه ای هست. اگر خیلی ساده نوشته شده باشه خب فقط کافی هست یک روشی باشه که جواب بده ولی اگر واقعا حرفه ای هست نیاز هست از راه های حرفه ای تر استفاده بشه برای پیش بردن پروژه

موفق باشید.

szh_1367
17-07-2014, 10:56
یعنی چی؟
چطوری باید این کارو کنم؟
.
مثلا توی منو ها یه منوی تنظیمات بزارم؟

[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]

Sh-Meteor
17-07-2014, 17:53
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
از همه دوستانی که کمک کردن ممنونم!:n16:
.
این لینک فکر کنم خیلی به درد بخوره.
اگه کسه دیگه ای هم هست که راه دیگه ای بلده اگه بگه ممنون میشم.
.
.
.
بازم از همه ممنون.:n01: