概述
在上一篇中文章中,如果建立了数据块的四个触发器,并在触发器中调用了程序单元中对应数据块名的包,则在这个包中还需调用专门用于实现插入行、锁定行、更新行、删除行的包MAIN_PVT。在这个包MAIN_PVT中主要调用的是数据块中的存储过程实现插入行、锁定行、更新行、删除行的功能:
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 --序列作为唯一值赋值给数据块的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; --如果成功锁住记录,没有发生异常,则跳出整个lock_row函数或过程,不再往下执行
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;
最后
以上就是精明小鸭子为你收集整理的oracle form中实现隐藏,Oracle Form数据块实现同时只有一个人锁定修改数据的全部内容,希望文章能够帮你解决oracle form中实现隐藏,Oracle Form数据块实现同时只有一个人锁定修改数据所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复