الانتقال إلى المحتوى
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.

المساعدة في تعبئة block على حسب pop_list

Featured Replies

بتاريخ:

السلام عليكم
في هذا الكود لم يعطيني خطأ عندما اعمل له compile
وانا يعطي خطأ عند ال run

حيث اني اريد تعبئة control block بناء على اختيار من poplist
حيث ان قيم الpoplist من جدول مختلف عن الtext items
يعني مثلا اختار تاريخ السنة فيظهر لي جميع الأنشطة التابعة لهذه السنة


declare
v_YEARLY_PLAN_YEAR	C_R_BASIC_EVENT.YEARLY_PLAN_YEAR%type;
v_EVENT_NAME    C_R_BASIC_EVENT.EVENT_NAME%type;
v_EVENT_MONTH    C_R_BASIC_EVENT.EVENT_MONTH%type;
v_START_DATE    C_R_BASIC_EVENT.START_DATE%type;	
v_END_DATE    	C_R_BASIC_EVENT.END_DATE%type;
v_EVENT_COST    C_R_BASIC_EVENT.EVENT_COST%type;

cursor BASIC_EVENT_CURSOR is
select YEARLY_PLAN_YEAR ,EVENT_NAME , EVENT_MONTH ,START_DATE ,END_DATE ,EVENT_COST
from  C_R_BASIC_EVENT;

begin
open BASIC_EVENT_CURSOR;

loop
 fetch BASIC_EVENT_CURSOR
  into v_YEARLY_PLAN_YEAR ,v_EVENT_NAME ,v_EVENT_MONTH ,v_START_DATE ,v_END_DATE , v_EVENT_COST;
  
  exit when BASIC_EVENT_CURSOR%notfound;
  
  if :CONTROLS.POPLIST_YEAR = v_YEARLY_PLAN_YEAR then
   loop
   	
   select	EVENT_NAME ,EVENT_MONTH ,START_DATE ,END_DATE ,EVENT_COST
   into  :BASIC_EVENT_CONTROLS.EVENT_NAME ,:BASIC_EVENT_CONTROLS.EVENT_MONTH ,:BASIC_EVENT_CONTROLS.START_DATE ,
:BASIC_EVENT_CONTROLS.END_DATE ,:BASIC_EVENT_CONTROLS.EVENT_COST 
   from  C_R_BASIC_EVENT;
   
   end loop;

   exit;
  end if; 
  
end loop;
 
end;



وهذه هي رسالة الخطأ التي تظهر لي

FRM-30356: Too many records displayed for this item.
Item: EVENT_NAME
Block: BASIC_EVENT_CONTROLS
Form: BASIC_EVENT_Q
FRM-30085: Unable to adjust form for output.


وشكرا

بتاريخ:

فى البدايه لبد ان تتاكد ان جميع ال item database = no

DECLARE
n varchar(50):=:txt_name;
CURSOR GETEMP IS
 SELECT EMPNO,ENAME,JOB,HIREDATE,MGR,SAL,COMM
 FROM EMP
 where deptno=||n||;
BEGIN
GO_BLOCK('EMP');
FIRST_RECORD;
OPEN GETEMP;
  LOOP 
FETCH GETEMP INTO :EMP.EMPNO,:ENAME,:JOB,:HIREDATE,:MGR,:SAL,:COMM;
EXIT WHEN GETEMP%NOTFOUND;
NEXT_RECORD;
END LOOP;
CLOSE GETEMP;
END;


اما بخصوص تعبئة ال list لبد ان تكون database item = no
و تضع الكود التالى فى
when-new-form

DECLARE
CURSOR y IS SELECT dname,depno FROM dept; 
BEGIN
CLEAR_LIST('DEPTNO');
FOR I IN y LOOP
ADD_LIST_ELEMENT('DEPTNO',1,I.dname,I.deptno);
END LOOP;
END;




ايهاب وجدى

بتاريخ:

انت ظبته لانه فى تركه
بسيطه

ايهاب وجدى

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

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

وهذا هو الكود

declare
 

cursor BASIC_EVENT_CURSOR is
 select	EVENT_NAME , EVENT_MONTH ,START_DATE ,END_DATE ,EVENT_COST
 from  	C_R_BASIC_EVENT
 where  YEARLY_PLAN_YEAR = to_char(:POPLIST_YEAR,'YYYY');

begin
GO_BLOCK('C_R_BASIC_EVENT');
FIRST_RECORD;

open BASIC_EVENT_CURSOR;

loop
 
 fetch BASIC_EVENT_CURSOR
  into :BASIC_EVENT_CONTROLS.EVENT_NAME ,:BASIC_EVENT_CONTROLS.EVENT_MONTH ,:BASIC_EVENT_CONTROLS.START_DATE ,:BASIC_EVENT_CONTROLS.END_DATE ,:BASIC_EVENT_CONTROLS.EVENT_COST;

  exit when BASIC_EVENT_CURSOR%notfound;
  
  NEXT_RECORD;
  
   	
end loop;

close	BASIC_EVENT_CURSOR;    
 
end;



والغريب انه يعطي على C_R_BASIC_EVENT
must be decleared
وانا متاكدة ان الجدول موجود

وحبيت اعرف مامعنى ||n||
وهل هذا الكود متوافق مع 9i
وشكرا

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

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

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

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

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

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.