在 Oracle 中撤消 POST
任何人都可以想出一种方法来撤销已在 Oracle Forms 中发出的 POST 吗?笔记;这是一个 POST,而不是 COMMIT。
它非常复杂,但基本上我需要 POST,以便我可以查询通常会创建的一些记录,但稍后我可能需要更改一些值。这需要我撤消之前的 POST。
我尝试过 ROLLBACK(和 ROLLBACK TO),但在这种情况下 Oracle Forms 会清除整个表单,当我只需要更改 1 个值时,这几乎没有用处。
Can anyone think of a way to reverse a POST that has been issued in Oracle Forms? Note; this is a POST, not COMMIT.
Its quite complex but basically I need to POST so I can query against some records that will normally be created but at a later point I may need to change some values. This requires me to undo the previous POST.
I've tried a ROLLBACK (and ROLLBACK TO) but Oracle Forms clears the entire form in this case, which is pretty useless when I only need to change 1 value.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
发布对我来说也一直很麻烦......就我个人而言,当我尝试进行“发布”时,事情会变得复杂。
相反,我会将两种形式合并为一种,主块位于顶部,详细块位于底部。
如果字段数量会导致大量垂直滚动,您始终可以将主块放在一个选项卡上,将详细块放在第二个选项卡上。
当然,请记住,只有在可能的情况下并且只有在这样做有意义的情况下才进行合并。
Post has always been troublesome for me also... Personally, when I I try to do a "post" things get complicated.
Instead I would merge the two forms into one with master block on top and detail block on bottom.
If the the number of fields would cause a lot of vertical scrolling you can always put the master block on a tab and the detail block on a second tab.
Of course remember to only merge if possible and only if it makes sense to do such a thing.
我认为另一个值得考虑的选择是使用 ON COMMIT DELETE ROWS 的全局临时表;您的表单可以随心所欲地插入/更新/查询该表,并使用 POST 将行获取到表中;然后,当用户点击“保存”时,表单的 PRE-COMMIT 触发器可以将行从 GTT 复制到“真实”表。
I think another option to consider is a global temporary table with ON COMMIT DELETE ROWS; your form could insert/update/query this table all it likes, with POST to get the rows into the table; then when the user hits Save, the form's PRE-COMMIT trigger could copy the rows from the GTT to the "real" table.