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;
原文地址:https://www.cnblogs.com/chenyongjun/p/3854822.html