بتاريخ: 7 أغسطس 20169 سنة comment_276947 يااصدقاء معي زر فيه الكود التالي المشكله انه يغير لون حقل اول سجل وهو ليس المطلوب (كما في الصوره المرفقه) يعني كانه يروح للحقل الافتراضي وين المشكل؟!!!! declare xalert number; cursor c1 is select * from VIEWF_CONT_TRAN1 where (CONT_STATUS=:LIST1 AND LINE=:LINE_CODE and code=:cont_code )or (CONT_STATUS=:LIST3 AND LINE=:LINE_CODE and code=:cont_code); c VIEWF_CONT_TRAN1%rowtype; begin null; open c1; loop fetch c1 into c; if c.code=:cont_code then Set_Item_Instance_Property( 'code', current_record, VISUAL_ATTRIBUTE,'V1'); end if; exit when c1%notfound; end loop; close c1; END; null; تقديم بلاغ
بتاريخ: 7 أغسطس 20169 سنة comment_276948 اخي العزير اول شيء لازم تعرفه انو الحقل او field الذي تريد تغير لون خطه يجب ان يكون database item=yes ويجب ان يحتوي على قيمة مثلا لو افترضنا اننا بجدول emp ونريد ان نغير لون الريكود للموظفين الذين بالقسم 10 (هذا يعني بان الشرط يجب ان يوضع على حق deptno) وهو يجب ان يكون database item= yes من ثم تعمل visaul attributes بحيث تضع لون الخط الذي تريده وتضع لون الفيلد (لون الفيلد اما ان تضعه نفس اللون الذي تعتتمده للسجلات او تغيره , انت في مثالك تحتاج فقط لتغير لون الخط فقط لذلك قم بتغير لون الخط ومن ثم ضع لون الفيلد نفسه الذي انت اخترته للفيلد قبل الشرط) من ثم بعد جملة الشرط تضع ET_ITEM_INSTANCE_PROPERTY(:datablock.itmename, CURRENT_RECORD ,VISUAL_ATTRIBUTE, VISUAL_name) ويفضل ان كنت تعمل استعلام على البلوك بان تضع الكود داخل post_query حصرا لكي يقوم الشرط بفحص ريكورد ريكورد والريكورد الذي ينطبق عليه الشرط يغيره اذا لم توضح الصورة ساقوم بارفاق لك مثال على جدول emp وبالتوفيق تقديم بلاغ
بتاريخ: 7 أغسطس 20169 سنة comment_276951 اخي العزير اول شيء لازم تعرفه انو الحقل او field الذي تريد تغير لون خطه يجب ان يكون database item=yes ويجب ان يحتوي على قيمة مصدر المعلومة ايه ؟ تم تعديل 7 أغسطس 20169 سنة بواسطة eslam elbyaly تقديم بلاغ
بتاريخ: 7 أغسطس 20169 سنة comment_276952 يااصدقاء معي زر فيه الكود التالي المشكله انه يغير لون حقل اول سجل وهو ليس المطلوب (كما في الصوره المرفقه) يعني كانه يروح للحقل الافتراضي وين المشكل؟!!!! declare xalert number; cursor c1 is select * from VIEWF_CONT_TRAN1 where (CONT_STATUS=:LIST1 AND LINE=:LINE_CODE and code=:cont_code )or (CONT_STATUS=:LIST3 AND LINE=:LINE_CODE and code=:cont_code); c VIEWF_CONT_TRAN1%rowtype; begin null; open c1; loop fetch c1 into c; if c.code=:cont_code then Set_Item_Instance_Property( 'code', current_record, VISUAL_ATTRIBUTE,'V1'); end if; exit when c1%notfound; end loop; close c1; END; null; هو بيعمل كده لانك استخدمت set_item_instance , استخدم set_item_property لتغيير لون العمود . - لا داعى لاستخدام null ; في بداية البلوك وفي آخره . تقديم بلاغ
بتاريخ: 7 أغسطس 20169 سنة comment_276955 اخي العزيز اسلام .... السائل يسأل عن تلوين حقل او سجل وفقا لشرط معين اما اذا اراد تلوين عمود فليس هنا حاجة لوضع شرط لذلك حيث يكتفي باستخدام set_item_property اما بالنسبة لتلوين حقل معين او سجل كامل وفق شرط معين فلابد له من استخدام له من استخدام set_item_instance_property بالفورم المرفق قمت بعمل مثال صغير على جدول emp واسم مستخدم scott/tiger بالمثال تختار الشرط الذي تريده وتضعه داخل text item من ثم تختار تلوين الفيلد او تلوين الخط من ثم تضغط على زر execute query -------------------------------------------- مع ملاحظة بان الشرط دائما يوضع على item من نوع database=yes بالمثال المرفق وضعت مع أعمدة جدول emp اسم عمود اخر وهو dname وهو من نوع database item =no واذا وضعت عليه شرط سوف يعطي خطا بسبب ان العمود لا يأتي بقيمة من الداتا بيس لكي تفحص ------------------------------------------- مع الشكر EXAMPLE.rar تقديم بلاغ
بتاريخ: 8 أغسطس 20169 سنة comment_276961 انا اقصد معلومة انه لازم يكون database item عشان يتغير لونه , الاقى فين المعلومة دى ؟ تقديم بلاغ
بتاريخ: 8 أغسطس 20169 سنة كاتب الموضوع comment_276962 طيب في حال كان السجل المطلوب اخر سجل يعني موظاهر على الشاشه, كيف ممكن نغير اللون ونظهر الحقل المطلوب, يعني لو انا ابحث برقم الموظف الي هو اخر سجل مابيظهر على الشاشه تم تعديل 8 أغسطس 20169 سنة بواسطة khaled zid تقديم بلاغ
بتاريخ: 8 أغسطس 20169 سنة comment_276963 انا اقصد معلومة انه لازم يكون database item عشان يتغير لونه , الاقى فين المعلومة دى ؟ اخي اسلام الصورة المرفقة موضحة يوجد dname وهو من نوع داتا بيس ايتم لا تغير لونه ولا يوجد أي مشكلة لانو شرط التغير يجب ان يوضع على حقل من داتا بيس ايتيم نعم تقديم بلاغ
بتاريخ: 8 أغسطس 20169 سنة كاتب الموضوع comment_276964 يا m_md الحل مشي معاي ,بس كيف يظهر السجل لو كان في الاخير, يعني بعد ماتسوي تنفيذ تقديم بلاغ
بتاريخ: 8 أغسطس 20169 سنة كاتب الموضوع comment_276968 http://www.araboug.org/ib/index.php?showtopic=61498 تقديم بلاغ
بتاريخ: 8 أغسطس 20169 سنة comment_276975 اخي العزيز فهمت سؤالك انت تريد عمل بحث عن شيء معين وانت تؤكد في الرابط بان النتيجة هي ريكورد واحد يعني انت تبحث بواسطة عمود priamary key وتريد بدلا من عمل فلترة على الداتا , تريد بان يتلون نتيجة البحث بلون ما والمؤشر ينتقل الى الريكورد المطلوب , عكل حال ساقوم بتوزيدك بالحل ان شاء الله تقديم بلاغ
بتاريخ: 8 أغسطس 20169 سنة comment_276986 اخي خالد تم تعديل الفورم وفقا لطلبك تماما بالمثال الذي وضعته تقوم بعمل بحث عن رقم موظف معين (قم بوضع أي رقم موظف وثم اضغط على زر EXECUTE QUERY) عندما يجده سوف يقوم بتلوين الفيلد او لون الخط ومن ثم سيقوم بنقل المؤشر الى ذلك الريكورد لكي تراه مع ملاحظة بانه نتيجة البحث يجب ان ترد قيمة واحد لذلك وفقا لما افدتني به بالتوفيق EXAMPLE.rar تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.