50٪ تخفیف روی تمام دوره‌ها!
پایان تخفیف تا:
مشاهده دوره‌ها
0

طراحی Table در SQL SRV 2008 R2 برای پرسنل

با سلام

من میخوام یه Table طراحی کنم که مربوط به پرسنل یه شرکت هستش و این نرم افزار در بخش درمان مورد استفاده قرار می گیره! حالا سوالی که برای من ایجاد شده:

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

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

برای بالا بردن سرعت Loading هم باید فکر کرد.

لطفا راهنمایی کنید

جزییات:

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

- برای زن و مرد یه Table ساختم. به منظور فراخوانی و بالا بردن سرعت کد

- برای همسر، همسردوم، فرزند پسر، فرزند دختر، پدر شخص بیمه شده، مادر شخص بیمه شده هم جدا یه Table زدم فقط اسامی فراخوانی شود این نسبت ها.

- برای Field های وضعیت تاهل، تابعیت، ملیت، دین، مذهب، استان، شهرستان، محل تولید از Table استان، محل تولد از Table استان فراخوانی شود رو جدا زدم که با DropDownList بخونم تو فرم.

t1

t2

t3
پرسیده شده در 1395/11/22 توسط

9 پاسخ

0

خوب، شما بی زحمت Diagram جدول هات و اینجا بزار، نه فرم های برنامه، اینجوری بهتر میشه رو طراحی بانک نظر داد.

پاسخ در 1395/11/26 توسط
0

اینجوری شما گفتی باحال شد فقط طراحی فرمش و نمیفهمم چطوری میشه؟

پاسخ در 1395/11/22 توسط
1

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

  1. یک جدول تعریف کنید برای اطلاعات اشخاص که کل اشخاص داخل این جدول تعریف میشن با کلیه اطلاعات. زن و مرد رو هم جدا نکنید، یه فیلد بزارید که با عدد 0 یا 1 جنسیت مشخص بشه.
  2. برای کارمندان یک جدول تعریفل کنید و بگید کدوم یکی از افراد تعریف شده داخل جدولی که برای اشخاص تعریف کردید پرسنل هستند.
  3. یک جدول دیگه هم تعریف کنید که مشخص بشه کدوم یکی از اشخاص زیر مجموعه بیمه شده هست

مثالی از جدول طراحی شده:

create table People
(
	[Id] int identity not null primary key,
	[FirstName] nvarchar(200) not null,
	[LastName] nvarchar(200) not null,
	[BirthDate] datetime not null,
	[NationalId] char(10) not null,
	[Sex] tinyint not null
);
go

create table Employees
(
	[PersonId] int not null primary key references [People]([Id]),
	[EmployeeId] nvarchar(10) not null
);

create table EmployeeSubPeopleTypes
(
	[Id] int identity not null primary key,
	[Title] nvarchar(200) not null
);
go

create table EmployeesSubPeople
(
	[EmployeeId] int not null references [Employees]([PersonId]),
	[SubPeopleId] int not null references [People]([Id])
);
go

جدول EmployeeSubPeopleType رو برای این ایجاد کردیم که نوع رابطه بین پرسنل و زیر مجموعه مشخص بشه، مثل همسر، فرزند، و ...، حالا شما برای موارد دیگه مثل محل تولد و ... برای جدول People یه جدول جداگانه بسازید و Relation ایجاد کنید.

پاسخ در 1395/11/22 توسط
0

نه منظور من این بود که رابطه بین فرم هایی که طراحی کردم با این نوع طراحی جدول که انجام دادین نمی خونه .

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

پاسخ در 1395/11/26 توسط
0

یعنی فقط فرم هاتون رو طراحی کردید و بانک اطلاعاتی ندارید؟

پاسخ در 1395/11/27 توسط
0

داستان اینه من دیاگرام نزدم چون نمیدونم چطور اینو طراحی جدول کنم

پاسخ در 1395/11/26 توسط
0

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

تعریف اطلاعات پایه

ش ش

تو فرم بالا اول مشخصات پرسنل و میزنم

فراخوانی پرسنل و تکمیل اطلاعات

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

بستگان پرسنل

این فرم بستگان پرسنل و تکمیل میکنم باهاش

پاسخ در 1395/11/22 توسط
0

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

پاسخ در 1395/11/23 توسط
0

اطلاعات پرسنلی فرد چی؟

زمان استخدام، نوع شغل، محل خدمات سازمانی

پاسخ در 1395/11/22 توسط

پاسخ شما