الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

كود صحيح لكن لا يعمل

Featured Replies

بتاريخ:

بسم الله الرحمن الرحيم

اخواني 

انا عندي جدول يحتوي على حقل به اما الرقم 1 او 0

واريد عمل جمله سلكت ترجع قيمة الحقل الى متغير x مثلا 

في حالة ان كان القيمة المرجعه تساوي 1 عليه تفعيل الزر في الشاشه

في حالة ان كان القمية المرجعه تساوي 0 عليه الغاء تفعيل الز في لشاشه 

وطبعا الحقل المرجع بشرط ان المستخدم يساوي رقم المستخدم الضاهر معي في الشاشه وهو رقم المستخدم

انا كتبت الكود التالي في الـ WHEN-NEW-FORM-INSTANCE

 

declare
x number;
begin
select vis_button into x from users
where
users.user_no = :text_item14 ;


if x = 1 then
      set_item_property('PUSH_BUTTON8',enabled,property_true);
        else
         set_item_property('PUSH_BUTTON8',enabled,property_false);
        end if  ;
end;

وهو كود صحيح ولا يضهر اي خطى في الكود

ولكن عند التشغيل الزر يبقى  مفعلا سواء كانت قيمة الحقل في قاعدة البانات تساوي 1 او حتى 0

فما العمل

 

مع العلم اني كاتب هذا الكود بعد كود استرجاع قيمة المتغير جلوبال لل text_item14

:TEXT_ITEM14 :=:global.kimy;

وشكرا

post-15632-0-78138300-1479973879_thumb.jpg

تم تعديل بواسطة الحكيمي

بتاريخ:
  • كاتب الموضوع

شكرا اخي احمد على سرعه الرد 

لكن نفس المشكله لا يوجد اي تغيير 

لكن نا الان عدلت على المشاركه اواضفت صوره وكود ومعلومات اخرى ياريت تشوف

تم تعديل بواسطة الحكيمي

بتاريخ:

السلام عليكم 

 

تاكد ان خاصية الــ  Enabled = yes   ... في الزر

تاكد ان خاصية الــ  Keyboard Navigable = no... في الزر

تاكد ان خاصية الــ  Mouse Navigable Item = no... في الزر

وتاكد من ان الاستعلام يرجع القيمة المطلوبة 

 

جرب استخدم PROPERTY_ON  او PROPERTY_OFF

 SET_ITEM_PROPERTY('Blook.Button'       ,ENABLED  ,PROPERTY_ON );

تم تعديل بواسطة anas.soft

بتاريخ:

في المرفق مثال لما تحتاج 

بالتوفيق 

BOTTON_STATUS.rar

تم تعديل بواسطة anas.soft

بتاريخ:

هل توجد طريقة مثل هذي

للتحكم بالازرار عن طريق شاشة صلاحيات

عن طريق شيك بوكس

مثلا اختار مشتخدم وتكون في ثلاثة شيك بوكس

مثلا ..اضافة حزف تعديل

لو شيك مفعل سيختفي الزر لو مش مفعل الزر سكون مفعل

تم تعديل بواسطة monte jamaice

بتاريخ:
  • كاتب الموضوع

المشكله اني اظفت رز في الشاشه وكتبت داخلها الكود وكتبت داخل التكست رقم 1 يشتغل كويس

if :text_item14 = 1 then
      set_item_property('PUSH_BUTTON8',enabled,property_off);
        else
         set_item_property('PUSH_BUTTON8',enabled,property_on);
        end if  ;

لكن 

اذا رجع المتغير جلوبال القيمة 1 الى التكست بشكل الي لا يعمل الكود

 

وكانه يقوم بترجمة سطر المتغير جلوبال ويطبع رقم المستخدم في التكست رقم 14 فقط ولا يقوم بقراءة بقية الكود الذي فيه بقيه الشروط بعد المتغير

تم تعديل بواسطة الحكيمي

بتاريخ:

هل توجد طريقة مثل هذي

للتحكم بالازرار عن طريق شاشة صلاحيات

عن طريق شيك بوكس

مثلا اختار مشتخدم وتكون في ثلاثة شيك بوكس

مثلا ..اضافة حزف تعديل

لو شيك مفعل سيختفي الزر لو مش مفعل الزر سكون مفعل

 

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

 

مثال  / في قاعدة البيانات 

جدول المستخدمين (رقم ، اسم ..الخ)

جدول الشاشات ( رقم، اسم برمجي ، وصف )

