mmsalman87 بتاريخ: 8 أكتوبر 2012 تقديم بلاغ مشاركة بتاريخ: 8 أكتوبر 2012 السلام عليكم ورحمة الله وبركاتهسوف اقوم اليوم بشرح كيفية عمل قوائم اكثر ديناميكيةمثال على القوائم الديناميكية :الجنس ( ذكر او انثى ) - الحالة الاجتماعية ( اعزب،غير متزوج) ... الخسوف نقوم بعمل جدولين الاول يحتوي اسم القائمة والكود الخاص فيهاوالجدول الثاني يحتوي العناصر التي تحتويها هذه القائمةانشاء الجدول الاول CREATE TABLE SETUP_LIST_MSTR ( LIST_CODE VARCHAR2(100) NOT NULL, DESC_A VARCHAR2(100), DESC_E VARCHAR2(100) ) نقوم بوضع المحددات Constraints ALTER TABLE SETUP_LIST_MSTR ADD ( CONSTRAINT SETUP_LIST_MSTR_PK PRIMARY KEY (LIST_CODE)) انشاء الجدول الثاني CREATE TABLE SETUP_LIST_DETL ( LIST_CODE VARCHAR2(100 ), DESC_ARABIC VARCHAR2(100 ), DESC_ENGLISH VARCHAR2(100 ), COLUMN_VALUE VARCHAR2(20 ), SEQ_NO NUMBER ) ملاحظة: SEQ_NO يعني ترتيب العنصر في القائمةنقوم بوضع المحددات Constraints ALTER TABLE SETUP_LIST_DETL ADD CONSTRAINT SETUP_LIST_DETL_R01 FOREIGN KEY (LIST_CODE) REFERENCES SETUP_LIST_MSTR (LIST_CODE)); اضافة بعض البيانات على الجدولين Insert into SETUP_LIST_MSTR (LIST_CODE, DESC_A, DESC_E) Values ('GENDER', 'الجنس', NULL); Insert into SETUP_LIST_MSTR (LIST_CODE, DESC_A, DESC_E) Values ('MARITAL_STATUS', 'الحالة الاجتماعية', NULL); Insert into SETUP_LIST_DETL (LIST_CODE, DESC_ARABIC, DESC_ENGLISH, COLUMN_VALUE, SEQ_NO) Values ('GENDER', 'ذكر', 'Male', '1', 1); Insert into SETUP_LIST_DETL (LIST_CODE, DESC_ARABIC, DESC_ENGLISH, COLUMN_VALUE, SEQ_NO) Values ('GENDER', 'انثى', 'Female', '2', 2); Insert into SETUP_LIST_DETL (LIST_CODE, DESC_ARABIC, DESC_ENGLISH, COLUMN_VALUE, SEQ_NO) Values ('MARITAL_STATUS', 'اعزب', 'Single', '1', 1); Insert into SETUP_LIST_DETL (LIST_CODE, DESC_ARABIC, DESC_ENGLISH, COLUMN_VALUE, SEQ_NO) Values ('MARITAL_STATUS', 'متزوج', 'Married', '2', 2); Insert into SETUP_LIST_DETL (LIST_CODE, DESC_ARABIC, DESC_ENGLISH, COLUMN_VALUE, SEQ_NO) Values ('MARITAL_STATUS', 'ارمل', 'Divorced', '3', 3); Insert into SETUP_LIST_DETL (LIST_CODE, DESC_ARABIC, DESC_ENGLISH, COLUMN_VALUE, SEQ_NO) Values ('MARITAL_STATUS', 'مطلق', 'Divorced', '4', 4); نقوم بعمل البروسيجر التالي في pll library حتى يمكننا استدعائه من اي فورم PROCEDURE CREATE_STATIC_LIST ( LIST_CODE VARCHAR2 ,FILD_NAME VARCHAR2, RECORD_GROUP VARCHAR2 DEFAULT 'rg') is RG RECORDGROUP ; N NUMBER; v_cha_lang NUMBER (1) := 1; BEGIN if NAME_IN('GLOBAL.P_USER_LANGUAGE') = 1 then v_cha_lang := 1; else v_cha_lang := 2; end if; --- Make sure group doesn't already exist rg := Find_Group(record_group); /* ** If it does not exist, create it and add the two ** necessary columns to it. */ if not id_null(rg) then delete_group(rg); end if; RG:= CREATE_GROUP_FROM_QUERY(record_group,'SELECT DECODE('||v_cha_lang||', 1, DESC_ARABIC, DESC_ENGLISH) COLUMN_DESC, COLUMN_VALUE from SETUP_LIST_DETL where LIST_CODE ='''||LIST_CODE||''' order by SEQ_NO, COLUMN_DESC'); N := POPULATE_GROUP(RG); POPULATE_LIST(FILD_NAME,RG); END; الان في فورم قم بكتابة الكود التالي في التريغر WHEN-NEW-FORM-INSTANCE CREATE_STATIC_LIST ( LIST_CODE,FIELD_NAME ) ; اتمنى ان اكون قد وفقت لشرح هذه الطريقة لتعبئة القوائم بطريقة ديناميكيةوالسلام عليكم ورحمة الله وبركاته 2 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
jamal_rrkk بتاريخ: 8 أكتوبر 2012 تقديم بلاغ مشاركة بتاريخ: 8 أكتوبر 2012 السلام عليكم ورحمة الله وبركاتهجزاك الله كل خير اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Ahmad.Hasan بتاريخ: 8 أكتوبر 2012 تقديم بلاغ مشاركة بتاريخ: 8 أكتوبر 2012 الله يعطيك العافية يا ماهر...دائما متميز... 1 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Amgad بتاريخ: 8 أكتوبر 2012 تقديم بلاغ مشاركة بتاريخ: 8 أكتوبر 2012 وعليكم السلام ورحمة اللهالاخ / ماهر كما عودتنا دائماً تأتي بما هو مفيد وجديد لأعضاء المنتدى شكرًا لك جزاك الله خيرا 1 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
mmsalman87 بتاريخ: 10 أكتوبر 2012 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 10 أكتوبر 2012 شكرا لكم جميعا مع تمنياتي بالاستفادة للجميع اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
scince بتاريخ: 10 أكتوبر 2012 تقديم بلاغ مشاركة بتاريخ: 10 أكتوبر 2012 كم انت ماهر يأخي اماهر دائماً خلاق للأفكار المبدعة والرائعة تستحق كل الشكر والتقدير على كل ابداعاتكأخوك,,, 1 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
ahmedshams بتاريخ: 6 سبتمبر 2014 تقديم بلاغ مشاركة بتاريخ: 6 سبتمبر 2014 ممكن شرح اكثر للموضوع دا اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
al3a8eb بتاريخ: 11 فبراير 2015 تقديم بلاغ مشاركة بتاريخ: 11 فبراير 2015 موضوع جميل يا أخي .... جزاك الله خير ... وإن شاء الله في ميزان حسناتك اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.