القائمة الرئيسية

الصفحات

مشروع نظام مبيعات متكامل قاعدة بيانات

تابعنا ليصلك كل جديد

 مشروع نظام مبيعات متكامل قاعدة بيانات

مشروع قاعدة بيانات لشركة ابداع الماضي لتجارة الاقمشة والجلديات هو عبارة عن مشروع نظام مبيعات هدفه تطبيق ما تمت دراسته في مقرر قواعد البيانات 1 النظري والعملي معا.

تم تصميم قاعدة البيانات هذه لنظام حقيقي في ارض الواقع لم يكن بتلك السهولة ولكن كان الله مدبر لكل شيء
تم العمل على هذا المشروع في فريق حيث تعلمنا الكثير من المهارات سواء مهارات تنتمي الى هذا مقرر او مهارات ثانوية مثل العمل في فريق و تقسيم العمل و الاتفاق على نهج معين اثناء العمل من اجل سهولة فهم كل شخص في الفريق ما قام بإنجازه صديقة وما يجب عليه ان يفعله.

تم انجاز مشروع نظام إدارة المبيعات وفقا لخطوات معينة كانت كالتالي:

 

الخطوة الأولى : تحليل نظام المبيعات  القديم للمؤسسة

تحليل النظام القديم للمؤسسة والذي هو عبارة عن نظام منشاء سابقا حيث تم المناقشة على كيف يدور نظام التعامل في المحل وماهي المشاكل التي يواجهونها وذلك بسبب اننا لم نصادف
محل يستخدم النظام الورقي فلذالك قمنا بالتواصل مع احد الموظفين في شركة ابداع الماضي ومناقشته حتى توضحت لنا الرؤيه فلم يعطونا معلومات كافية والسبب انه من اجل الحماية او ما شابه ذلك بعد ذلك قمنا بتحديد المتطلبات للنظام
  وكانت متطلبات نظام المبيعات كالتالي:

