PDA

View Full Version : سوال: (خیلی فوریه) مشکل در تکراری بودن دو رکورد در 2 جدول متفاوت



emami.sie
جمعه 29 مرداد 1389, 09:14 صبح
با سلام و عرض خسته نباشید، و با تشکر از زحمات کلیه دوستان
من یک سیستم برای درمان پرسنل شرکت دارم طراحی می کنم که شامل جداول پرسنل،پزشکان، خانواده پرسنل و درمان پرسنل می شه...
ابتدا وقتی یک پرسنل جدید در سیستم ثبت می شه (جدول Persenel1 فایل پیوست) توسط یک اپند کوری وارد جودل پرسنل می شه و یک بخشی از اطلاعاتش هم به عنوان سرپرست خانوار وارد جدول خانواده می شه...
مشکل من از این قراره که وقتی فرم پرسنل1 برای ثبت پرسنل جدید اجرا می شه و فیلدها پر می شه وقتی دکمه ثبت رو می زنیم می خوام در صورت تکراری بودن کد پرسنلی وارد شده برنامه پیغام تکراری بودن بده ( یعنی ابتدا جدول پرسنل رو بررسی کنه و در صورت تکراری بودن کد پیغام بده) و فکوس بره روی فیلد کد پرسنلی فرم پرسنل1
خیلی ممنون می شم اگه منو راهنمایی بفرمایید
البته اصلاح فایل پیوست نهایت لطف شماست

Ali_Fallah
شنبه 30 مرداد 1389, 17:16 عصر
با سلام
البته جسارت نباشه
برنامه شما رو دیدم تعجب کردم که :
1- چرا دقیقاً دو تا جدول مثل هم ایجاد کردید و هدفتان چی هست ؟
2- شما 3 تا جدول طراحی کردید تحت عنوان نوع قرار داد , نسبت و واحد فعالیت (حال در ادامه ممکنه اضافه بشه ) در حالیکه میتوانستید همه آنها را در یک جدول تحت عنوان اطلاعات پایه داشته باشید ونیازی به این همه جدول نبود...
شما میتونید جدول پرسنلی خودتون رو به همه جداول ارتباط بدهید و هیچ گونه مشکلی هم پیش نمیاد
شما از روی جدول پرسنلی میتونید چند تا فرم بسازید یکی برای ورود اطلاعات جدید و یکی برای ویرایش و...
تازه میشه از جدول پرسنلی چند بار در ارتباط جدوال از آن استفاده کرد و...
یا حق

emami.sie
یک شنبه 31 مرداد 1389, 07:42 صبح
با سلام و تشکر از جواب جناب فلاح
عرض کنم خدمتتون دلیل اینکه من از چند جدول استفاده کردم یکی اینه که مبتدیم و دیگه اینکه در این سیستم اطلاعات پایه بسیار گسترده است (گسترده از لحاظ حجم (جمعیت شرکت بسیار زیاده)) و به نظر من اگه هر جدولی به تفکیک، کار خودش رو انجام بده احتمال بروز خطا کمتر میشه...
در مورد اون 2 تا جدول پرسنلی کاملا مشابه هم بعرضتون می رسونم که دلیلش اینه که در این برنامه وقتی کاربر یک پرسنل جدید رو به سیستم معرفی می کنه ابتدا در جدول پرسنل 1 ثبت می شه و بعد یک سری اطلاعاتش وارد جدول پرسنل و یک سری اطلاعاتش توسط اپند کوری دوم وارد جدول خانواده می شه (به عنوان سرپرست خانواده) و بعد توسط یک دیلت کوری اطلاعات جدول پرسنل 1 پاک میشه (یعنی تاثیری روی حجم دیتابیس نداره) (اینم بگم که من برای این کار نمی تونستم از خود جدول پرسنل استفاده کنم چون با اجرای اپند کوری دوباره کل پرسنل وارد شده دوباره به عنوان سرپرست خانواده وارد جدول خانواده می شد در صورتی که جدول پرسنل 1 همیشه یک رکورد داره و این دلیل اصلی من برای استفاده از 2 جدوله)
مشکل اینجا بود که وقتی اطلاعات جدول پرسنل 1 به جدول خانواده اضافه میشد کدهای تکراری در تکرارهای بعدی اپند کوری وارد جدول خانواده می شد که البته به کمک یک تابع DLOOK UP حلش کردم...
یعنی ابتدا کد فرد جدید (فرم پرسنل1) رو با جدول پرسنل چک می کنه و در صورت تکراری بودن پیغام میده و به این صورت هیچ وقت اطلاعات تکراری وارد جدول خانواده نخواهد شد.
سرتون رو درد آوردم ولی ممکنه یکی در آینده با این مشکل مواجه بشه
فایل اصلاح شده رو هم گذاشتم(در فرم پرسنل 1 کد 1111 رو وارد کنید)
ممنون
یا علی