Oracle Form中的旧值和新值 [英] Old and new values in Oracle Form

查看:116
本文介绍了Oracle Form中的旧值和新值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用Oracle Forms.我有一个名为SOLD_TO_CUST_PARTY_NAME的字段.如果我检测到该字段的值发生变化,则必须执行一个过程.我尝试使用when_validate,但是即使您仅单击该字段并移至另一个字段,它也会执行(无论是否更改该值,始终都会进行验证).无论如何,只有在修改了该字段的情况下,我才可以检查:old:new或类似的东西来执行进程吗?

I'm working with Oracle Forms. I have a field named SOLD_TO_CUST_PARTY_NAME. I have to execute a process if I detect a change in the field's value. I tried using when_validate, but it's executed even if you just click the field and move to another field (validation ALWAYS occurs whether you change the value or not). Is there anyway I can check :old and :new or something similar to execute a process only if the field is modified?

不能使用个性化设置.必须使用pl/sql完成.

Can't use personalizations. It has to be done with pl/sql.

推荐答案

有一个称为数据库值的属性,您可以通过该属性检查字段是否已修改,如果尚未修改,则只需退出验证触发器即可.

There is a property called database value that let you check if the field has been modified and if it has not you just have to exit the validation trigger.

例如.


    BEGIN

    IF :BLOCK.ITEM = GET_ITEM_PROPERTY('BLOCK.ITEM', database_value) THEN
     RETURN;
    END IF;

     /* VALIDATION */

    END;

这篇关于Oracle Form中的旧值和新值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