المتطلبات:

  • يجب أن تدون المبيعات في فواتير المبيعات بحيث أن كل فاتورة تدون فيها عملية بيع واحدة أو أكثر وتبين في فاتورة المبيعات رقم الفاتور ،( (key attributeونوع الفاتورة، والخصم، والتاريخ. ويجب أن كل عملية بيع تدون في فاتورة واحدة. ويبين في المبيعات رقم العملية key )، (attributeوالكمية، ويستنتج الإجمالي.
  •  يجب أن مندوب المبيعات يصدر فاتورة مبيعات واحدة أو أكثر، ويمكن أن فاتورة المبيعات تصدر من مندوب المبيعات. ويعرف في مندوب المبيعات رقم المندوب ،( (key attribute واسم المندوب، ورقم هاتف أو أكثر وساعات استخدام السيارة.
  •  يجب أن لكل عميل فاتورة مبيعات واحدة أو أكثر، وفاتورة المبيعات الواحدة يمتلكها عميل واحد
  • فقط. ويعرف في العميل اسم العميل ) ، (key attributeواسم العميل، وعنوان العميل )المدينة،
  • الشارع)، التواصل (رقم هاتف، موقع نت، بريد الكتروني).
  • -يجب أن كل عملية بيع يتم فيها بيع صنف واحد فقط، ويمكن أن يباع الصنف بعملية بيع أو أكثر. ويبين في الصنف رقم الصنف (key attribute)واسم الصنف، ووحدة القياس، وسعر الوحدة.
  •  الصنف الواحد يسوقه مندوب مبيعات واحد أو أكثر، والمندوب الواحد يسوق صنف أو أكثر.
  •  الصنف الواحد يسحب من مخزن واحد أو أكثر، والمخزن الواحد يسحب منه صنف أو أكثر. ويبين في المخزن رقم المخزن ، ( (key attribute وعنوان المخزن، ويستنتج حالة المخزون.
  • يجب أن تدون المشتريات في فواتير المشتريات بحيث أن كل فاتورة تدون فيها عملية شراء واحدة أو أكثر. وتبين في فاتورة المشتريات رقم الفاتورة ، (key attribute ) ونوع الفاتورة، وخصومات الموردين، والتاريخ، والملاحظات. ويجب أن كل عملية شراء تدون في فاتورة واحدة. ويبين في المشتريات رقم العملية ،( key attribute) والكمية، ويستنتج الإجمالي.
  •  يجب أن كل عملية شراء تحتوي صنف واحد فقط، وكل صنف يحتوى بعملية شراء واحدة أو أكثر.
  •  يجب أن كل مشترى يخزن في مخزن واحد أو أكثر، والمخزن يخزن فيه من عملية شراء أو أكثر.
  •  يجب أن كل مشترى أن تورد من مورد أو أكثر، المورد يورد مشترا أو أكثر. ويعرف في المورد
  • رقم المورد ،( (key attributeواسم المورد، والعنوان )المدينة، الشارع)، ورقم هاتف أو أكثر، وموقع نت، وبريد إلكتروني

 


الخطوة الثانية : رسم مخطط الكيانات والعلاقات ERD لنظام المبيعات





بالرغم من بذل كل الجهد لعمل العلاقات بين الكيانات الا انه يوجد بعض الأخطاء في مشروعنا وذلك لعدم وجود المعلومات الكافية لعمل مشروع متكامل

مخطط erd الكيانات والعلاقات لنظام مبيعات - اليمن التقني



الخطوة الثالثة : تحويل مخطط نظام المبيعاتERD الى مخطط mapping schema

بعد ان انتهينا من انشاء مخطط الكيانات والعلاقات erd لنظام المبيعات ومراجعته قمنا بتحويله الى مخطط قاعدة البيانات او ما يسمى بمخطط سكيما mapping  schema. 

مخطط قاعدة البيانات سكيما لنظام مبيعات - اليمن التقني























الخطوة الرابعة : تحويل mapping schema الى جداول في الحاسوب لتنفيذ نظام المبيعات

تم انشاء الجدوال في قاعدة بيانات اوراكل وكانت بنية الجداول كالتالي

الجداول قد تكون ليست مرتبة بنفس ال ترتيب وقت الانشاء

 

 

أوامر انشاء الجداول لنظام المبيعات 

1-  إنشاء جدول ال customers

1
2
3
4
5
6
7
8
9
create table customers
‎(‎
customer_id number primary key,‎
customer_name varchar2(30) not null,‎
city_add varchar2(10),‎
street_add varchar2(20),‎
phone_no number not null,‎
wep_site varchar2(30),‎
email varchar2(30) );‎

2-  انشاء جدول  salesmen

1
2
3
4
5
create table salesmen
‎(‎
salesman_id number primary key,‎
salesman_name varchar2(30) not null,‎
car_work_hour number );‎


 

3-  انشاء جدول  suppliers

1
2
3
4
5
6
7
8
9
create table suppliers
‎(‎
supplier_id number primary key,‎
supplier_name varchar2(30) not null,‎
city_add varchar2(20),‎
street_add varchar2(10),‎
wep_site varchar2(30),‎
email varchar2(30)‎
‎);‎

 


4-  انشاء جدول stocks

1
2
3
4
5
create table stocks
‎(‎
stock_id number primary key,‎
stock_add varchar2(30) not null,‎
‎);‎

5-  إنشاء جدول items

1
2
3
4
5
6
7
create table items
‎(‎
item_id number primary key,‎
item_name varchar2(20) not null,‎
unit_price number not null,‎
measure_unit varchar2(10)‎
‎);‎

6-  إنشاء جدول pbills

1
2
3
4
5
6
create table pbills‏)‏
pbill_id number primary key‏,‏
pbill_type varchar2(10) not null‏,‏
supplier_discount number‏,‏
pbill_date number not null‏,‏
notes varchar2(50));‎

7-  إنشاء جدول sbills

1
2
3
4
5
6
7
8
9
create table sbills
‎(‎
sbill_id number primary key,‎
sbill_type varchar2(10) not null,‎
sbill_date number not null,‎
discount number,‎
customer_id number references customers(customer_id) on delete cascade, 
salesman_id number references salesmen(salesman_id) on delete cascade,‎
notes varchar2(50));‎

8-  إنشاء جدول Purchases

1
2
3
4
5
6
7
create table purchases
‎(‎
purchase_id number primary key,‎
qty  number not null,‎
pbill_id number references pbills(pbill_id) on delete cascade, 
item_id number references items(item_id) on delete cascade
‎);‎

9-  إنشاء جدول Sales

1
2
3
4
5
6
7
create table sales
‎(‎
sale_id number primary key,‎
qty number not null,‎
sbill_id number references sbills(sbill_id) on delete cascade, 
item_id number references items(item_id) on delete cascade
‎);‎

10-                إنشاء جدول pull

1
2
3
4
5
create table pull
‎( 
item_id number references items(item_id) on delete cascade,‎
stock_id number references stocks(stock_id) on delete cascade,‎
constraint pk primary key(item_id,stock_id));‎

11-                إنشاء جدول marketing

1
2
3
4
5
6
create table marketing
‎( 
item_id number references items(item_id) on delete cascade,‎
salesman_id number references salesmen(salesman_id) on delete cascade,‎
constraint pk1 primary key(item_id,salesman_id)‎
‎);‎

12-                إنشاء جدول store

1
2
3
4
5
6
create table store
‎( 
stock_id number references stocks(stock_id) on delete cascade,‎
purchase_id number references purchases(purchase_id) on delete cascade,‎
constraint pk2 primary key(stock_id,purchase_id)‎
‎);‎

13-                إنشاء جدول supply

1
2
3
4
5
6
create table supply
‎( 
supplier_id number references suppliers(supplier_id) on delete cascade,‎
purchase_id number references purchases(purchase_id) on delete cascade,‎
constraint pk3 primary key(supplier_id,purchase_id)‎
‎);‎

14-                إنشاء جدول Sphones

1
2
3
4
5
6
create table sphones
‎( 
supplier_id number references suppliers(supplier_id) on delete cascade,‎
supplier_phone number not null,‎
constraint pk4 primary key(supplier_id,supplier_phone)‎
‎);‎

15-                إنشاء جدول  Sdphones

1
2
3
4
5
6
create table sdphones
‎( 
salesman_id number references salesmen(salesman_id) on delete cascade,‎
salesman_phone number not null,‎
constraint pk5 primary key(salesman_id,salesman_phone)‎
‎);‎



الخطوة الخامسة : تمثيل قواميس الجداول في قاعدة البيانات لنظام المبيعات

 

customers

 

Number

Name

description

Type

Type of constraint

use

1-    

CUSTOMER_ID

رقم العميل

Number(3)

PRIMARY KEY

customers,

sbills

2-    

CUSTOMER_NAME

اسم العميل

Varchar2(30)

 

customers

3-    

CITY_ADD

العنوان المدينة

Varchar2

 

customers

4-    

STREET_ADD

العنوان الشارع

Varchar2

 

customers

5-    


PHONE_NO

رقم هاتف العميل

Number

Not Null

customers

6-    

WEP_SITE

موقع انترنت

Varchar2

 

customers

7-    

EMAIL

الايميل

Varchar2

 

customers

 

 

Salesmen

 

Number

Name

Description

Type

Type of constraint

Use

1-    

SALESMAN_ID

رقم البائع

Number

Primary Key

Salesmen,

Sphones,

marketing,

sbills

 

2-    

SALESMAN_NAME

اسم البائع

Varchar2

Not Null

Salesmen

3-    

CAR_WORK_HOUR

عدد ساعات استخدام السيارة

Number

 

Salesmen

 

 

 


SUPPLIERS

 

Number

Name

Description

Type

Type of constraint

Use

1-    

SUPPLIER_ID

رقم المورد

Number

Primary Key

Suppliers,

Supply,

Sphones

2-    

SUPPLIER_NAME

اسم المورد

Varchar2

Not Null

Suppliers

3-    

CITY_ADD

العنوان مدينة

Varchar2

 

Suppliers

4-    

STREET_ADD

العنوان شارع

Varchar2

 

Suppliers

5-    

WEP_SITE

موفع انترنت

Varchar2

 

Suppliers

6-    

EMAIL

الايميل

Varchar2

 

Suppliers

 

 

 


Stocks

 

Number

Name

Description

Type

Type of constraint

Use

1-    

STOCK_ID

رقم المخزن

Number

Primary Key

Stocks,

Pull, store

2-    

STOCK_ADD

عنوان المخزن

Varchar2

 

Stocks

 


Items

 

Number

Name

Description

Type

Type of constraint

Use

1-    

ITEM_ID

رقم الصنف

Number

Primary Key

Items,

Pull,

Sales,

Marketing,

purchases

2-    

ITEM_NAME

اسم الصنف

Varchar2

Not Null

Items

3-    

UNIT_PRICE

سعر الوحدة

Number

Not Null

Items

4-    

MEASURE_UNIT

وحدة القياس

Varchar2

 

Items

  

Pbills

 

Number

Name

Description

Type

Type of constraint

Use

1-    

PBILL_ID

رقم فاتورة المشتريات

Number

Primary Key

Pbills,

purchases

2-    

PBILL_TYPE

نوع الفاتورة

Varchar2

Not Null

Pbills

3-    

SUPPLIER_DISCOUNT

خصم المورد

Number

 

Pbills

4-    

PBILL_DATE

تاريخ الفاتورة

Number

Not Null

Pbills

5-    

NOTES

ملاحظات

Varchar2

 

Pbills

 

SBILLS

 



Number

Name

Description

Type

Type of constraint

Use

1-    

SBILL_ID

رقم فاتورة المبيعات

NUMBER

Primary key

Sbills,

Sales,

2-    

SBILL_TYPE

نوع الفاتورة

VARCHAR2

 

Sbills

3-    

SBILL_DATE

تاريخ الفاتورة

DATE

 

Sbills

4-    

DISCOUNT

الخصم

NUMBER

 

Sbills

5-    

CUSTOMER_ID

رقم العميل

NUMBER

FOREIGN KEY

Sbills,

Customers

6-    

SALESMAN_ID

رقم المندوب

NUMBER

FOREIGN KEY

Sbills, Salesmen,

Sphones,

marketing,

7-    

NOTES

ملاحظات

VARCHAR2

 

Sbills

 

 


PURCHASES

 

Number

Name

Description

Type

Type of constraint

Use

1-    

PURCHASE_ID

رقم عملية الشراء

NUMBER

PRIMARY KEY

Purchases,

Store,

supply

 

2-    

QTY

الكمية

NUMBER

 

Purchases

3-    

PBILL_ID

رقم الفاتورة

NUMBER

FOREIGN KEY

Purchases,

Pbills

4-    

ITEM_ID

رقم الصنف

NUMBER

FOREIGN KEY

Purchases,

items

 

 

 


SALES

 

Number

Name

Description

Type

Type of constraint

Use

1-    

SALE_ID

رقم عملية البيع

Number

PRIMARY KEY

Sales

2-    

QTY

الكمية

Number

 

Sales

3-    

SBILL_ID

رقم فاتورة الشراء

Number

FOREIGN KEY.

Sales,

Sbills

4-    

ITEM_ID

رقم الصنف

Number

FOREIGN KEY

Sales,

Items

 

 

 


PULL

 

Number

Name

Description

Type

Type of constraint

Use

1-    

ITEM_ID

رقم الصنف

NUMBER

FOREIGN KEY

Items,

Pull,

Sales,

Marketing,

purchases

2-    

STOCK_ID

رقم المخزن

NUMBER

FOREIGN KEY

Stocks,

Pull, store

 

 

 


MARKETING

 

Number

Name

Description

Type

Type of constraint

Use

1-    

ITEM_ID

رقم الصنف

NUMBER

FOREIGN KEY

Items,

Pull,

Sales,

Marketing,

purchases

 

2-    

SALESMAN_ID

رقم مندوب المبيعات

NUMBER

FOREIGN KEY

Salesmen,

Sphones,

marketing,

sbills

 

 


STORE

 

Number

Name

Description

Type

Type of constraint

Use

1-    

STOCK_ID

رقم المخزن

NUMBER

FOREIGN KEY

Stocks,

Pull, store

2-    

PURCHACE_ID

رقم عملية الشراء

NUMBER

FOREIGN KEY

Purchases,

Store,

supply

 

 

 

SUPPLY

 

Number

Name

description

Type

Type of constraint

Use

1-    

SUPPLIER_ID

رقم المورد

Number

FOREIGN KEY

Suppliers,

Supply,

Sphones

2-    

PURCHASE_ID

رقم عملية الشراء

Number

FOREIGN KEY

Purchases,

Store,

supply

 

 

 


SDPHONES

 

Number

Name

Description

Type

Type of constraint

Use

1-    

SALESMAN_ID

رقم المندوب

Number

FOREIGN KEY

Salesmen,

Sphones,

marketing,

sbills

2-    

SALESMAN_PHONE

هاتف المورد

Number

Primary KEY

Sdphones.

 

 


SPHONES

 

Number

Name

description

Type

Type of constraint

Use

1-    

SUPPLIER_ID

رقم المورد

Number

FOREIGN KEY

Suppliers,

Supply,

Sphones

2-    

SUPPLIER_PHONE

هاتف المورد

Number

PRIMARY  KEY

Sphones

 


الى هنا نكون قد انتهينا من تخطيط وتصميم وتنفيذ مشروع مشروع نظام مبيعات متكامل قاعدة البيانات 

 

تعليقات

تعليقان (2)
إرسال تعليق
  1. الردود
    1. لا يوجد تصميم نوافذ اخي الكريم هذا مجرد المخطط و الجداول

      حذف

إرسال تعليق

البحث في هذه المدونة الإلكترونية

جدول المحتويات