نمایش نتایج 1 تا 12 از 12

نام تاپیک: تشخیص ورود اطلاعات تکراری

  1. #1
    کاربر تازه وارد آواتار یاسر احسانی
    تاریخ عضویت
    بهمن 1382
    محل زندگی
    Tehran
    پست
    51

    تشخیص ورود اطلاعات تکراری

    دوستان عزیز یک سوال خیلی کوچیک داشتم اگه لطف کنید جواب خوب و کاملی به من بدید دعا گوتون می شم . :cry:

    من یک بانک sql دلفی دارم . می خوام در دلفی کاری کنم که مثلا اگر شماره شناسایی یا مثلا نام و نام خانوادگی نکراری وارد شد پیغام خطای "اطلاعات تکراری می باشد لطفا اصلاح نمایید " را صادر نماید .

    البته این جستجو با Locate یا lookup ممکن است اما این دو اول اطلاعات را ذخیره یا بقول خودمان post می کنند بعد پیغام را می دهند . :cry: اما من می خام این پیغام قبل از ثبت اطلاعات بیاید و مانع از ثبت اطلاعات شود .
    اگر از PK در SQL هم استفاده کنم نمی شود زیرا پیغام خطا مستقیما از طرف خود دلفی صادر می شود .

    من باید تا پس فردا این پروسه رو تحویل بدم لطفا کمکم کنید. مچکرم . :?

  2. #2
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    پست
    854
    بعد از اینکه پیام خطا را صادر می کنی exit رو بنویس
     messagedlg('Error',MtError,[MbOk],0&#4  1;;
    exit;

  3. #3
    بنیان گذار Barnamenevis آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    کرج، گلشهر
    سن
    46
    پست
    6,379
    اگر شما برای هر رکورد یک شماره شناسایی در نظر گرفته باشید در واقعه OnBeforePost جدول تان میتوانید این شماره را جستجو کرده و پیام مقتضی را نمایش دهید.

  4. #4
    if adotable1.locate('field name' , edit1.text , [] ) = true then begin
    showmessage('اطلاعات تکراریست');
    end
    else
    adotable1.post;

  5. #5
    Locate بدلیل اینکه Pointer فایل رو حرکت میدهد Ado اولین کاری که انجام می دهد سعی در Postرکورد مورد تغییر است

    اما می توانید از کد زیر استفاده کنید

    Try
    AdoTable.Post
    Except
    ShowMessage ('Error');
    AdoTable.Cancel

  6. #6
    این فرمان اول چک میکنه اگر مقادیر وارد شده در ادیت باکسها توی تیبل موجود باشه هیچ کاری انجام نمیده و پیغام خطا میده و اگر وجود نداشته باشه ٬ ذخیره میکنه .

  7. #7
    کاربر تازه وارد آواتار یاسر احسانی
    تاریخ عضویت
    بهمن 1382
    محل زندگی
    Tehran
    پست
    51
    دست شما درد نکنه دوستان عزیز :flower: :flower: .

    می رم تا امتحان کنم . :موافق:

  8. #8
    کاربر تازه وارد آواتار یاسر احسانی
    تاریخ عضویت
    بهمن 1382
    محل زندگی
    Tehran
    پست
    51
    آقای مدیر :
    اگر شما برای هر رکورد یک شماره شناسایی در نظر گرفته باشید در واقعه OnBeforePost جدول تان میتوانید این شماره را جستجو کرده و پیام مقتضی را نمایش دهید.
    این مطلب را بیشتر توضیح بدید لطفا . چون کمک بچه ها نتونست کمکم بکنه و مسئله هنوز به قوت خودش باقیه . مچکرم . :cry:

  9. #9
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    بندرعباس ص پ 3769-79145
    پست
    149
    به نظر من بهترین راه استفاده از یه query کوچولوست:
    select code from mytable
    where code=INPUTDATA

  10. #10
    چرا این همه راه!
    شما فیلدتو ایندکس کن و تو Onposterror ، البته فکر کنم این باشه این پیغام رو بزار
    رکوردی تکراری یا اشتباه وارد شده است.
    حالا َAction رو ست کن

    موفق و پیروز باشید

  11. #11
    کاربر دائمی آواتار SYNDROME
    تاریخ عضویت
    فروردین 1386
    محل زندگی
    تهران
    پست
    2,814

    با سلام

    فیلد مورد نظر را در بانک PKey بگیرید و سپس عملیات ذخیره اطلاعات را داخل Try Except بنویسید.حالا اگر ذخیره اطلاعات دچار مشکل شد در قسمت Except End آن را مدیریت کنید و پیفام مناسب را نمایش دهید.
    موفق باشید

  12. #12
    تاریخ پست ها رو هم نگاه کنید.
    الان توی چه سالی هستیم؟ 86، البته 3 روز دیگه میشه 87
    سوال کی مطرح شد؟ 82!!

    یخورده برای جواب دادن دیر نیست؟!!


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •