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

نام تاپیک: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

  1. #1

    Lightbulb جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    فرض کنید یک تیبل با نام StudentTbl دارید
    این تیبل شامل یک فیلد با نام Name است
    از این تیبل یک فرم با نام StudentFrm ایجاد می کنیم
    حال می خواهیم چنانچه کاربر در فیلد Name از فرم StudentFrm داده ای تکراری وارد کرد با پیغام زیر مواجه شویم
    "نام این دانش آموز قبلا ثبت شده است"
    برای این کار مراحل زیر را مطابق شکل انجام دهید:
    1- ایجاد تیبل با نام StudentTbl و اعمال تغییرات در قسمت Indexed، مطابق شکل زیر

    2- ایجاد فرم از تیبل StudentTbl با نام StudentFrm
    3- نوشتن کد زیر در قسمت onError فرم مطابق کد و شکل زیر




    If DataErr = 3022 Then

    MsgBox "نام این دانش آموز قبلا ثبت شده است"

    Response = acDataErrContinue

    End If

    4- بستن محیط برنامه نویسی
    5- ذخیره کردن تغییرات در فرم
    6- بهره برداری!
    برای استفاده راحت تر فایل نهایی رو هم ضمیمه کردم
    فایل های ضمیمه فایل های ضمیمه

  2. #2
    کاربر دائمی آواتار saeed1234n
    تاریخ عضویت
    تیر 1390
    محل زندگی
    قرچک
    پست
    777

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    با سلام

    ضمن تشکر از سرکار به خاطر ارائه مطلب فوق
    روش ارائه شما هنگام خروج از فرم کاربر را از ورود مقدار تکراری آگاه می کند
    روش ساده تر و به نظر بنده کاراتر دیگری نیز وجود دارد که به محض ورود مقدار تکراری کاربر را مطلع می نماید و تا تصیحیح مقدار وارده مانع ار رفتن به فیلد یا رکورد بعدی می شود.
    و اما طریقه بکارگیری این روش :
    استفاده از تابع dlookup در رویداد after update فیلد مورد نظر میباشد که تا زمان تصحیح مقدار مانع از عملیات دیگری توسط کاربر میشود .

  3. #3

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    دوست عزیز لطفا یه نمونه ساده بگذارید .
    با تشکر

  4. #4

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    نقل قول نوشته شده توسط saeed1234n مشاهده تاپیک
    با سلام

    ضمن تشکر از سرکار به خاطر ارائه مطلب فوق
    روش ارائه شما هنگام خروج از فرم کاربر را از ورود مقدار تکراری آگاه می کند
    روش ساده تر و به نظر بنده کاراتر دیگری نیز وجود دارد که به محض ورود مقدار تکراری کاربر را مطلع می نماید و تا تصیحیح مقدار وارده مانع ار رفتن به فیلد یا رکورد بعدی می شود.
    و اما طریقه بکارگیری این روش :
    استفاده از تابع dlookup در رویداد after update فیلد مورد نظر میباشد که تا زمان تصحیح مقدار مانع از عملیات دیگری توسط کاربر میشود .
    ممنونم از حسن توجه شما
    من مجددا فایل خودم را امتحان کردم، این طور نیست به محض رفتن به رکورد بعدی (رکورد بعد از داده تکرای) این پیغام داده می شود یعنی تا زمانی که شما داده تکراری داشته باشید نمی توانید رکورد بعدی را ثبت کنید ( به تبع اگر آن داده تکراری آخرین داده شما باشد در هنگام خروج از فرم این پیغام داده میشه)
    من یه تازه کارم و دنبال حل مسئله های جدیدم و سعی میکنم هرچی یاد میگیرم رو به اشتراک بذارم تا همه استفاده کنن... قطعا ایده شما هم برای من و سایرین خیلی مفید خواهد بود... اگر یه نمونه ایجاد کنید همگی به راحتی ازش استفاده میکنن

    مجددا از حسن توجه شما سپاسگزاری میکنم

  5. #5

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    با سلام
    از لینک زیر کمک بگیرین
    https://barnamenevis.org/showthread.p...C%D9%84%D8%AF!

  6. #6
    کاربر دائمی آواتار ARData
    تاریخ عضویت
    بهمن 1388
    محل زندگی
    Karaj
    سن
    40
    پست
    431

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    قبل از آپديت فيلد مورد نظر :
    Private Sub FieldX_BeforeUpdate(Cancel As Integer)
    On Error Resume Next
    Dim RRecord As Variant
    'RRecord کد کليدي جدولي است که مقدار وارده قبلا در آن ثبت شده است
    RRecord = Nz(DLookup("[XID]", "TBLX", "[FieldX]=" & "'" & Me.FieldX & "'"), 0)
    If RRecord <> XID And RRecord <> 0 Then
    Cancel = True
    MsgBoxFa "رشته يا مقدار تعريف شده حاضر ، طي کد رديف شماره " & RRecord & " تکرار شده است . ", vbCritical, "نام رشته يا مقدار تکراري"
    End If
    End Sub

  7. #7

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    ممنون دوست خوبمون ARData اگر امکان داره تو یه فایل خیلی ساده نمایش بدین ممنونم

  8. #8
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1392
    محل زندگی
    قزوین
    پست
    108

    Lightbulb نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    سلام hashemi.hanieh

    فرمودید تازه کارید ولیکن روشتون الگوی دیگران میتونه قرار بگیره

    راه حل ساده و منطقی رو در پیش گرفتید که متکی بر امکانات درون ساختی خود اکسس هستش ولیکن با یک تغییر کوچیک توی اون ، ایرادهای سطحی که به روش درست شما گرفتند رو حل کنید ، توسل به یکی از کندترین توابع داخلی اکسس ( DlookUp ) نه الزامی برای شما داره و نه منطق مشخصی در پشتش قرار داره و تنها پیچیدگی غیر موجهی رو به دنبال میاره


    Private Sub SampleField_Exit(Cancel As Integer)

    On Error GoTo Err_SampleField_Exit

    DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70

    Err_SampleField_Exit:
    If Err.Number = 3022 Then MsgBox "Duplicate Entery !": Cancel = True

    End Sub

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

    .........................

    میگن توی یک کارخانه ژاپنی تولید کننده صابون ، شکایت مشتریهایی در خصوص خالی بودن برخی جعبه های صابون وصول شد

    مساله در تیم مهندسی مورد بررسی قرار گرفت و هر یک نظری دادند

    یکی گفت از یک ترازوی ریلی استفاده کنیم تا در هنگام عبور جعبه از روی اون ، در صورت خالی بودن تشخیص داده بشه و یک جک بادی اون رو بیرون بندازه

    دیگری گفت از پرتو اشعه X استفاده کنیم تا در صورت عدم مشاهده صابون توسط دوربین ، صابون از داخل یک ریل انحرافی به بیرون هدایت بشه

    در این بین یک کارگر یک ایده ساده داد :

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


    موفق باشید

  9. #9
    کاربر دائمی آواتار saeed1234n
    تاریخ عضویت
    تیر 1390
    محل زندگی
    قرچک
    پست
    777

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    با سلام

    دوستان عزیز

    من راه حل شما را تست کردم روشهای فوق (پست 1 و پست 8 )زمانی که فیلد ما primary key یا ایندکس آن از نوع No Duplicates باشد موثر است
    و در مواقعی که نخواهیم ( به هر دلیلی ) در فیلدمان از این دو پارامتر استفاده کنیم جوابگو نخواهند بود .

  10. #10
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1392
    محل زندگی
    قزوین
    پست
    108

    Lightbulb نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    سلام saeed1234n

    دوست خوبم یک مقدار دارید خلط مطلب میکنید

    دوستی اومده با نام hashemi.hanieh مطلبی درج کرده با عنوان :

    آموزش: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا
    به صراحت داره صحبت از یک روش و آموزش اون روش خاص میکنه و در هیچ جایی هم عنوان نکرده که روشش تنها روش موجوده و هیچ روش دیگه ای هم وجود نداره

    در ادامه شما ایرادی غیر مستدل به روش ایشون وارد کردید و عنوان فرمودید :

    روش ارائه شما هنگام خروج از فرم کاربر را از ورود مقدار تکراری آگاه می کند
    ایرادی که قطعا باید تایید کنید که به درستی درج نشده و ناشی از عدم دقت شما در بررسی نمونه بوده و در ادامه به یک روش پیشنهادی اشاره ای مختصر داشتید ( DlookUp )

    بنده نیز به جهت تایید نظر hashemi.hanieh و در راستای رفع یک نقص جزئی روش ایشون و در واقع تکمیل اون ، پاسخی رو درج کردم

    پاسخ بنده در راستا و منطبق با هدف اولیه آموزش هستش

    علی الظاهر شما و یا دیگر دوستان روشهای دیگه ای هم مدنظرتون هست که بررسی و یا بسط اونها قاعدتا میبایست در داخل یک تاپیک مجزا و با از سرگیری بحث توسط خود شما و یا دیگر افراد صاحب ایده به عمل بیاد ، در واقع شما مثال رو با مفروضات ذهنی خودتون در حال حل کردن هستید فرضا اینکه فیلدها رو دارید از حالت ایندکس شده در میارید و ...

    آموزش بر مبنای ایندکس گذاری هستش و در جایی نمیبینیم که نگارنده به غیر از این اشاره ای داشته باشه ، پس از این لحاظ هم نقصی به آموزش ایشون وارد نیست

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

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

    به هر تقدیر شما اشاره به استفاده از تابع DlookUp فرمودید و بنده هم درج کردم این تابع ، جزو کندترین توابع اکسس هستش و در ادامه هم عنوان کردم که الزامی به پیچیده فرض نمودن مفروضات نیست مگر اینکه بخوایم خودمون رو بی دلیل در یک تنگنا قرار بدیم ( به طور مثال بر خلاف نظر آموزش دهنده اومدید و فیلد رو از حالت Index شده درآورید )

    روشهای جایگزین و سریعتر از DlookUp هم وجود داره ولی سنخیتی با موضوع این تاپیک که در واقع مبنای آموزشی مشخصی در رابطه با یک روش هست ؛ نداره ( روشی که در پست یک آموزش داده شده ) ، فرضا میتونید از روشهای غیر الزام آور DAO و یا ADO استفاده کنید که به مراتب از DlookUp سریعتر هستند

    در نقد روش مطرح شده فرمودید :


    در مواقعی که نخواهیم ( به هر دلیلی ) در فیلدمان از این دو پارامتر استفاده کنیم جوابگو نخواهند بود
    اینجا یک تالار آموزشی هستش ، ممنون میشم مثالی بزنید که در پشت اون یک منطق صحیح وجود داشته باشه مبنی بر اینکه فیلدی تکراری نباید باشد ولیکن اون رو ایندکس گذاری هم نمیکنیم و یا نمیتوانیم بکنیم ( اگر در خصوص ایندکس و مفهوم اون نیاز به کمک دارید قبلا مقاله ای در این خصوص نوشتم ، اون رو مطالعه بفرمایید و یا به دیگر مقالات موجود مراجعه بفرمایید )

    اگر مبنا بر حسب سلیقه هستش ، تصور نمیکنم نه کسی با تفکرات مهندسی شده و نه کسی با تفکرات کارگری ، خودش رو درگیر مفروضات غلط و یا روشهای نادرست در اجرا و پیاده سازی یک دیتابیس کنه

    بنده فراموش نمیکنم که در داخل تالار اکسس هستم و در خصوص یک محصول RDBMS صحبت میکنیم ، RDBMS مبانی مشخصی در طراحی رو مفروض میکنه

    ایرادهایی متناسب و به جا به موضوعات بگیریم

    در مجموع اگر مطلبی آموزشی دارید که بشه در راستای اون نقصی به روش اول و یا دفاعی مشخص از روش فرضی خودتون داشته باشید ممنون میشم یاد بگیرم

    فقط خواهشا اگر قصد داشتید جوابیه ای ارسال کنید ( در جواب این پست ) جهت جلوگیری از طولانی شدن بحث ، بدیهیات رو توضیح نفرمایید و یک مقدار سطح بحث رو بیارید بالا ، تا در یک پست بتونید بحث آموزش رو به سر و سامانی برسونید

    ماحصل کلام و خلاصه صحبت بنده : روش دوستمون کاملا درست و قابل دفاع هستش ( بر خلاف ایراداتی که گرفته شده ) و صد البته تنها راه حل یک مساله هم نیست همونطوری که خودشون هم در این خصوص بحثی نداشتند

    همگی موفق باشید

  11. #11
    کاربر دائمی آواتار saeed1234n
    تاریخ عضویت
    تیر 1390
    محل زندگی
    قرچک
    پست
    777

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    با سلام
    دوست عزیز پیرو فرامایشات جنابعالی در موارد زیر :

    اینجا یک تالار آموزشی هستش
    روشهای جایگزین و سریعتر از DlookUp هم وجود داره ولی سنخیتی با موضوع این تاپیک که در واقع مبنای آموزشی مشخصی در رابطه با یک روش هست ؛ نداره ( روشی که در پست یک آموزش داده شده ) ، فرضا میتونید از روشهای غیر الزام آور DAO و یا ADO استفاده کنید که به مراتب از DlookUp سریعتر هستند
    بنده و دیگر دوستان خیلی خوشحال می شویم و سپاسگذار خواهیم بود تاپیکی در این زمینه (ADO) ایجاد نمایید .

  12. #12
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1392
    محل زندگی
    قزوین
    پست
    108

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    سلام saeed1234n


    دوست خوبم ، وقتی در پست قبلی درج کردم :

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

    تصور نمیکنم نه کسی با تفکرات مهندسی شده و نه کسی با تفکرات کارگری ، خودش رو درگیر مفروضات غلط و یا روشهای نادرست در اجرا و پیاده سازی یک دیتابیس کنه
    یعنی مفروضات غلط و دستکاری شده هستش و پیاده سازی هم به درستی انجام نشده

    دوست من تمامی اون قسمتهایی که به صورت Bold شده در اومدن به صورت آموزش هستند و نکته ای در خودشون دارند که به صورت متمایز از بقیه متن دراومدند

    پس با توجه به مطالب پست قبلیم وقتی فرمودید :

    بنده و دیگر دوستان خیلی خوشحال می شویم و سپاسگذار خواهیم بود تاپیکی در این زمینه (ADO) ایجاد نمایید
    این کار رو برای شما انجام نمیدم ! چرا ؟!

    چون ، بنده فقط کلیت رو گفتم و اینکه اگر به موارد موجود در پست قبلیم اعتقادی ندارید لااقل به جای Dlookup به دنبال DAO و یا ADO باشید ، در واقع انتخاب بین بد و بدتر بود وگرنه درستش همین مطلبی هست که دوستمون آموزش دادند

    البته میتونید با دوستانتون در تالار وارد مباحثه بشید ، مطمئناً کمکتون میکنند

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

    پی نوشت :

    saeed1234n آقا

    ضمنا دوست من چرا سانسوز میکنی ، بنده نوشتم :

    اینجا یک تالار آموزشی هستش ، ممنون میشم مثالی بزنید که در پشت اون یک منطق صحیح وجود داشته باشه مبنی بر اینکه فیلدی تکراری نباید باشد ولیکن اون رو ایندکس گذاری هم نمیکنیم و یا نمیتوانیم بکنیم
    جواب سئوال بنده رو که ندادید ! انگار نه انگار

    تهش رو زدید و جوابم رو با یک سئوال دادید

    خدا بگم چه کار نکنه

  13. #13
    کاربر دائمی
    تاریخ عضویت
    شهریور 1384
    محل زندگی
    فعلا اصفهان
    پست
    626

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    به نام خدا
    با سلام. یک نکته ای وجود دارد اینکه داده تکراری گاهی و بلکه اغلب منحصر به یک فیلد نیست. گاهی یک رکورد کامل نباید تکراری باشد و گاهی بیش از دو سه فیلد در یک رکورد نباید تکراری باشند. من به تجربه دیده ام که در اکسس جداولی که دارای ایندکس متعدد هستند (مخصوصا ایندکس های غیر تکراری) گاه غفلتا جدول به طرز فجیعی به هم می ریزد و بعضی وقت ها قابل بازیابی هم نیست. یعنی اول یک پیغامی می دهد مبنی بر منطبق نبودن داده و سپس جدول را از حیز انتفاع می اندازد. لذا خود من برای برخی جدول ها که داده تکراری اش برایم مهم باشد و برای اینکه گیر روش های دل پیچه آور حذف رکورد های تکراری نیفتم. یک تابع نوشته ام و دور از چشم اقانبیل، با یک حلقه رکورد را بررسی می کنم خلاص. البته ااین روش از dlookup هم کند تر است. ولی گناهش گردن امثال آقای امیری و پیروزمهر و دکتر می باشد که یک روش درست و درمانی یا در زمینه حذف رکورد تکراری و یا در زمینه جلوگیری از درج رکورد تکراری به فقرا (یعنی بنده و غیره) نمی آموزانند!

  14. #14

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    اصلا فک نمی کردم این مبحث انقدر به چالش کشیده بشه... ممنون از NEW ACCOUNT
    همون طور که روست خوبمون گفتن... من هیچ ادعایی ندارم... خیلی کوچیکتر از این حرفام... فقط خواستم دانسته هام رو با بقیه به اشتراک بذارم
    البته من به یه نکته ای پی بردم که حرف دوست خوبمون saeed1234n در مورد فرم های شامل ساب فرم ها صحیحه... یعنی در هنگام بسته شدن فرم خطا صادر میشه... البته یه پیغامی نمایش داده میشه... که اون پیغام با پیغام خطا متفاوته... میخوام روش DLOOKUP رو امتحان کنم ببینم چی میشه.... مجددا فایل رو در اختیارتون قرار میدم... اگر دوستان نظری در مورد این خطا در فرم های شامل ساب فرم ها دارن بگن....

  15. #15

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    سلام
    من یک فرم ثبت نام دارم
    می خواهم تو این فرم دانش آموزی با یک نام و یک نام خانوادگی تکراری نتونه ثبت نام کنه.
    تمام موارد که دیدم مربوط به تکراری بودن یک فیلد بود.
    ولی من می خواهم یک دانش آموز با یک نام نام خانوادگی نتونه ثبت نام کنه
    ولی نام تکراری و نام خانوادگی تکراری مشکل نداشته باشه

  16. #16

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    سلام . قاعدتا شما باید یه فرم مشخصات درست کنید و مثلا کد ملی را پرمری کی کنید (ساده ترین حالت) . بعد در فرم دیگرتان از نامها و فامیلی های به تکرار میتونید استفاده کنید

  17. #17
    کاربر دائمی آواتار mazoolagh
    تاریخ عضویت
    اردیبهشت 1384
    سن
    71
    پست
    3,044

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    نقل قول نوشته شده توسط gitec1 مشاهده تاپیک
    سلام
    من یک فرم ثبت نام دارم
    می خواهم تو این فرم دانش آموزی با یک نام و یک نام خانوادگی تکراری نتونه ثبت نام کنه.
    تمام موارد که دیدم مربوط به تکراری بودن یک فیلد بود.
    ولی من می خواهم یک دانش آموز با یک نام نام خانوادگی نتونه ثبت نام کنه
    ولی نام تکراری و نام خانوادگی تکراری مشکل نداشته باشه

    1- راه ساده این هست که کلید اصلی رو روی هر دو فیلد نام و نام خانوادگی تعریف کنین. کافی هست در محیط طراحی جدول هر دو فیلد رو select کنین و روی دکمه کلید بزنین. همین.
    یا از کد زیر استفاده کنین:

    alter table table1
    add primary key (fname,lname)



    یا اینکه فقط یک constraint از نوع unique براشون بسازین بدون اینکه تبدیل به کلید اصلی بشن:

    alter table table1
    add constraint unique_fullname unique (fname,lname)




    2- راه بهتر این هست که یک فیلد عددی (یا از نوع autonumber یا مثل کد ملی که آقای عربی اشاره کردن) رو بعنوان کلید اصلی داشته باشین بجاش روی فیلدهای نام و نام خانوادگی یک constraint از نوع unique تعریف کنین.

    create table table1 (
    id counter,
    fname text(50) not null,
    lname text(50) not null,
    constraint unique_fullname unique (fname,lname)
    )





    • اینکارها رو میتونین در محیط طراحی در بخش index هم انجام بدین.



  18. #18
    کاربر دائمی آواتار mazoolagh
    تاریخ عضویت
    اردیبهشت 1384
    سن
    71
    پست
    3,044

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    ضمنا پست شماره 8 آقای new account رو هم با دقت بخونین.
    بعد در رخداد onerror فرم میتونین از کدی شبیه زیر استفاده کنین:
    if dataerr=3022 then
    response=acdataerrcontinue
    msgbox("duplicate record")
    end if

  19. #19
    کاربر دائمی آواتار mazoolagh
    تاریخ عضویت
    اردیبهشت 1384
    سن
    71
    پست
    3,044

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    البته اینها بخش ساده کار بود و بدبختی اصلی تازه شروع میشه!

    باید بتونین یکسان بودن "علیرضا" و "علی رضا" و "علی‌رضا" رو تشخیص بدین
    یا
    "عبدالهی" و "عبداللهی"
    "آذر" و "اذر"
    "مؤمنی" و "مومنی"
    "رضایی" و "رضائی"
    "اسدالله" و "اسداله"
    و از این دست

  20. #20

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    با تشکر از شما
    آیا راه کاری برای این امر هست

  21. #21
    کاربر دائمی آواتار mazoolagh
    تاریخ عضویت
    اردیبهشت 1384
    سن
    71
    پست
    3,044

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    نقل قول نوشته شده توسط gitec1 مشاهده تاپیک
    با تشکر از شما
    آیا راه کاری برای این امر هست
    1- باید فیلدهای جدیدی به جدول اضافه کنین که مقادیر تبدیل شده رو در اون نگهداری کنین. فرضا برای نام خانوادگی اگر فیلد اصلی lname هست، این فیلد رو lnamex بگذارین.
    2- یک تابع پابلیک مینویسین که کار تبدیل رو انجام میده
    3- هنگام تراکنش insert/update با استفاده از این تابع اول مقدار تبدیل شده فیلد fname+lname رو با مقادیر قبلی fnamex+lnamex مقایسه میکنین، تکراری بود عملیات رو کنسل میکنین در غیر اینصورت میذارین کامل شه

  22. #22

    Smile نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    نقل قول نوشته شده توسط mazoolagh مشاهده تاپیک
    1- باید فیلدهای جدیدی به جدول اضافه کنین که مقادیر تبدیل شده رو در اون نگهداری کنین. فرضا برای نام خانوادگی اگر فیلد اصلی lname هست، این فیلد رو lnamex بگذارین.
    2- یک تابع پابلیک مینویسین که کار تبدیل رو انجام میده
    3- هنگام تراکنش insert/update با استفاده از این تابع اول مقدار تبدیل شده فیلد fname+lname رو با مقادیر قبلی fnamex+lnamex مقایسه میکنین، تکراری بود عملیات رو کنسل میکنین در غیر اینصورت میذارین کامل شه
    امکانش هست یک نمونه اگر موجود دارید آپلود کنید
    با تشکر

  23. #23

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    تشکر دوست خوب

  24. #24
    کاربر دائمی آواتار Milad_ATM
    تاریخ عضویت
    اسفند 1388
    محل زندگی
    بوشهر
    پست
    185

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    با سلام
    من این کد رو برای ثبت اطلاعات فرمم توی Table نوشتم
    Private Sub Add_Click()Dim RD As Recordset
    Set RD = CurrentDb.OpenRecordset("Daily_Register")
    RD.AddNew
    RD!FINNo = Me.FINNo
    RD!Discipline = Me.Discipline
    RD!SubCon = Me.SubCon
    RD!Activity = Me.Activity
    RD!EquipmentName = Me.EquipmentName
    RD!MeasurementUnit = Me.MeasurementUnit
    RD!AcceptVolume = Me.Acceptvloume
    RD!Result = Me.Result
    RD!InspectionDate = Me.InspectionDate
    RD!Inspector = Me.Inspector
    RD!TPAInspector = Me.TPAInspector
    RD!POGCInspector = Me.POGCInspector
    RD!Remark = Me.Remark
    RD!Unit = Me.Unit
    RD!RejectVolume = Me.RejectVolume
    RD!SubConInspector = Me.SubConInspector


    RD.Update
    Me.Daily_Register_subform.Requery
    FINNo.Requery
    End Sub


    در On error همین فرمی که کد بالا قرار دادم کد خانم هاشمی رو قرار دادم.
    منتها همچنان وقتی مقدار تکراری وارد میکنم با Error 3022 مواجه میشم.
    مشکل کجاست؟

  25. #25
    کاربر دائمی آواتار mazoolagh
    تاریخ عضویت
    اردیبهشت 1384
    سن
    71
    پست
    3,044

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    این کد که نوشتین برای فرم unbound هست!

    یک پرسش مشابه در تاپیک زیر هست (البته عنوان تاپیک نامناسب هست) و نمونه هم برای validation گذاشته شده
    همونجا روش کار با form error هم توضیح داده شده

    https://barnamenevis.org/showthread....یج-باکس

  26. #26
    کاربر دائمی آواتار Milad_ATM
    تاریخ عضویت
    اسفند 1388
    محل زندگی
    بوشهر
    پست
    185

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    من جواب سوالمو تو این تاپیک پیدا نکردم

  27. #27
    کاربر دائمی آواتار mazoolagh
    تاریخ عضویت
    اردیبهشت 1384
    سن
    71
    پست
    3,044

    نقل قول: جلوگیری از ورود داده تکراری در اکسس + نمایش پیغام خطا

    دو مورد هست که گفته شد ولی دقت نکردین:

    1- کدی که گذاشتین برای unbound form هست ، اگر در Bound form استفاده میکنین کار نادرستی هست.

    2- کدها و توضیحات نمونه ای رو که در تاپیک معرفی شده باید با دقت بخونین تا روش trap کردن error 3022 دستتون بیاد و در برنامه خودتون استفاده کنین.

تاپیک های مشابه

  1. سوال: مشکل در جلوگیری از ورود داده تکراری درون datagrid
    نوشته شده توسط nasimsltn7@gmail.com در بخش C#‎‎
    پاسخ: 11
    آخرین پست: شنبه 07 مرداد 1391, 00:44 صبح
  2. جلوگیری از ورود داده تکراری
    نوشته شده توسط soroush06 در بخش C#‎‎
    پاسخ: 4
    آخرین پست: شنبه 05 آذر 1390, 16:12 عصر
  3. جلوگیری از ورود داده تکراری
    نوشته شده توسط MBTJKQC در بخش Access
    پاسخ: 17
    آخرین پست: چهارشنبه 10 شهریور 1389, 16:03 عصر
  4. جلوگیری از ورود داده های تکراری و غیر مجاز در دیتا بیس
    نوشته شده توسط 13601360 در بخش دسترسی به داده ها (ADO.Net و LINQ و ...)
    پاسخ: 3
    آخرین پست: پنج شنبه 29 اسفند 1387, 21:21 عصر
  5. سوال: جلوگیری از ورود داده ی تکراری
    نوشته شده توسط niloofar norouzi در بخش C#‎‎
    پاسخ: 2
    آخرین پست: سه شنبه 09 مهر 1387, 06:51 صبح

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

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