Upload
safiya-najeh
View
1.637
Download
12
Embed Size (px)
DESCRIPTION
تحليل نظام البيع في شركة الخندقاوي التجاريه من وجهة نظر قواعد البيانات
Citation preview
1
ا ا ا
جامعة النيلين
كلية علوم الحاسوب وتقانة المعلومات
ماجستير تقانة المعلومات
المجموعة الثانية
روع واد ات
روي ادا ر راءم اظ
اد اإ :
صفيه ناجح نوري البدري
إاف :
دكتور طارق
2
أهمية تصميم قواعد البيانات :
إن عملية بناء قاعدة بيانات جيده ال يأيت بتلك السهولة ، إذ البد من بذل
والتصميم اجليد لقاعدة البيانات جهد كبري للحصول على قاعدة بيانات جيده .
التصميم السيء فسيؤدي إىل تكرار يسهل عملية إستخدام وإدارة هذه القاعده ، أما
على توافقية البيانات وعادة ما يؤدي تكرار البيانات وبالتايل تصعب عملية احلفاظ
ره البيانات إىل نتائج غري صحيحة عند طلب تلك البيانات من تلك القاعدة وهذه بدو
يؤدي إىل أن أي قرارات إدارية وكذلك أي ختطيط مستقبلي سيكون خاطئا إلعتماده
على معلومات غري صحيحة .
: Database Life Cycle (DBLC)دورة حياة قاعدة البيانات
إن عملية تطوير قاعدة البيانات متر مبجموعة من املراحل ، هذه املراحل املتتالية
تسمى بدورة حياة قاعدة البيانات ، وهذ املراحل أو دورة احلياة متر بصورة متزامنة
املعلومات . نظامحياة ضمن مراحل دورة
تتكون دورة حياة قاعدة البيانات من المراحل التالية :
وهي مرحلة فات والمتطلبات الخاصة بقاعدة البيانات : تحديد المواص -١
جزئية ضمن مجع مواصفات ومتطلبات نظام املعلومات يف مرحلة التحليل .
3
: Conceptual Databaseإعداد قاعدة البيانات األولية -٢
كينونة -وفيها يتم تصميم منوذج أويل للبيانات بواسطة خمططات عالقة
(ER-D) .
حتويل : Logical Databaseتصميم قاعدة البيانات المنطقية -٣
، إىل خمطط اإلسكيما (ER-D)قاعدة البيانات األولية ، أو خمطط
)Database Schema وذلك بإتباع قواعد التحويل ، (Mapping
Rules .
وذلك بتطبيق قواعد التطبيع تحسين قاعدة البيانات المنطقية : -٤
Normalization � دف إىل تقليل تكرارية البيانات ، من أجل اليت
رفع كفاءة قاعدة البيانات ما أمكن .
ويف هذه : Physical Databaseتنفيذ قاعدة البيانات الفيزيائية -٥
، وحيدد فيها بنية SQLبلغة املرحلة يتم كتابة أكواد إنشاء قاعدة البيانات
اجلداول ونوع بيانات احلقول واملفاتيح األساسية واألجنبية وباقي شروط
تصميم قاعدة البيانات ، مث تنفيذ ذلك ضمن نظام إدارة قاعدة البيانات
, Oracle , Access , Sqlserver، مثل ( DBMSمناسب
Mysql … etc. (
سابقة ، جند أن مرحلة التصميم تبدأ وإعتمادا على دورة حياة قاعدة البيانات ال
باملرحلة الثالثة من دورة حياة قاعدة البيانات .
4
عن الشركه : تعريفيةنبذه
تعترب شركة اخلندقاوي التجارية احملدودة إحدى كربيات الشركات السودانية
العامله يف جمال إسترياد وجتارة الوابورات الزراعية وطواحني الغالل واملولدات
الكهربائية ومعاصر الزيوت وعدات الورش واإلسبريات .
اليابان) وهي وكيال –اهلند –تقوم الشركه بإسترياد هذه اآلليات من (الصني
حصريا للعديد من املاركات التجارية ذات الشهرة الواسعه يف األسواق السودانية .
ذلك لتسهيل وصول تنتشر فروع الشركة يف واليات السودان األخرى و
خدمات الشركة وسلعها إىل يد املستهلك بسهولة ويسر .
جنوب مسجد فاروق، –شارع اجلمهورية –املركز الرئيسي للشركة يف اخلرطوم
وهلا العديد من الفروع يف أمدرمان ، الدامر ، شندي ، ربك ، األبيض ، نياال ،
املناقل ، القضارف .
أنشطتها :
يف جمال إسترياد وجتارة الوابورات الزراعية وطواحني الغالل تعمل الشركة -١
واملولدات الكهربائية ومعاصر الزيوت وعدات الورش واإلسبريات .
تقوم الشركة بإسترياد طلمبات املياه الزراعية من الصني واهلند . -٢
متتلك الشركة مصنع إلنتاج حجارة الطواحني ماركة أبوجا موسى -٣
. السودانية املعروفه
5
تعمل الشركه يف بضائع أخرى ذات إستخدامات حيوية يف احلياة اليومية. -٤
: أهدافها
تسهيل وصول السلعة إىل يد املستهلك بسهولة ويسر . -١
تلبية خدمات زبائنها بصورة سريعة . -٢
فتح فروع للشركة يف واليات السودان �دف تقدمي أفضل اخلدمات لكل -٣
عمالئها أين ماكانو .
6
وصف النظام :
: نظام البيع في المعارض
يقوم العميل أو الزبون بتحديد اإلضافه اليت حيتاج إليها ملوظف -١
املبيعات.
دفع قيمة اإلضافة اليت مت حتديدها وإستالم إيصال نقدي (فاتورة البيع). -٢
دفع املبلغ باخلزينه وإستالم نسخة من اإليصال والرجوع إىل موظف -٣
املبيعات .
موظف املبيعات بالتحقق من توقيع أمني اخلزينه . يقوم -٤
إستخراج إذن تسليم البضاعة من املخزن (صرفه) . -٥
إستالم البضاعة من املخزن . -٦
نظام دخول البضاعة إلى المخازن :
يستلم أمني املخزن بولستة الشحن به تفاصيل البضاعة . -١
لف توزيع البضائع داخل املخزن حسب احلجم والنوعيه ومراعاة ت -٢
البضاعه إذا كانت البضاعة قابلة للتلف بفعل العوامل املناخيه (حراره
الشمس ، أمطار وغريها ) .
يقوم أمني املخزن بتدوين اإلضافة بدفرت يسمى (بدفرت حركة املخزن) . -٣
التوقيع على اإلضافة اليت مت إستالمها يف بولستة الشحن . -٤
7
: )تحليل المتطلباتالبيانات (تحديد المواصفات والمتطلبات الخاصة بقاعدة
وهى مرحلة جزئية ضمن مجع مواصفات ومتطلبات نظام املعلومات
: تحليل األجهزة -١
تالثة وتكون باملواصفات التالية: clientالطرفيات
HP DX 2200 نوع اجلهاز
Intel Processor Core i3 , ٦ GHz : املعاجل
RAM ٣GB الذاكرة الرئيسية :
HDD 350 GB القرص الصلب:
DVD:RM:52 مشغل اإلقراص الصلبة:
MONITOR17" LCD الشاشة :
8
تحليل البرمجيات: -٢
-الربجميات املقرتحة هي:
علي مستوي اجلهاز windows server2003نظام التشغيل يكون -
يكون client إما علي مستوي االجهزه الطرفية serverالرئيسي املخدم
windows xp .
oracleنظام إدارة قواعد البيانات املستخدم يف معاجلة البيانات وختزينها هو -
10g.
تحليل الشبكات: -٣
. twisted pairشبكة حملية جنمية توصل بكابالت من النوع -
لربط األجهزة مع بعضها البعض. switchجهاز -
9
Conceptual Databaseإعداد قاعدة البيانات األولية
الموظف
یستلمصرفھ(إذن
تسلیم)
یستخرج
العمیل
یطلب
(یحدد
اإلضافھ
یستلم
یدفع
المبلغ
الخزینھ
یتأكد
من
یستلم
ویوقع
بولستة الشحن
(األصناف)
تخزن
المخزن
یستلم
المستلم
المورد
یورد
فاتورة المبیعات
1
1
M
M
M
1
M
1
1 1
1 1
M
1 1
MM
MM
10
Logical Databaseتصميم قاعدة البيانات المنطقية
Emp
Emp_id
Emp_name
Emp_address
Emp_phone
Emp_job
customer
customer_id
customer_name
customer_phone
customer_address
Company
Company_id
Company_name
Company_email
Company _Country
Item
Item_id
Item_name
Item_type_id
Company_id
Item_price
Item_max
Item_min
Stock
Incoming
Incoming_id
Item_type_id
Item_id
Incoming_detail_unit
Incoming_detail_qty
Incoming_detail_total
Incoming_detail_note
Supplier_id
receives
received_id
received_name
outgoing
outgoing_id
Item_type_id
Item_id
outgoing _detail_unit
outgoing _detail_qty
outgoing_detail_total
outgoing _detail_note
received_id
Stock
Stock_id
Stock_name
Emp_id
Invoices
Invoices _id
Item_type_id
Item_id
Invoices _detail_qty
Item_price
Incoming_detail_total
Incoming_detail_note
Customer_id
Supplier
Supplier_id
Supplier_name
Supplier_phone
Supplier_email
Supplier_address
11
(مراجعة النموذج Normalizationتحسين قاعدة البيانات المنطقية
المنطقي) :
يوجد تكرار يف هذه البيانات وكذلك بعض اجلداول غري مربوطه مع بقية اجلداول فيتم
على هذا املخطط ليكون مرتابط ومتكامل normalizationتطبيق قواعد ال
والتغيري يكون كالتايل :واليوجد به تكرار ،
Emp
Emp_id
Emp_name
Emp_address
Emp_phone
Job_id
job
job_id
job_name
Country
Country_id
Country_name
Company
Company_id
Company_name
Company_email
Country_id
Outgoing
Outgoing_id
Outgoing_date
Received_id
outgoing_detail
outgoing_id
Item_type_id
Item_id
outgoing _detail_unit
outgoing _detail_qty
outgoing_detail_total
outgoing _detail_note
12
Incoming
Incoming_id
Buy_no
Incoming_date
Supplier_id
Stock_id
Incoming_detail
Incoming_id
Item_type_id
Item_id
Incoming_detail_unit
Incoming_detail_qty
Incoming_detail_total
Incoming_detail_note
Invoices
Invoices_id
Invoices_date
Customer_id
Invoices_detail
Invoices _id
Item_type_id
Item_id
Invoices _detail_qty
Item_price
Incoming_detail_total
Incoming_detail_note
Item_type
Item_type_id
Item_type_name
Item
Item_id
Item_name
Item_type_id
Company_id
Item_price
Item_max
Item_min
Stock_id
13
Logical Databaseتصميم قاعدة البيانات المنطقية (بعد التعديل)
Emp
Emp_id
Emp_name
Emp_address
Emp_phone
Job_id
job
job_id
job_name
customer
customer_id
customer_name
customer_phone
customer_address
Country
Country_id
Country_name
Company
Company_id
Company_name
Company_email
Country_id
Item_type
Item_type_id
Item_type_name
Item
Item_id
Item_name
Item_type_id
Company_id
Item_price
Item_max
Item_min
Stock_id
Incoming
Incoming_id
Buy_no
Incoming_date
Supplier_id
Stock_id
Incoming_detail
Incoming_id
Item_type_id
Item_id
Incoming_detail_unit
Incoming_detail_qty
Incoming_detail_total
Incoming_detail_note
receives
received_id
received_name
Outgoing
Outgoing_id
Outgoing_date
Received_id
outgoing_detail
outgoing_id
Item_type_id
Item_id
outgoing _detail_unit
outgoing _detail_qty
outgoing_detail_total
outgoing _detail_note
Stock
Stock_id
Stock_name
Emp_id
Invoices
Invoices_id
Invoices_date
Customer_id Invoices_detail
Invoices _id
Item_type_id
Item_id
Invoices _detail_qty
Item_price
Incoming_detail_total
Incoming_detail_note
Supplier
Supplier_id
Supplier_name
Supplier_phone
Supplier_email
Supplier_address
14
Physical Databaseتنفيذ قاعدة البيانات الفيزيائية
jobجدول الوظيفه -١
الخصائص نوع البیانات حجم الحقل اإلسم البرمجي اسم الحقل
VARCHAR2 PK ١٠ Job_id رقم الوظیفة
-- VARCHAR2 ٣٠ Job_name إسم الوظیفة
empجدول الموظف -٢
الخصائص نوع البیانات حجم الحقل اإلسم البرمجي اسم الحقل
VARCHAR2 PK ١٠ Emp_id رقم الموظف
-- VARCHAR2 ٣٠ Emp_name إسم الموظف
-- VARCHAR2 ٣٠ Emp_address العنوان
-- VARCHAR2 ١٤ Emp_phone الهاتف
VARCHAR2 FK ١٠ Job_id رقم الوظیفة
customerجدول العميل -٣
الخصائص نوع البیانات حجم الحقل اإلسم البرمجي اسم الحقل
VARCHAR2 PK ١٠ Customer_id رقم العمیل
-- VARCHAR2 ٣٠ Customer_name إسم العمیل
-- VARCHAR2 ١٤ Customer_phone الهاتف
-- VARCHAR2 ٣٠ Customer_address العنوان
countryجدول البلد -٤
الخصائص نوع البیانات حجم الحقل اإلسم البرمجي اسم الحقل
VARCHAR2 PK ١٠ Country_id رقم البلد
15
-- VARCHAR2 ٣٠ Country_name إسم البلد
companyجدول الشركه المصنعه -٥
البرمجياإلسم اسم الحقل الخصائص نوع البیانات حجم الحقل
VARCHAR2 PK ١٠ Company_id رقم الشركه
-- VARCHAR2 ٣٠ Company_name إسم الشركه
-- VARCHAR2 ٣٠ Company_email البرید اإللكتروني
VARCHAR2 FK ١٠ Country_id البلد
item_typeجدول أنواع األصناف -٦
الحقل حجم اإلسم البرمجي اسم الحقل الخصائص نوع البیانات
VARCHAR2 PK ١٠ Item_type_id رقم نوع الصنف
-- VARCHAR2 ٣٠ Item_type_name إسم نوع الصنف
item جدول األصناف -٧
الخصائص نوع البیانات حجم الحقل اإلسم البرمجي اسم الحقل
VARCHAR2 PK ١٠ Item_id رقم الصنف
-- VARCHAR2 ٣٠ Item_name إسم الصنف
VARCHAR2 FK ١٠ Item_type_id رقم نوع الصنف
VARCHAR2 FK ١٠ Company_id رقم الشركه المصنعه
-- VARCHAR2 ١٠ Item_price السعر
-- VARCHAR2 ١٠ Item_max الحد األعلى
-- VARCHAR2 ١٠ Item_min الحد األدنى
VARCHAR2 FK ١٠ Stock_id رقم المخزن
16
incomingجدول مستند اإلدخال -٨
الخصائص نوع البیانات حجم الحقل اإلسم البرمجي اسم الحقل
VARCHAR2 PK ١٠ Incoming_id رقم مستند اإلدخال
-- VARCHAR2 ١٠ Buy_no رقم الشراء
-- Incoming_date -- VARCHAR2 تاریخ اإلدخال
VARCHAR2 FK ١٠ Supplier_id رقم المورد
VARCHAR2 FK ١٠ Stock_id المخزنرقم
incoming_detailجدول المواد المدخله في مستند اإلدخال -٩
الخصائص نوع البیانات حجم الحقل اإلسم البرمجي اسم الحقل
VARCHAR2 FK ١٠ Incoming_id رقم مستند اإلدخال
VARCHAR2 FK ١٠ Item_type_id رقم نوع الصنف
VARCHAR2 FK ١٠ Item_id رقم الصنف
-- VARCHAR2 ٣٠ Incoming_detail_unit الوحده
-- VARCHAR2 ١٠ Incoming_detail_qty الكمیه المدخله
-- VARCHAR2 ١٠ Incoming_detail_total اإلجمالي
-- VARCHAR2 ٥٠ Incoming_detail_note مالحظات
receivesجدول المستلمين - ١٠
الحقلحجم اإلسم البرمجي اسم الحقل الخصائص نوع البیانات
VARCHAR2 PK ١٠ Received_id رقم المستلم
-- VARCHAR2 ٣٠ Received_name إسم المستلم
17
outgoingجدوإل مستند اإلخراج - ١١
الخصائص نوع البیانات حجم الحقل اإلسم البرمجي اسم الحقل
VARCHAR2 PK ١٠ Outgoing_id رقم سند اإلخراج
-- Outgoing_date -- VARCHAR2 تاریخ اإلخراج
VARCHAR2 FK ١٠ Received_id رقم المستلم
outgoing_detailجدول البيانات المدخله في مستند اإلخراج - ١٢
الخصائص نوع البیانات حجم الحقل اإلسم البرمجي اسم الحقل
VARCHAR2 FK ١٠ Outgoing_id رقم سند اإلخراج
VARCHAR2 FK ١٠ Item_type_id رقم نوع الصنف
VARCHAR2 FK ١٠ Item_id رقم الصنف
-- VARCHAR2 ٣٠ Outgoing__detail_unit الوحده
-- VARCHAR2 ١٠ Outgoing__detail_qty الكمیه
-- VARCHAR2 ١٠ Outgoing__detail_total اإلجمالي
-- VARCHAR2 ٥٠ Outgoing__detail_note مالحظات
stockجدول المخزن - ١٣
الحقلاسم الخصائص نوع البیانات حجم الحقل اإلسم البرمجي
VARCHAR2 PK ١٠ Stock_id رقم المخزن
-- VARCHAR2 ٣٠ Stock_name إسم المخزن
VARCHAR2 FK ١٠ Emp_id رقم الموظف
18
invoicesجدول فاتورة البيع - ١٤
الخصائص نوع البیانات حجم الحقل اإلسم البرمجي اسم الحقل
VARCHAR2 PK ١٠ Invoices_id البیع رقم فاتورة
-- Invoices_date -- VARCHAR2 تاریخ فاتورة البیع
VARCHAR2 FK ١٠ Customer_id رقم العمیل الصادرة له
invoice_detailجدول المواد الصادرة في فاتورة البيع - ١٥
الخصائص نوع البیانات حجم الحقل اإلسم البرمجي اسم الحقل
VARCHAR2 FK ١٠ Invoice_id البیعرقم فاتورة
VARCHAR2 FK ١٠ Item_type_id رقم نوع الصنف
VARCHAR2 FK ١٠ Item_id رقم الصنف
-- VARCHAR2 ١٠ Invoice_detail_qty الكمیه
VARCHAR2 FK ١٠ Item_price السعر
-- VARCHAR2 ١٠ Invoice_detail_total اإلجمالي
-- VARCHAR2 ٥٠ Invoice_detail_note مالحظات
supplierجدول الموردين - ١٦
الخصائص نوع البیانات حجم الحقل اإلسم البرمجي اسم الحقل
VARCHAR2 PK ١٠ Supplier_id رقم المورد
-- VARCHAR2 ٣٠ Supplier_name إسم المورد
-- VARCHAR2 ١٤ Supplier_phone رقم الهاتف
-- VARCHAR2 ٣٠ Supplier_email البرید اإللكتروني
-- VARCHAR2 ٣٠ Supplier_address العنوان
19
Pyجدول الخزينه - ١٧
الخصائص نوع البیانات حجم الحقل اإلسم البرمجي اسم الحقل
VARCHAR2 PK ١٠ Py_Id رقم الخزینة
-- VARCHAR2 ١٠ Py_Type نوع الدفع
-- NUMBER ١٠ Paid المبلغ المدفوع
VARCHAR2 FK ١٠ Invoices_id فاتورة البیع
VARCHAR2 FK ١٠ Customer_id العمیل
VARCHAR2 FK ١٠ Emp_id الموظف
20
SQL Code (Create Tables) : CREATE TABLE job (job_id VARCHAR2(10) NOT NULL, job_name VARCHAR2(30), ADD CONSTRAINT job_id_pk PRIMARY KEY (job_id));
CREATE TABLE emp (emp_id VARCHAR2(10) NOT NULL, emp_name VARCHAR2(30), emp_address VARCHAR2(30), emp_phone VARCHAR2(14), job_id VARCHAR2(10), ADD CONSTRAINT emp_id_pk PRIMARY KEY (emp_id), ADD CONSTRAINT emp_job_id_fk FOREIGN KEY (job_id) REFERENCES job (job_id) ON DELETE CASCADE);
CREATE TABLE customer (customer_id VARCHAR2(10) NOT NULL, customer_name VARCHAR2(30), customer_phone VARCHAR2(14), customer_address VARCHAR2(30), ADD CONSTRAINT customer_id_pk PRIMARY KEY (customer_id));
CREATE TABLE country (country_id VARCHAR2(10) NOT NULL, country_name VARCHAR2(30), ADD CONSTRAINT country_id_pk PRIMARY KEY (country_id));
CREATE TABLE company (company_id VARCHAR2(10) NOT NULL, company_name VARCHAR2(30), company_email VARCHAR2(30), country_id VARCHAR2(10), ADD CONSTRAINT company_id_pk PRIMARY KEY (company_id),
21
ADD CONSTRAINT company_country_id_fk FOREIGN KEY (country_id) REFERENCES country (country_id) ON DELETE CASCADE);
CREATE TABLE item_type (item_type_id VARCHAR2(10) NOT NULL, item_type_name VARCHAR2(30), ADD CONSTRAINT item_type_id_pk PRIMARY KEY (item_type_id));
CREATE TABLE item (item_id VARCHAR2(10) NOT NULL, item_name VARCHAR2(30), item_type_id VARCHAR2(10), company_id VARCHAR2(10), item_price VARCHAR2(10), item_max VARCHAR2(10), item_min VARCHAR2(10), stock_id VARCHAR2(10), ADD CONSTRAINT item_id_pk PRIMARY KEY (item_id), ADD CONSTRAINT item_item_type_id_fk FOREIGN KEY (item_type_id) REFERENCES item_type (item_type_id) ON DELETE CASCADE, ADD CONSTRAINT item_company_id_fk FOREIGN KEY (company_id) REFERENCES company (company_id) ON DELETE CASCADE, ADD CONSTRAINT item_stock_id_fk FOREIGN KEY (stock_id) REFERENCES stock (stock_id) ON DELETE CASCADE);
CREATE TABLE incoming (incoming_id VARCHAR2(10) NOT NULL, buy_no VARCHAR2(10), incoming_date DATE, supplier_id VARCHAR2(10), stock_id VARCHAR2(10) ADD CONSTRAINT incoming_id_pk PRIMARY KEY (incoming_id), ADD CONSTRAINT incoming_supplier_id_fk FOREIGN KEY (supplier_id) REFERENCES supplier (supplier_id) ON DELETE CASCADE, ADD CONSTRAINT incoming_stock_id_fk FOREIGN KEY (stock_id)
22
REFERENCES stock (stock_id) ON DELETE CASCADE);
CREATE TABLE incoming_detail (incoming_id VARCHAR2(10), item_type_id VARCHAR2(10), item_id VARCHAR2(10), incoming_detail_unit VARCHAR2(30), incoming_detail_qty VARCHAR2(10), incoming_detail_total VARCHAR2(10), incoming_detail_note VARCHAR2(50), ADD CONSTRAINT incoming_detail_incoming_id_fk FOREIGN KEY (incoming_id) REFERENCES incoming (incoming_id) ON DELETE CASCADE, ADD CONSTRAINT incomin_detail_item_type_id_fk FOREIGN KEY (item_type_id) REFERENCES item_type (item_type_id) ON DELETE CASCADE, ADD CONSTRAINT incoming_detail_item_id_fk FOREIGN KEY (item_id) REFERENCES item (item_id) ON DELETE CASCADE);
CREATE TABLE receives (received_id VARCHAR2(10) NOT NULL, received_name VARCHAR2(30), ADD CONSTRAINT receives_id_pk PRIMARY KEY (received_id));
CREATE TABLE outgoing (outgoing_id VARCHAR2(10) NOT NULL, outgoing_date DATE, received_id VARCHAR2(10), ADD CONSTRAINT outgoing_id_pk PRIMARY KEY (outgoing_id), ADD CONSTRAINT outgoing_received_id_fk FOREIGN KEY (received_id) REFERENCES receives (received_id) ON DELETE CASCADE);
23
CREATE TABLE outgoing_detail (outgoing_id VARCHAR2(10), item_type_id VARCHAR2(10), item_id VARCHAR2(10), outgoing__detail_unit VARCHAR2(30), outgoing__detail_qty VARCHAR2(10), outgoing__detail_total VARCHAR2(10), outgoing__detail_note VARCHAR2(50), ADD CONSTRAINT outgoing_detail_outgoing_id_fk FOREIGN KEY (outgoing_id) REFERENCES outgoing (outgoing_id) ON DELETE CASCADE, ADD CONSTRAINT outgoin_detail_item_type_id_fk FOREIGN KEY (item_type_id) REFERENCES item_type (item_type_id) ON DELETE CASCADE, ADD CONSTRAINT outgoing_detail_item_id_fk FOREIGN KEY (item_id) REFERENCES item (item_id) ON DELETE CASCADE);
CREATE TABLE stock (stock_id VARCHAR2(10) NOT NULL, stock_name VARCHAR2(30), emp_id VARCHAR2(10), ADD CONSTRAINT stock_id_pk PRIMARY KEY (stock_id), ADD CONSTRAINT stock_emp_id_fk FOREIGN KEY (emp_id) REFERENCES emp (emp_id) ON DELETE CASCADE);
CREATE TABLE invoices (invoices_id VARCHAR2(10) NOT NULL, invoices_date DATE, customer_id VARCHAR2(10), ADD CONSTRAINT invoices_id_pk PRIMARY KEY (invoices_id), ADD CONSTRAINT invoices_customer_id_fk FOREIGN KEY (customer_id) REFERENCES customer (customer_id) ON DELETE CASCADE);
24
CREATE TABLE invoice_detail (invoice_id VARCHAR2(10), item_type_id VARCHAR2(10), item_id VARCHAR2(10), invoice_detail_qty VARCHAR2(10), item_price VARCHAR2(10), invoice_detail_total VARCHAR2(10), invoice_detail_note VARCHAR2(50), ADD CONSTRAINT invoice_detail_invoice_id_fk FOREIGN KEY (invoice_id) REFERENCES invoices (invoices_id) ON DELETE CASCADE, ADD CONSTRAINT invoice_detail_item_type_id_fk FOREIGN KEY (item_type_id) REFERENCES item_type (item_type_id) ON DELETE CASCADE, ADD CONSTRAINT invoice_detail_item_id_fk FOREIGN KEY (item_id) REFERENCES item (item_id) ON DELETE CASCADE, ADD CONSTRAINT invoice_detail_item_price_fk FOREIGN KEY (item_price) REFERENCES item (item_id) ON DELETE CASCADE);
CREATE TABLE supplier (supplier_id VARCHAR2(10) NOT NULL, supplier_name VARCHAR2(30), supplier_phone VARCHAR2(14), supplier_email VARCHAR2(30), supplier_address VARCHAR2(30), ADD CONSTRAINT supplier_id_pk PRIMARY KEY (supplier_id));
25
اإلستعالمات التي تلبي المتطلبات (التقارير) :
تقرير بفواتري البيع بتاريخ معني .١
Select *
From invouces
Where invouces_date='10-10-2012';
تقرير بفواتري البيع يف مدة زمنيه حمدده . .٢
Select *
From invouces
Where invouces_date between '1-10-2012' and
'1-10-2013';
تقرير بعدد فواتري املبيعات يف فرتة حمدده . .٣
Select count(*)
From invouces
Where invouces_date between '1-10-2012' and
26
'1-10-2013';
تقرير بفواتري البيع لعميل معني . .٤
Select customer_id, invouces_id, invouces_date
From invouces,customer
Where customer.customer_id =
invouces.customer_id;
. بلد املنشأو تقرير باألصناف اليت تستوردها الشركه والشركات املصنعه هلا .٥
Select item_id,company_id,country_id
From item,company,country
Where (item.company_id = company. company_id)
and (company. country_id= country. country_id);
أنواع األصناف اليت تستوردها الشركه .بتقرير .٦
Select item_type_id
From item_type;
27
تقرير باحلد األعلى واحلد األدىن لكل صنف . .٧
Select item_ name,item_max,item_min
From item;
باألصناف اليت وصلت للحد األدىن (األصناف اليت جيب الشراء منها) .تقرير .٨
Select item_ id, item_min
From item;
تقرير باألصناف حسب نوع معني . .٩
Select item_type_id,item_id
From item,item_type
Where item. item_type_id = item_type.
item_type_id
Group by item_type_name;
28
تقرير باألصناف اليت مت بيعها بتاريخ معني . .١٠
Select item_id,
From item
Where item_type_id ='1';
. حسب املخزن املوجوده فيهتقرير باألصناف املتوفره باملخزن .١١
Select item_id ,stock_id
From item,stock
Where (item. stock_id = stock. stock_id)
Group by stock_id;
تقرير بأحدث وأقدم فاتورة بيع . .١٢
SELECT MAX(invoices_date), MIN(invoices_date)
FROM invoices;
تقرير بكل املوظفني الذين يعملون يف الشركه . .١٣
29
SELECT emp_id,emp_name
FROM emp;
تقرير باملوردين الذين تتعامل معهم الشركه . .١٤
SELECT supplier_id, supplier_name
FROM supplier;
تقرير بكل العمالء الذين يتعاملون مع الشركة . .١٥
SELECT customer_id, customer_name
FROM customer;
ويمكن أن تضاف تقارير أخرى حسب حجة المؤسسة لها .
30
شاشات النظام :
شاشات نظام المبيعات لشركة الخندقاوي :
شاشة الدخول لنظام المبيعات - ١
31
الشاشة الرئيسة لنظام المبيعات - ٢
32
شاشة الشركات المصنعه - ٣
33
شاشة البلدان - ٤
34
شاشة العمالء - ٥
35
شاشة الموظفين - ٦
36
شاشة مستند اإلدخال وتفاصيله - ٧
37
شاشة األصناف - ٨
38
شاشة أنواع األصناف - ٩
39
شاشة الوظائف -١٠
40
شاشة مستند اإلخراج وتفاصليه -١١
41
شاشة المستلمين -١٢
42
شاشة المخازن -١٣
43
شاشة الموردين -١٤
44
شاشة فاتورة البيع وتفاصليها -١٥
تم بحمد اهللا