当前位置: 代码迷 >> PB >> 数据窗口中点“保存”怎么实现重复项不可保存
  详细解决方案

数据窗口中点“保存”怎么实现重复项不可保存

热度:53   发布时间:2016-04-29 07:48:26.0
数据窗口中点“保存”如何实现重复项不可保存
窗口中有,tab,tab中有dw_1和一个“添加”,一个“保存”按钮控件,dw_1中的表是class,id是主键,想实添加数据后,点“保存”判断主键是否存在,否,才保存,但是,我点保存后,窗口没有反应,也没有提示,但在数据库中查找CLASS表却有刚添加的数据。我在“保存”控件写以下代码:
integer ll_row
string ls_lb_bh, is_status

ls_lb_bh=tab_1.tabpage_1.dw_1.getitemstring(1,"id")


if  ls_lb_bh = "" or isnull(ls_lb_bh) then
messagebox("提示信息","编号不能为空,请重新输入!")

return
end if

if is_status = "New" then 
  SELECT count(*)  
    INTO :ll_row
    FROM class 
 WHERE id = :ls_lb_bh;
 if ll_row > 0 then 
messagebox("提示信息","输入的编号已经存在,请重新输入!")
return
end if
end if


if tab_1.tabpage_1.dw_1.update() = 1 then
   tab_1.tabpage_1.dw_1.resetupdate()
commit; 
else
rollback;
messagebox("提示信息","数据保存失败!")
end if
------解决方案--------------------
if is_status = "New" then 

这个状态的值,你在哪里取的啊?

应该是
if tab_1.tabpage_1.dw_1.GetItemStatus(1,0,Primary!) = NewModified! then 
 SELECT count(*)  
    INTO :ll_row
    FROM class 
 WHERE id = :ls_lb_bh;
 if ll_row > 0 then 
messagebox("提示信息","输入的编号已经存在,请重新输入!")
return
end if
end if

  相关解决方案