بتاريخ: 15 يونيو 201015 سنة comment_194697 بعد السلام عليكم و رحمة الله و بركاته الكود كالاتي WHEN-NEW-FORM-INSTANCE declare r_id recordgroup; n number; r_ix recordgroup; nn number; begin r_id:=create_group_from_query('q1','select categorie ,to_char(categorie) from categorie'); n:=populate_group(r_id); populate_list('demande.categorie ','q1'); r_ix:=create_group_from_query('qq','select sous_categorie ,to_char(sous_categorie) from sous_categorie where sous_categorie.categorie like '''||:demande.categorie||'%'''); nn:=populate_group(r_ix); populate_list('demande.sous_categorie ','qq'); end; سوالي ,, كيف اجعل الليست التانية تتغير كل مرة اختار categorie جديدةلانو هك الليست التانية تتعبئلي مرة وحدة حسب قيم الليست الاولى عند البداية فقط و ما تاخد قيم تانية لما اختار قيم اخرى من الليست الاولىارجو تدخل ذوي الخبرة و شكرا تقديم بلاغ
بتاريخ: 15 يونيو 201015 سنة comment_194713 السلام عليكم،ممكن وضع الكود اللي يعمل POPULATE لليست التانية في WHEN-LIST-CHANGED لليست الأولى.مع الاحترام،عمّار تقديم بلاغ
بتاريخ: 15 يونيو 201015 سنة comment_194750 populate_list('demande.categorie ','q1'); الكود دا اكتبه كدا populate_list('demande.categorie ',r_id); واكتب امر if لو فيه اكتر من قيمه في اليسته الاولي يبقا الكود النهائي يبقا بالشكل داتضع الكود في WHEN-LIST-CHANGEDبافتراض ان الليسته اللي هنختار منها القيم اسمها list1 عليها هيتم تغير الليسته الاخري declare r_id recordgroup; n number; r_ix recordgroup; nn number; begin if :list1=value then r_id:=create_group_from_query('q1','select categorie ,to_char(categorie) from categorie'); n:=populate_group(r_id); populate_list('demande.categorie ',r_id); elsif :list1=value then r_ix:=create_group_from_query('qq','select sous_categorie ,to_char(sous_categorie) from sous_categorie where sous_categorie.categorie like '''||:demande.categorie||'%'''); nn:=populate_group(r_ix); populate_list('demande.sous_categorie ',r_ix); end if; end; لو ال category ليه اسم يبقا اكتبه لانك كاتب في كود السيلكت select category ,to_chaR(category ) from tableالمفروض select category_name,to_char(category _id) from tableاسم يظهر للمستخدم واسم يترمي في الداتا بيز تم تعديل 15 يونيو 201015 سنة بواسطة HELL-BOY تقديم بلاغ
بتاريخ: 16 يونيو 201015 سنة كاتب الموضوع comment_194786 السلام عليكم و رحمة الله و بركاتهشكرا للسادةانا حطيت كود الليست التانية في ال when-list-changedلليست الاولى و نفس الشي رح اجرب طريقة 2 لاخوناو اردلكم خبرللعلم انا حاطه category _id هو نفسو ال category لانها ثابتة و من نوع charلا ارى مانع؟؟؟شكرا اخواني و لنا عوده تقديم بلاغ
بتاريخ: 16 يونيو 201015 سنة comment_194840 populate_list('demande.categorie ','q1'); الكود دا اكتبه كدا populate_list('demande.categorie ',r_id); واكتب امر if لو فيه اكتر من قيمه في اليسته الاولي يبقا الكود النهائي يبقا بالشكل داتضع الكود في WHEN-LIST-CHANGEDبافتراض ان الليسته اللي هنختار منها القيم اسمها list1 عليها هيتم تغير الليسته الاخري declare r_id recordgroup; n number; r_ix recordgroup; nn number; begin if :list1=value then r_id:=create_group_from_query('q1','select categorie ,to_char(categorie) from categorie'); n:=populate_group(r_id); populate_list('demande.categorie ',r_id); elsif :list1=value then r_ix:=create_group_from_query('qq','select sous_categorie ,to_char(sous_categorie) from sous_categorie where sous_categorie.categorie like '''||:demande.categorie||'%'''); nn:=populate_group(r_ix); populate_list('demande.sous_categorie ',r_ix); end if; end; لو ال category ليه اسم يبقا اكتبه لانك كاتب في كود السيلكت select category ,to_chaR(category ) from tableالمفروض select category_name,to_char(category _id) from tableاسم يظهر للمستخدم واسم يترمي في الداتا بيز في حاجه صغيره في الكود بدل مهو مكتوبnn:=populate_group(r_ix); لا خليها nn:=populate_group('qq'); والتانيه نفس الكلام او ممكن تستغني عن الركود جروب اللي انت عامله في الفرمه وتعمل فاريبل اي اسم تديله قيمه تببيوليت بيهكدا يعني DECLARE rg_name VARCHAR2(40) := 'gr'; r_id RecordGroup; r_ix recordgroup; n NUMBER; BEGIN rg_id := Find_Group(rg_name); IF NOT id_null(rg_id) then Delete_Group(rg_id); End if; if :list1=value then r_id:=create_group_from_query(rg_name,'select categorie ,to_char(categorie) from categorie'); n:=populate_group(r_id); populate_list('demande.categorie ',r_id); elsif :list1=value then r_ix:=create_group_from_query(rg_name,'select sous_categorie ,to_char(sous_categorie) from sous_categorie where sous_categorie.categorie like '''||:demande.categorie||'%'''); n:=populate_group(r_ix); populate_list('demande.sous_categorie ',r_ix); end if; end ;جرب كدا وقولنا حصل لو قبلتك مشاكل احنا حضرين ان شاء الله تم تعديل 16 يونيو 201015 سنة بواسطة HELL-BOY تقديم بلاغ
بتاريخ: 17 يونيو 201015 سنة كاتب الموضوع comment_194870 السلام عليكم و رحمة الله و بركاتهشكر للاهتمام Mr.HELL-BOY حسب معرفتي لما احط il list=value then...lمعناه انو الليست الاولى ثابتة و الاصح انها تتعبىء من جدول categoryو لما اضيف category جديد راح تظهر فاللييست الاولى ؟؟؟تحياتي تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.