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

مساعده في مشكله على شاشة Master/ Detail

Featured Replies

بتاريخ:

السلام عليكم ورحمة الله
أريد ان اقوم بعمل

3 bock

هي عباره عن

Master XX_BLOCK1

Detail XX_BLOCK2


قمت بعمل
Master
وهي عباره عن
LOV
يتم الأستعلام بها ويقوم بوضع القيمة في
Detail
وهي عباره عن 10
row Tabulre

المطلوب ان أقوم بوضع بلوك 3
XX_BLOCK3


يرتبط مع الماستر

بحيث عندما أقوم بعمل
(Y,N check Box
يتم عمل تخزين البيانات وهي تاريخ اليوم

في جدول جديد قمت بإنشائه بشكل جديد
create Table
CREATE TABLE XX_AUDIT_CHECK
(
CHECK_ID NUMBER(15),
CHECK_NO NUMBER(15),
CHECK_CONDITION VARCHAR2(2 BYTE),
DATE_CHECK DATE,
USER_CHECK VARCHAR2(50 BYTE),
REMARK VARCHAR2(200 BYTE),
UPDATE_NAME VARCHAR2(100 BYTE)
)

KEY-NEXT-ITEM
CHECK_NO
على البلوك الجديد وهو رقم 3
وعملت CURSORE
كما يلي


Declare



cursor c is select NVL(CHECK_ID,'0'),NVL(CHECK_NO,'0'),NVL(CHECK_CONDITION,'N'),NVL(date_check,sysdate),NVL(USER_CHECK,FND_GLOBAL.USER_NAME),NVL(remark,''),NVL(UPDATE_NAME,FND_GLOBAL.USER_NAME) -- empno,ename,job,mgr,hiredate,sal,comm,deptno


from XX_BLOCK3 where CHECK_NO=:XX_BLOCK2.CHECK_NO;




v_CHECK_ID XX_BLOCK3.CHECK_ID%type;


v_CHECK_NO XX_BLOCK3.CHECK_NO%type;


v_CHECK_CONDITION XX_BLOCK3.CHECK_CONDITION%type;


v_date_check XX_BLOCK3.date_check%type;


v_USER_CHECK XX_BLOCK3.USER_CHECK%type;


v_remark XX_BLOCK3.remark%type;


v_UPDATE_NAME XX_BLOCK3.UPDATE_NAME%type;


--v_deptno emp.deptno%type;



BEGIN


IF :system.cursor_record='1' THEN


go_item(':XX_BLOCK3.CHECK_ID');


open c;


loop


fetch c into v_CHECK_ID,v_CHECK_NO,v_CHECK_CONDITION,v_date_check ,v_USER_CHECK,v_remark,v_UPDATE_NAME;



:XX_BLOCK3.CHECK_ID:=v_CHECK_ID;


:XX_BLOCK3.CHECK_NO:=v_CHECK_NO;


:XX_BLOCK3.CHECK_CONDITION:=v_CHECK_CONDITION ;


:XX_BLOCK3.date_check:=v_date_check ;


:XX_BLOCK3.USER_CHECK:=v_USER_CHECK;


:XX_BLOCK3.remark:=v_remark;


:XX_BLOCK3.UPDATE_NAME:=v_UPDATE_NAME;


-- :control.deptno:=v_deptno;


next_record;


exit when c%notfound;


end loop;


end if;









if :XX_BLOCK3.CHECK_NO is null then



message('You must enter DATA);


message('You must enter DATA);



else







open c;


loop


fetch c into v_CHECK_ID,v_CHECK_NO,v_CHECK_CONDITION,v_date_check ,v_USER_CHECK,v_remark,v_UPDATE_NAME;



:XX_BLOCK3.CHECK_ID:=v_CHECK_ID;


:XX_BLOCK3.CHECK_NO:=v_CHECK_NO;


:XX_BLOCK3.CHECK_CONDITION:=v_CHECK_CONDITION ;


:XX_BLOCK3.date_check:=v_date_check ;


:XX_BLOCK3.USER_CHECK:=v_USER_CHECK;


:XX_BLOCK3.remark:=v_remark;


:XX_BLOCK3.UPDATE_NAME:=v_UPDATE_NAME;


-- :control.deptno:=v_deptno;


next_record;


exit when c%notfound;


end loop;


end if;




close c;


exception


when no_data_found then



go_item(':XX_BLOCK3.CHECK_ID');



end;


Declare



cursor c is select NVL(CHECK_ID,'0'),NVL(CHECK_NO,'0'),NVL(CHECK_CONDITION,'N'),NVL(date_check,sysdate),NVL(USER_CHECK,FND_GLOBAL.USER_NAME),NVL(remark,''),NVL(UPDATE_NAME,FND_GLOBAL.USER_NAME) -- empno,ename,job,mgr,hiredate,sal,comm,deptno


from XX_BLOCK3 where CHECK_NO=:XX_BLOCK2.CHECK_NO;




v_CHECK_ID XX_BLOCK3.CHECK_ID%type;


v_CHECK_NO XX_BLOCK3.CHECK_NO%type;


v_CHECK_CONDITION XX_BLOCK3.CHECK_CONDITION%type;


v_date_check XX_BLOCK3.date_check%type;


v_USER_CHECK XX_BLOCK3.USER_CHECK%type;


v_remark XX_BLOCK3.remark%type;


v_UPDATE_NAME XX_BLOCK3.UPDATE_NAME%type;




BEGIN


IF :system.cursor_record='1' THEN


go_item(':XX_BLOCK3.CHECK_ID');


open c;


loop


fetch c into v_CHECK_ID,v_CHECK_NO,v_CHECK_CONDITION,v_date_check ,v_USER_CHECK,v_remark,v_UPDATE_NAME;



:XX_BLOCK3.CHECK_ID:=v_CHECK_ID;


:XX_BLOCK3.CHECK_NO:=v_CHECK_NO;


:XX_BLOCK3.CHECK_CONDITION:=v_CHECK_CONDITION ;


:XX_BLOCK3.date_check:=v_date_check ;


:XX_BLOCK3.USER_CHECK:=v_USER_CHECK;


:XX_BLOCK3.remark:=v_remark;


:XX_BLOCK3.UPDATE_NAME:=v_UPDATE_NAME;


-- :control.deptno:=v_deptno;


next_record;


exit when c%notfound;


end loop;


end if;









if :XX_BLOCK3.CHECK_NO is null then



message('You must enter DATA);


message('You must enter DATA);



else







open c;


loop


fetch c into v_CHECK_ID,v_CHECK_NO,v_CHECK_CONDITION,v_date_check ,v_USER_CHECK,v_remark,v_UPDATE_NAME;



:XX_BLOCK3.CHECK_ID:=v_CHECK_ID;


:XX_BLOCK3.CHECK_NO:=v_CHECK_NO;


:XX_BLOCK3.CHECK_CONDITION:=v_CHECK_CONDITION ;


:XX_BLOCK3.date_check:=v_date_check ;


:XX_BLOCK3.USER_CHECK:=v_USER_CHECK;


:XX_BLOCK3.remark:=v_remark;


:XX_BLOCK3.UPDATE_NAME:=v_UPDATE_NAME;



next_record;


exit when c%notfound;


end loop;


end if;




close c;


exception


when no_data_found then


message('no data');


go_item(':XX_BLOCK3.CHECK_ID');



end;






المشكله

عندما أقوم بعمل RUn

يأتي فقط الريكورد الأول مفعل فقط والباقي يكون غير مفعل

ويقوم بتخزين البيانات فقط
للريكورد الأول لجميع
ال Row وبنفس قيمة الريكورد الأول

  • بعد 8 شهور...
بتاريخ:

مساعده في مشكله على شاشة Master/ Detail

لدي فورم رواتب الموظفين master هو تاريخ الراتب lov في حال الدخول الى الفورم يطلب مني مباشرة شهر الراتب مثلا 2/2012

detail عبار عن رقم الموظف واسمه والراتب الاساسي love يحضرهم جميعم من جدول الموظفين وادخل البيانات على جدول الرواتب وهي
العلاوات والخصومات لكن لدي مشكلتين
اولا اريد عندما اعطيه شهر الراتب ان يطبع لي جميع الموظفين التي حالتهم 'يعمل' ويستثني الذين حالتهم 'انتهت خدماتهم' وبدون تكرار
والمشكلة الثانية انه لايخزن معلومات التي ادخلها على detail عند التخزين يعود الى master وتظهر رساله كما في الصورة المرفقة

كما انني اريد ارفاق موظوع على الموقع ولم اعرف الرجاء مساعدتي

post-129555-184412_thumb.jpg

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

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

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

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

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

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.