بتاريخ: 6 يونيو 20179 سنة comment_287294 لو سمحت انا انشأت شاشه فيها بلوك manually بس بيظهر الدتا من تيل في داتا بيز عاوزة امسح ريكورد الي اكون واقفة عليه بيروح يمسح داتا كلها مش الي وقفه علي بس حد يقدر يفدني ازاي اخلي بلوك لما اقف علي ركورد دة هو دة الي يتمسح بس دة الكود الي كتباة جوة البوتن DECLARE V NUMBER; begin go_block('block9'); first_record; loop select count(card_id) into v FROM ATTRANS where card_id = :TC AND DATE_ATT = :T3; if v=1 then for z in (select * from attrans where DATE_ATT = :block9.t3 and CARD_ID = :block3.tc) loop if to_char(z.TIME_ATT,'hh24')<12 and z.CARD_ID = :block3.tc and z.DATE_ATT = :block9.t3 and :block9.t5 is not null then delete from attrans where time_att = :block9.t5 and date_att =:block9.t3 and CARD_ID = :block3.tc ; -- Delete_Record(); commit; end if; end loop; end if; exit when :block9.t3 is null; next_record; end loop; commit; end; تقديم بلاغ
بتاريخ: 6 يونيو 20179 سنة comment_287296 انتى كاتبه كود ليه؟! عندك زرار "حذف ريكورد" في الـ toolbar. - او حطى الزرار على نفس البلوك واكتبى delete_record لو مش عايزة الى في الـ toolbar. تقديم بلاغ
بتاريخ: 6 يونيو 20179 سنة كاتب الموضوع comment_287300 كتبه كود عشان دة مش بلوك wizard ولما بكتب delete record بيمسح من البلوك لكن بيفضل موجود في داتا بيز تقديم بلاغ
بتاريخ: 6 يونيو 20179 سنة comment_287302 طيب ليه عاملة لووب وكل الكود ده؟! لو عاوزة تمسحى الريكورد الى انتى واقفة عليه بس, اكتبى جملة delete بدلالة البرايمارى كى الى معاكى في البلوك. delete from table where pk = :pk_item_on_block; delete_record; forms_dll('commit'); تقديم بلاغ
بتاريخ: 7 يونيو 20179 سنة comment_287348 زي ما قال الأخ اسلام الجملة اللي انت كاتباها خديها فقط وحطيها تحت الزر (button) فهيكون الكود كالتالي delete from attrans where time_att = :block9.t5 and date_att =:block9.t3 and CARD_ID = :block3.tc ; delete_Record ; Forms_ddl('commit') ; ومن غير ما تكتبي اللوب ولا أي كود اضافي تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.