数据窗口中点“保存”如何实现重复项不可保存
窗口中有,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