الانتقال إلى المحتوى

مساعدة في مشروع متابعة مشاريع فنية


samawal

Recommended Posts

في المرفقات عدد 2 فورم
الاول لشاشة متابعة المشروع في حالة ما قبل التنفيذ (يعني في حالة الدراسة والترسية وقبل توقيع العقد) ويتكون من بيانات اساسية للمشرع وبلوك اخر لمتابعة العقود التابعة لهذا المشروع قبل توقيع العقد مثل عقود التصميم والدراسة وغيره وكل عقد طبعاً يمر بعدة مراحل وكل هذا واضح من الصورة الاولى
مع ملاحظة انه طلب مني اضافة حقل اخر وهو رقم المنافسة وهو رقم لا يتكرر اطلاً اما رقم المشروع يمكن ان يتكرر في حال تم سحب المشروع من المقاول وتم اسناده لمقاول اخر

اما الشاشة التانية عبارة عن متابعة المشروع في حالة التنفيذ يعني بعد توقيع العقد وايضاُ بتتكون من ثلاثة بلوكات هي بيانات المشروع الاساسية وبينات العقود وبيانات متابعة هذه العقود

حيث ان بيانات المشروع الاساسية ماستر لبيانات العقود
وبيانات العقود ماستر لبيانات متابعة العقود

ارجو المساعدة في عملية ربط تلك البلوكات مع بعض

علماً بانني عملت الجداول

الجدول الاول لبيانات متابعة العقود
---------------------------------------------------------------------------------
 CREATE TABLE "SYSTEM"."CONSTRUCTION_DETAIL" 
  (	"CONT_NO" VARCHAR2(40 BYTE) NOT NULL ENABLE, 
"CONTRACT_NAME" VARCHAR2(100 BYTE), 
"CONT_STATUS" VARCHAR2(60 BYTE), 
"CONT_ID" NUMBER, 
"CONT_NAME" VARCHAR2(60 BYTE), 
"CONT_VALUE" NUMBER(20,2), 
"CONT_DATE" DATE, 
"SITE_DEL_DATE" DATE, 
"CONT_PERIOD" VARCHAR2(10 BYTE), 
"WORK_STATUS" VARCHAR2(40 BYTE), 
"TOTAL_LEAVE" NUMBER(20,2), 
"WORK_PERCEN" VARCHAR2(10 BYTE), 
"PERIOD_PERCEN" VARCHAR2(20 BYTE), 
 CONSTRAINT "CONSTRUCTION_DETAIL_PK" PRIMARY KEY ("CONT_NO")
 USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 
 STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
 PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
 TABLESPACE "SYSTEM"  ENABLE
  ) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
 STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
 PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
 TABLESPACE "SYSTEM" ;

------------------------------------

الجدول التاني لبيانات المشروع الاساسية

 CREATE TABLE "SYSTEM"."PROJECTS" 
  (	"PRO_ID" VARCHAR2(30 BYTE) NOT NULL ENABLE, 
"PROJECT_NAME" VARCHAR2(60 BYTE) NOT NULL ENABLE, 
"MON_ID" VARCHAR2(30 BYTE) NOT NULL ENABLE, 
"MUN_ID" VARCHAR2(20 BYTE) NOT NULL ENABLE, 
"MUN_NAME" VARCHAR2(60 BYTE) NOT NULL ENABLE, 
"PRO_CODE" VARCHAR2(30 BYTE) NOT NULL ENABLE, 
"PRO_NAME" VARCHAR2(60 BYTE), 
"TOTAL_COST" NUMBER(10,2), 
"PRO_YEAR" VARCHAR2(20 BYTE), 
"PRO_NOTE" VARCHAR2(200 BYTE), 
 CONSTRAINT "PROJECTS_PK" PRIMARY KEY ("PRO_ID", "PROJECT_NAME", "MON_ID")
 USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 
 STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
 PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
 TABLESPACE "SYSTEM"  ENABLE
  ) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
 STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
 PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
 TABLESPACE "SYSTEM" ;
----------------
الجدول التالت 

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

 CREATE TABLE "SYSTEM"."CONST_D_DETIAL" 
  (	"CONT_NO" VARCHAR2(20 BYTE), 
"MONTH_PAYMENT" VARCHAR2(40 BYTE), 
"WORK_PERCEN" VARCHAR2(20 BYTE), 
"PERIOD_PERCEN" VARCHAR2(20 BYTE), 
"PAYMENT_NO" VARCHAR2(20 BYTE), 
"PAYMENT_DATE" DATE, 
"PAYMENT_VALUE" NUMBER(20,2), 
"CONST_PROBLEMS" VARCHAR2(300 BYTE), 
"CONST_NOTE" VARCHAR2(300 BYTE), 
"CONTRACTOR_COMMENTS" VARCHAR2(200 BYTE), 
 CONSTRAINT "CONST_D_DETIAL_CONSTRUCTI_FK1" FOREIGN KEY ("CONT_NO")
  REFERENCES "SYSTEM"."CONSTRUCTION_DETAIL" ("CONT_NO") ENABLE
  ) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
 STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
 PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
 TABLESPACE "SYSTEM" ;


----------
ارجو من الاخوة الافاضل ابداء النصح والمساعدة في عملية ربط الجداول حتى يتم عملت هذه الشاشات بصورة صحيحة


وجزيتم خيراً

post-12243-1255795137_thumb.jpg

post-12243-1255795236_thumb.jpg

رابط هذا التعليق
شارك

السلام عليكم ورحمة الله

جدول المشروعات PROJECTS
يكون المفتاح الاساسى له هو رقم المشروع فقط ... و لاداعي لجعل اسم المشروع ضمن مفتاح الجدول .

جدول العقود CONSTRUCTION_DETAIL
يكون المفتاح الاساسي هو رقم العقد
ويكون المفتاح الاجنبي هو رقم المشروع حيث ان العلاقة بين المشروع والعقد هى one to many
اى ان المشروع الواحد يمكن ان يكون يوقع له عقد واحد أو أكثر من عقد
والعقد يجب ان يكون تابعا لمشروع .

جدول متابعة العقود او حركة الصرف للمستخلصات CONST_D_DETIAL
يكون المفتاح الاساسى مركب من رقم العقد ورقم المستخلص معا
اي ان العقد يمكن ان يصرف علية مستخلص واحد او أكثر من مستخلص
المستخلص يجب ان يكون تابعا لعقد لكي يتم الصرف منه

ملاحظة : فضلت اختيار رقم المستخلص كمفتاح اساسي ..... ( بدلا من شهر المتابعه الذى اخترته فى تصميمك )بافتراض انه يمكن ان يكون هناك اكثر من مستخلص فى نفس الشهر

واليك رسومات ال ERD - PDM _scrip tables

create table PROJECTS  (
  PRO_ID               VARCHAR2(30 BYTE)               not null,
  PROJECT_NAME         VARCHAR2(60 BYTE)               not null,
  MON_ID               VARCHAR2(30 BYTE)               not null,
  MUN_ID               VARCHAR2(20 BYTE)               not null,
  MUN_NAME             VARCHAR2(60 BYTE)               not null,
  PRO_CODE             VARCHAR2(30 BYTE)               not null,
  PRO_NAME             VARCHAR2(60 BYTE),
  TOTAL_COST           NUMBER(10,2),
  PRO_YEAR             VARCHAR2(20 BYTE),
  PRO_NOTE             VARCHAR2(200 BYTE),
  constraint PROJECTS_PK primary key (PRO_ID)
);

create table CONSTRUCTION_DETAIL  (
  CONT_NO              VARCHAR2(40 BYTE)               not null,
  PRO_ID               VARCHAR2(30 BYTE)               not null,
  CONTRACT_NAME        VARCHAR2(100 BYTE),
  CONT_STATUS          VARCHAR2(60 BYTE),
  CONT_ID              NUMBER,
  CONT_NAME            VARCHAR2(60 BYTE),
  CONT_VALUE           NUMBER(20,2),
  CONT_DATE            DATE,
  SITE_DEL_DATE        DATE,
  CONT_PERIOD          VARCHAR2(10 BYTE),
  WORK_STATUS          VARCHAR2(40 BYTE),
  TOTAL_LEAVE          NUMBER(20,2),
  WORK_PERCEN          VARCHAR2(10 BYTE),
  PERIOD_PERCEN        VARCHAR2(20 BYTE),
  constraint CONSTRUCTION_DETAIL_PK primary key (CONT_NO)
);

create table CONST_D_DETIAL  (
  CONT_NO              VARCHAR2(40 BYTE)               not null,
  PAYMENT_NO           VARCHAR2(20 BYTE)               not null,
  MONTH_PAYMENT        VARCHAR2(40 BYTE),
  WORK_PERCEN          VARCHAR2(20 BYTE),
  PERIOD_PERCEN        VARCHAR2(20 BYTE),
  PAYMENT_DATE         DATE,
  PAYMENT_VALUE        NUMBER(20,2),
  CONST_PROBLEMS       VARCHAR2(300 BYTE),
  CONST_NOTE           VARCHAR2(300 BYTE),
  CONTRACTOR_COMMENTS  VARCHAR2(200 BYTE),
  constraint PK_CONST_D_DETIAL primary key (CONT_NO, PAYMENT_NO)
);



alter table CONSTRUCTION_DETAIL
  add constraint FK_CONSTRUC_REFERENCE_PROJECTS foreign key (PRO_ID)
     references PROJECTS (PRO_ID);

alter table CONST_D_DETIAL
  add constraint FK_CONST_D__REFERENCE_CONSTRUC foreign key (CONT_NO)
     references CONSTRUCTION_DETAIL (CONT_NO);


مع التحية

CONSTRUCTION_pdm_image.jpg

CONSTRUCTION_er.jpg

رابط هذا التعليق
شارك

اشكرك من كل قلبي يا اخي العزيز
وربنا يجعله في ميزان حسناتك
وبالتوفيق باذن الله

رابط هذا التعليق
شارك

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية