oracle form中实现隐藏,Oracle Form数据块实现同时只有一个人锁定修改数据
在上一篇中文章中,如果建立了數(shù)據(jù)塊的四個觸發(fā)器,并在觸發(fā)器中調(diào)用了程序單元中對應數(shù)據(jù)塊名的包,則在這個包中還需調(diào)用專門用于實現(xiàn)插入行、鎖定行、更新行、刪除行的包MAIN_PVT。在這個包MAIN_PVT中主要調(diào)用的是數(shù)據(jù)塊中的存儲過程實現(xiàn)插入行、鎖定行、更新行、刪除行的功能:
PACKAGE BODY main_pvt IS
/*=====================================
** PROCEDURE:?? insert_row()
**=====================================*/
PROCEDURE insert_row IS
BEGIN
fnd_standard.set_who;
IF :main_v.id IS NULL THEN
SELECT main_s.nextval??????? --序列作為唯一值賦值給數(shù)據(jù)塊的ID字段
INTO :main_v.id
FROM dual;
END IF;
cux_main_pkg.insert_row(x_row_id???????????? => :main_v.row_id,
x_insp_header_id???? => :main_v.id,
p_org_id???????????? => :main_v.org_id,
p_doc_type_class???? => :main_v.doc_type_class,
p_inspection_number? => :main_v.external_check_list,
p_status???????????? => :main_v.status,
p_oe_header_id?????? => :main_v.oe_header_id);
end insert_row;
/*=====================================
** PROCEDURE:?? lock_row()
**=====================================*/
PROCEDURE lock_row IS
i NUMBER := 0;
BEGIN
LOOP
BEGIN
i := i + 1;
cux_main_pkg.lock_row(p_insp_header_id???? =>?:main_v.id,
p_org_id???????????? => :main_v.org_id,
p_doc_type_class???? => :main_v.doc_type_class,
p_inspection_number? => :main_v.external_check_list,
p_status???????????? => :main_v.status,
p_oe_header_id?????? => :main_v.oe_header_id);
RETURN;??? --如果成功鎖住記錄,沒有發(fā)生異常,則跳出整個lock_row函數(shù)或過程,不再往下執(zhí)行
EXCEPTION
WHEN app_exception.record_lock_exception THEN
app_exception.record_lock_error(i);
END;
END LOOP;
END lock_row;
/*=====================================
** PROCEDURE:?? update_row()
**=====================================*/
PROCEDURE update_row IS
BEGIN
fnd_standard.set_who;
cux_main_pkg.update_row(p_insp_header_id???? => :main_v.insp_header_id,
p_org_id???????????? => :main_v.org_id,
p_doc_type_class???? => :main_v.doc_type_class,
p_inspection_number? => :main_v.external_check_list,
p_status???????????? => :main_v.status,
p_oe_header_id?????? => :main_v.oe_header_id
);
END update_row;
/*=====================================
** PROCEDURE:?? delete_row()
**=====================================*/
PROCEDURE delete_row IS
BEGIN
cux_main_pkg.delete_row(p_insp_header_id => :main_v.insp_header_id);
END delete_row;
END main_pvt;
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎總結(jié)
以上是生活随笔為你收集整理的oracle form中实现隐藏,Oracle Form数据块实现同时只有一个人锁定修改数据的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python模块如何导入解释器_无法从嵌
- 下一篇: cmd255command.execut