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

بتاريخ:

لماذا يا شباب لما أنفذ هذه الـ PL/SQL على الـ Tabulare

ينفذها جميعها على الTabulare ، ماعدى العملية الحسابية التي

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

أرفق لكم صورة من الفورم للتوضيح ...........

DECLARE
  FD DATE;
  M_D CHAR(10);
 	CURSOR IN_DOCS IS SELECT IN_ID,IN_DATE,IN_FROM,IN_STARTPROCESS,IN_PROCESSTIME,IN_SUBJECT,IMP_NAME
 	FROM IN_DOC,DEPT_MANAGER,IN_IMPORTANT WHERE IN_TO_DEPT4 = DEPT_ID AND IN_IMPORT = IMP_ID AND IN_TO_DEPT4=5 AND IN_STATUSS IN (2,3,6,7,8);
 	
BEGIN GO_BLOCK('IN_DOC');
 	FIRST_RECORD;
 	OPEN IN_DOCS;
 	LOOP
 		 
 		FETCH IN_DOCS INTO :IN_DOC.IN_ID,:IN_DOC.IN_DATE,:IN_DOC.IN_FROM,:IN_DOC.IN_STARTPROCESS,:IN_DOC.IN_PROCESSTIME,:IN_DOC.IN_SUBJECT,:IN_DOC.IMP_NAME; FD := :IN_DOC.IN_STARTPROCESS + :IN_DOC.IN_PROCESSTIME;
 		
 		 IF to_char(SYSDATE,'dd-mm-yyyy') >= to_char(FD,'dd-mm-yyyy') THEN
 			Set_Item_Instance_Property( 'IN_DOC.DUE', CURRENT_RECORD,VISUAL_ATTRIBUTE,'ATT1');
 			ELSE
 			Set_Item_Instance_Property( 'IN_DOC.DUE', CURRENT_RECORD,VISUAL_ATTRIBUTE,'ATT2'); 
 			END IF;
 			
 	M_D:= to_char(FD,'dd')- to_char(sysdate,'dd');
 	:IN_DOC.DUE := TO_DATE(M_D,'DD');
 		
 			
 		NEXT_RECORD;
     EXIT WHEN IN_DOCS%NOTFOUND;
 	  	
 	END LOOP;
 		
 	CLOSE IN_DOCS;
 	FIRST_RECORD;

END;



حيث أن العملية الحسابية التي تطرح التاريخين هي :

M_D:= to_char(FD,'dd')- to_char(sysdate,'dd');
 	:IN_DOC.DUE := TO_DATE(M_D,'DD');

ZZF.bmp

بتاريخ:

اليك التعديل اخي الكريم

DECLARE
FD DATE;
M_D CHAR(10);
CURSOR IN_DOCS IS 
SELECT IN_ID,IN_DATE,IN_FROM,IN_STARTPROCESS,
               IN_PROCESSTIME,IN_SUBJECT,IMP_NAME
   FROM IN_DOC,DEPT_MANAGER,IN_IMPORTANT 
 WHERE IN_TO_DEPT4 = DEPT_ID 
       AND IN_IMPORT = IMP_ID 
       AND IN_TO_DEPT4=5 
       AND IN_STATUSS IN (2,3,6,7,8);

BEGIN GO_BLOCK('IN_DOC');
FIRST_RECORD;
OPEN IN_DOCS;

for i in IN_DOCS
LOOP
:IN_DOC.IN_ID:=i.IN_ID;
:IN_DOC.IN_DATE:=i.IN_DATE;
:IN_DOC.IN_FROM:=i.IN_FROM;
:IN_DOC.IN_STARTPROCESS:=i.IN_STARTPROCESS;
:IN_DOC.IN_PROCESSTIME:=i.IN_PROCESSTIME;
:IN_DOC.IN_SUBJECT:=i.IN_SUBJECT;
:IN_DOC.IMP_NAME :=i.IMP_NAME;

FD := :IN_DOC.IN_STARTPROCESS + :IN_DOC.IN_PROCESSTIME;

IF to_char(SYSDATE,'dd-mm-yyyy') >= to_char(FD,'dd-mm-yyyy') THEN
Set_Item_Instance_Property( 'IN_DOC.DUE', CURRENT_RECORD,VISUAL_ATTRIBUTE,'ATT1');
ELSE
Set_Item_Instance_Property( 'IN_DOC.DUE', CURRENT_RECORD,VISUAL_ATTRIBUTE,'ATT2'); 
END IF;

M_D:= to_char(FD,'dd')- to_char(sysdate,'dd');
:IN_DOC.DUE := TO_DATE(M_D,'DD');

NEXT_RECORD;
END LOOP;

CLOSE IN_DOCS;
FIRST_RECORD;

END;

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

ولكن يا أخي الكريم لم يظهر لي أي نتيجة ..........

أي أنه لم يظهر خطأ ، ولكن لم يظهر أي سجل في الـ Tabulare


لماذا ؟

بتاريخ:

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

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

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

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

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

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

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.