جدول الصلاحيات (رقم المستخدم، اسم الشاشة ، زر اضافة ، زر  تعديل ، زر حذف ، صلاحية1 صلاحية2 ، صالحية3 )

 

في الفورمز

تضع ميثود باسم STARTS  

PROCEDURE STARTS IS
BEGIN
	
-------------- SET FORMS PROPERTIS

declare
FAD number;
	FED number;
	FDL number;
	
	PR1 number; 
	PR2 number; 
	PR3 number; 
	
BEGIN
 
 BEGIN ----- GET PROPERTIS INFO
  select  nvl(FRMADD,0) ,  nvl(FRMEDT,0),  nvl(FRMDEL,0)
  , nvl(PRVLG1,0), nvl(PRVLG2,0), nvl(PRVLG3,0)
      into  FAD,FED,FDL , PR1 ,PR2,PR3
   from   USRPRVLGES
  where GRUPID = :global.USGRP
  and FRMNAME = upper(:SYSTEM.CURRENT_FORM);
 EXCEPTION WHEN NO_DATA_FOUND THEN
 	FAD :=0; FED:=0; FDL :=0; PR1 :=0;PR2:=0;PR3:=0;
 	END;
  
  ---------- SET BLOCK PROPERTY
  if FAD = 1 then	SET_BLOCK_PROPERTY('BLOCK_NAME',INSERT_ALLOWED,PROPERTY_TRUE);
  	set_item_property('ITM_ADD',ENABLED,PROPERTY_TRUE); end if;
  
  if FED = 1 then	set_item_property('ITM_EDT',ENABLED,PROPERTY_TRUE); end if;
  
  if FDL = 1 then	SET_BLOCK_PROPERTY('BLOCK_NAME',DELETE_ALLOWED,PROPERTY_TRUE);
  	set_item_property('ITM_DEL',ENABLED,PROPERTY_TRUE); end if;
  
  if PR1 = 1 then	SET_ITEM_PROPERTY('ITEM01',ENABLED,PROPERTY_TRUE); end if;
  
  if PR2 = 1 then	SET_ITEM_PROPERTY('ITEM02',ENABLED,PROPERTY_TRUE); end if;
  if PR3 = 1 then	SET_ITEM_PROPERTY('ITM03',ENABLED,PROPERTY_TRUE); end if;
  
  
END;

END;

ثم تستدعيها في WHEN-NEW-FORM-INSTANCE ..

بتاريخ:
  • كاتب الموضوع

طيب يا شباب اخر المحاولات اني عملت نفس الكود ولكن في كومند واشتغل معي كويس

 

 
 
:TEXT_ITEM14 :=:global.kimy;


declare
x number;
begin
select vis_button into x from users
where
users.user_no = :text_item14 ;

if x = 1 then
      set_item_property('PUSH_BUTTON8',enabled,property_true);
        else
         set_item_property('PUSH_BUTTON8',enabled,property_false);
        end if  ;
end;

لكن مش راضي من WHEN-NEW-FORM-INSTANCE

ولا من WHEN-NEW-BLOCK-INSTANCE

ولا من Post-Query

شو اسوي

تم تعديل بواسطة الحكيمي

بتاريخ:
  • كاتب الموضوع

وفي بعض الاحيان عندما احاول بطرق اخرى تظهر لي هذه الرساله

post-15632-0-10868600-1480171035_thumb.jpg

بتاريخ:
  • كاتب الموضوع

بعد تعب شديد وجد الحل وهو الاتي

انا كان لدي في البلوك الزر الذي اريد ان ان اجعله غير مفعل وكان هو هو اول زر في البلوك

ويبدو انه كان عند فتح البلوك يكون التركيز عليه او ال focus فلا يعمل معي

 

ولكن عند فتح البلوك ونفس الكود السابق  وفي الترايجر  WHEN-NEW-FORM-INSTANCE اظفت في بداية الكود '(go_item('push_button وهو زر الخروج

واول ما فتح ذهب لزر الخروج واعمل الزر المراد الغاء تفعليه بشكل جيد

 

ارجو اني عرفت افهمكم الحل

وذلك للعلم

 

وشكرا لتفاعلكم معي

تم تعديل بواسطة الحكيمي

بتاريخ:

بارك الله فيك استاذ فيصل ربنا يسعدك

راح اجرب واشوف النتيجة

^_^

بتاريخ:

وفي بعض الاحيان عندما احاول بطرق اخرى تظهر لي هذه الرساله

ملوش لزمة تكتب كود، غير مكان الزرار فى ال navigator , نزله تحت او حسب الترتيب المراد.

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

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

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

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

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

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.