您的位置:首页 > 其它

Oralce Form开发:判断BLOCK中的重复值

2013-07-17 13:47 190 查看
1. 创建函数:cux_com

Function cux_com(str1 Varchar2, str2 Varchar2) Return Number Is
l_return Number := 0;
Begin
If Upper(str1) = Upper(str2) Then
l_return := 1;
Else
l_return := 0;
End If;
Return l_return;
End;


2. 判断重复的BLOCK:Req_acc;控制BLOCK: Control



2.1 在BLOCK:Req_acc\ Control属性设置“查询所有记录” 为 “是”:



Contorl设置如下:



2.2. 在CONTROL 数据块中增加Item:

COUNT_ITEM (Data Type:Number)





2.3 PRE_DATA :普通的char型item即可(用于)

2.4.在BLOCK:Req_ac中增加ITEM:

FLAG(Data Type:Number):

增加公式:(下面的连接附,表示编号跟描述同时相同为重复)

cux_com(:Control.Pre_data,:Req_acc.Acc_code || :Req_acc.Acc_desc)










3. 添加BLOCK:Req_ac的when_validate_record触发器,触发器中的代码为:

:Control.Pre_data := :Req_acc.Acc_code || :Req_acc.Acc_desc; --用来判断重复的字符,多字段可以累加,对应flag公式
If :Control.Count_item > 1 Then
fnd_message.debug('存在重复数据!');
Raise form_trigger_failure;
End If;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: