تبلیغات :
آکوستیک ، فوم شانه تخم مرغی، صداگیر ماینر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 1 از 7 12345 ... آخرآخر
نمايش نتايج 1 به 10 از 70

نام تاپيک: درخواست آموزش: دلفی تحت شبکه (بانک اطلاعاتی)

  1. #1
    پروفشنال romixery's Avatar
    تاريخ عضويت
    Mar 2007
    محل سكونت
    ميون موجودات عجيب غريب(آدما)
    پست ها
    673

    پيش فرض درخواست آموزش: دلفی تحت شبکه (بانک اطلاعاتی)

    دوستان عزیزم سلام
    اوقات بخیر
    تقاضای من بیشتر از حرفه ای های انجمن هست.
    توی این انجمن همه آموزشهای مورد نیاز یه برنامه نویس برای دلفی هست. همه مبحثی کار شده جز یکی: اونم آموزش دلفی تحت شبکه هستش.
    منظورم از دلفی تحت شبکه، شبکه اینترنت نیست، منظورم شبکه داخلیه. مثلا دوتا کامپیوتر بهم وصلن و هر دو می خوان از یه بانک اطلاعاتی در یه زمان استفاده کنن. مثل مدیر و منشی.
    یا مثلا ببینیم کیا وصل شبکه هستن و الان متصلن و ... کلا کارایی که با شبکه می شه انجام داد.
    راستش توی هیچ کتابی در مورد این مبحث، موضوعی ننوشتن. اگه نوشتن بهم معرفی کنین ممنون میشم!!!
    تقاضای من:
    از دوستانی که این مبحث رو بلدن خواهش می کنم یه آموزش هم در مورد این موضوع بدن تا هم من فیض ببرم هم بقیه دوستانی که اطلاعی ندارن.
    پیشاپیش از همکاری دوستان عزیزم کمال تشکر رو دارم
    موفق باشین
    بای
    ../../1386
    Romixery
    (مثله نامه های اداری شد نه؟)

  2. #2
    آخر فروم باز NoneForce's Avatar
    تاريخ عضويت
    Nov 2005
    محل سكونت
    Sector0@
    پست ها
    1,603

    پيش فرض

    سلام
    بهتره يه مساله طرح كنيد تا بشه روش كار كرد و به نتيجه رسيد. اينطوري موضوع كلي است.

  3. #3
    پروفشنال romixery's Avatar
    تاريخ عضويت
    Mar 2007
    محل سكونت
    ميون موجودات عجيب غريب(آدما)
    پست ها
    673

    پيش فرض

    سلام
    باشه مثل اينكه چاره اي نيست بايد يه مسئله طرح بشه:
    خوب اينم مسئله:
    دو يا n تا كامپيوتر داريم كه همشون به يه برنامه مجهزن كه مديريت نامه هاي اداري رو بر عهده داره.(مثل دفتر انديكاتور چون اتفاقا الان هم دارم روي همين پروژه كار مي كنم)
    خوب حالا اين چندتا كامپيوتر با User هاي مختلف و سطح دسترسي هاي مختلف به اين برنامه وصلن. ميخوام ببينم چجوري بايد بانك رو بنويسم كه روي شبكه باشه و اين چند كامپيوتر از اون استفاده كنن.
    مثلا اگه يه نامه رو مدير ثبت كرد. همزمان در شبكه، كاربران ديگه هم اين نامه ثبت شده رو در دسترس داشته باشن.
    البته اينجا مسئله هاي ديگه اي هم هست. اگه اين يكي بد بود بگين يه چيز ديگه مطرح كنم.
    آخه بابا در زمينه شبكه خدا مسئله ميشه طرح كرد ديگه!!!!!!!!
    خوب بنده حقير دست ياري مطلبم.
    موفق باشين
    باي

  4. #4
    حـــــرفـه ای F A R H A D's Avatar
    تاريخ عضويت
    Aug 2006
    پست ها
    1,383

    پيش فرض

    ميخوام ببينم چجوري بايد بانك رو بنويسم كه روي شبكه باشه و اين چند كامپيوتر از اون استفاده كنن
    سلام. زمانی که مبحث شبکه پیش میاد اولین موردی که باید مد نظر قرار داد نحوه ارتباط با دیتابیس شبکه هست. برای این کار معمولا از ADO و بانک های اطلاعاتی ms sql , MySql , access استفاده میشه و با تنظیم صحیح connection string مربوط به کامپوننت های ado (و البته پیش بینی آینده که اگر نیاز بود توضیح میدم) میشه با بانک شبکه ارتباط برقرار کرد.

    خوب حالا اين چندتا كامپيوتر با User هاي مختلف و سطح دسترسي هاي مختلف به اين برنامه وصلن
    شما سطح دسترسی رو باید در سطح دیتابیس (نه برنامه) مشخص کنید. مثلا کاربر user1 فقط توانایی دیدن داده ها رو داشته باشه و لی user2 ویرایش رو هم بتونه انجام بده و ...

    حالا منم به romixery کمک میکنم و مساله دیگه ای رو مطرح میکنم. سیستم نقد کردن چک رو در نظر بگیرید. اگر ما 2 چک از 1 حساب داشته باشیم و این 2 چک همزمان به دو بانک مختلف برده شه، (اگر فرض بر این باشه که موجودی حساب 10 هست و مبلغ چک اول 8 و مبلغ چک دوم 4 هست) متصدی بخش چک موجودی حساب رو برای چک اول نگاه میکنه، و رکورد مورد نظر رو در اختیار میگیره. در همین لحظه همین اقدامات برای چک 2 هم صورت میگیره. چون هنوز موجودی چک 1 از حساب کم نشده پس چک 2 پاس میشه و در همین لحظه چک 1 هم توسط بانک اول نقد میشه. پس 8+4=12 ! بانک بدبخت شد!

    نتیجه: یکی از اصول بسیار مهم در طراحی برنامه های تحت شبکه مدیریت اعمال مختلف روی دیتابیس ها هست. state رو در دلفی جستجو کنید

    موفق باشید

  5. #5
    پروفشنال romixery's Avatar
    تاريخ عضويت
    Mar 2007
    محل سكونت
    ميون موجودات عجيب غريب(آدما)
    پست ها
    673

    پيش فرض

    سلام
    واقعا اگه اينجوري كه فرهاد جان ميگفتن ميشدن چي ميشد. بانكها مثل آدامس بادكنكي...
    دستور State رو ديدم. ولي طريقه استفاده از اون رو هم اگه بگين ممنون مي شم. يه مثال كوچيك از دستور كافيه.
    خوب موضوع اينجاست كه من چجوري بايد بانك و كانكشن اون رو براي شبكه آماده كنم؟
    موفق باشين
    باي

  6. #6
    حـــــرفـه ای F A R H A D's Avatar
    تاريخ عضويت
    Aug 2006
    پست ها
    1,383

    پيش فرض

    دستور State رو ديدم. ولي طريقه استفاده از اون رو هم اگه بگين ممنون مي شم. يه مثال كوچيك از دستور كافيه.
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    البته این روش برای قفل کردن جدول هست و برای رکورد مفید نیست.

    خوب موضوع اينجاست كه من چجوري بايد بانك و كانكشن اون رو براي شبكه آماده كنم؟
    بستگي داره از چه بانکي استفاده کنيد

  7. #7
    پروفشنال romixery's Avatar
    تاريخ عضويت
    Mar 2007
    محل سكونت
    ميون موجودات عجيب غريب(آدما)
    پست ها
    673

    پيش فرض

    البته این روش برای قفل کردن جدول هست و برای رکورد مفید نیست.
    سلام
    اينم راه حل مشكلي كه مطرح كردين:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    حله؟
    بهتره توي Help دلفي يه نگاهي به Recordstatuse بندازين. همون چيزيه كه شما مي خواستين.
    البته بجاي rsConcurrencyViolation ميشه چيزاي ديگه هم گذاشت. كه من مطمئن نيستم براي كاري كه شما ميگين اين مقدار يعني (rsConcurrencyViolation) مناسبه يا نه. شما هم ببينين. ببينين كدومش مناسبتره. چون يدونه ديگه هم به نام (rsPendingChanges) هم داره.
    بستگي داره از چه بانکي استفاده کنيد
    فعلا شما بانك رو Acsess بگيرين. اگه با همين راه افتادم. با MS SQL Server كار رو ادامه مي دم.
    موفق باشين
    باي
    Last edited by romixery; 29-10-2007 at 10:38.

  8. #8
    حـــــرفـه ای F A R H A D's Avatar
    تاريخ عضويت
    Aug 2006
    پست ها
    1,383

    پيش فرض

    اينم راه حل مشكلي كه مطرح كردين:
    کد:

    If rsConcurrencyViolation in ADOTable1.Recordstatuse then
    Showmessage('This Record is used in other point. You can`t accses this record now');

    حله؟
    بهتره توي Help دلفي يه نگاهي به Recordstatuse بندازين. همون چيزيه كه شما مي خواستين.
    البته بجاي rsConcurrencyViolation ميشه چيزاي ديگه هم گذاشت. كه من مطمئن نيستم براي كاري كه شما ميگين اين مقدار يعني (rsConcurrencyViolation) مناسبه يا نه. شما هم ببينين. ببينين كدومش مناسبتره. چون يدونه ديگه هم به نام (rsPendingChanges) هم داره.
    متاسفانه این هم برای رکورد کارایی نداره.
    برای lockکردن رکورد باید خاصیت lock type دیتاست رو روی ltPessimistic و cursor location رو روی clUseServer تنظیم کنید.

    فعلا شما بانك رو Acsess بگيرين. اگه با همين راه افتادم. با MS SQL Server كار رو ادامه مي دم.
    با access شبکه نکردم و اطلاعی ندارم. در آدرس دهی access با ip مشکل دارم. اگر دوستان کمک کنند ممنون میشم.

    ................
    ؟؟؟

  9. #9
    پروفشنال romixery's Avatar
    تاريخ عضويت
    Mar 2007
    محل سكونت
    ميون موجودات عجيب غريب(آدما)
    پست ها
    673

    پيش فرض

    متاسفانه این هم برای رکورد کارایی نداره.
    سلام
    آخه منم اين روش رو از توي گوگل سرچ كردم. تو يه سايت نوشته بود. حالا شما ميگين فايده اي نداره حتما نداره ديگه. آخه شما حرفه اي ترين.
    ...................
    چون پست دوبار زده شده بود يكيشو اينجوري كردم.نمي دونم چرا بعضي وقتا پستها دوبار دوبار مي خورن.
    موفق باشين
    باي
    Last edited by romixery; 30-10-2007 at 10:43.

  10. #10
    پروفشنال romixery's Avatar
    تاريخ عضويت
    Mar 2007
    محل سكونت
    ميون موجودات عجيب غريب(آدما)
    پست ها
    673

    پيش فرض

    سلام
    راستش اينقدر اين تاپيك به انتهاي انجمن سقوط كرده بود كه يادم رفته بود اين تاپيك رو زدم
    نا سلامتي درخواست آموزش داديم. ولي بحث به بيراهه رفت.
    به هر حال الان دست حاجت مي طلبم.(بازم ادبي شد). هر كي درباره شبكه در دلفي مي دونه بسم ال...
    مطمئنم خيليا مي خوان تحت شبكه كار كنن.
    موفق باشين
    باي

صفحه 1 از 7 12345 ... آخرآخر

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •