叼起烟头 发表于 2015-9-23 11:38:02

EBS Form中数据提交方式(COMMIT)


[*]
commit
  对 f o rm 和数据库进行提交,如果 form 上面的数据和代码中的数据变动有冲突,最后以 FORM 上的为准。
  适用情况:一般来在直接使用 DML 代码修改数据时,就使用 commit。


[*]
commit_form
  先对form上的变动数据commit,再对代码中类似的DML语句进行提交,当两次提交有冲突时以DML语句的提交为准。
  适用情况:直接在FORM上修改数据时,可以使用。


[*]
do_key(‘commit_form’)
  会首先寻找 form 下的 triggers 中的 KEY-COMMIT 这个 trigger, 并执行 KEY-COMMIT 中所写的代码。如果没有 KEY-COMMIT 这个 trigger,则会针对 form 和代码一起提交。如果 form 上面的数据变动和代码中的数据变动有冲突,最后以界面上的为准。


[*]
forms_ddl(‘commit’)
  只针对代码中的 update, insert,delete 语句进行提交,不会提交Form界面变动的数据。一般不用。


[*]
quietcommit
  如果使用commit_form的话会弹出信息提示"没有修改需要保存"或者"XXX记录已保存"。如果你不想提示出现,则可以调用APPCORE.pll中的app_form包中的函数quietcommit。该函数返回值为boolean类型,提交成功返回True,否则False.
  例子:



IF NOT app_form.quietcommit THEN
RAISE form_trigger_failure;
END IF;
页: [1]
查看完整版本: EBS Form中数据提交方式(COMMIT)