hur.cn - 华软网

 热门搜索

数据窗口中属性设置为不可见的列插入值的问题

  作者:未知    来源:网络    更新时间:2018/8/6
我做一个小的学生信息管理系统,希望在学生信息录入的时候把学生用于登录网上成绩查询的密码设为当前录入的学号,代码如下:
string       ls_num,pwd
long         ll_row,ll_find,a



il_grow=tab_data.tabpage_2.dw_grid.RowCount()
tab_data.tabpage_1.dw_free.AcceptText()
ll_row=tab_data.tabpage_1.dw_free.GetRow()
ls_num=tab_data.tabpage_1.dw_free.GetItemString(ll_row,"stdid")//取得当前输入的学号
ll_find=tab_data.tabpage_2.dw_grid.Find("stdid= '"+ ls_num +"'",1,il_grow)
if ll_find>0 then
messagebox("","当前学号已经存在,请重新输入!")
return
else
a=tab_data.tabpage_1.dw_free.SetItem(ll_row,"pwd",ls_num)//将pwd 字段的值设成学号,返回的a值为1
pwd=tab_data.tabpage_1.dw_free.GetItemString(ll_row,"pwd")
MessageBox("",pwd)//此句调试时显示pwd值,与我想要的一样
tab_data.tabpage_1.dw_free.AcceptText()
tab_data.tabpage_1.dw_free.update()//更新时就出现问题了,说插入时pwd字段的值不能为空,而出现错误而数据插入失败
commit;
tab_data.tabpage_1.cb_add.Enabled=True
tab_data.tabpage_2.dw_grid.Retrieve()
end if
在做数据窗口对象时,pwd字段选入了,但Visble=False,是这个的原因吗?
用的是PB9.0

------华软网友回答------
和visibie无关咯.不是有错误提示么.是系统的还是你自己写的messagebox?根据他去找错咯.
------华软网友回复------
查看数据窗口:菜单rows->Update Properties...-> Updateable Columns是否选中pwd字段。

tab_data.tabpage_1.dw_free.AcceptText()
tab_data.tabpage_1.dw_free.update()//
commit;
应该改为:
tab_data.tabpage_1.dw_free.AcceptText()
if tab_data.tabpage_1.dw_free.update()=1 then//
commit;
else
rollback;
end if
------华软网友回复------
已经搞定,果然是更新属性里面没有选中那字段!      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。