如何判断数据窗口的某列的数据是新增还是没有更改过?
用户注册数据窗口的psw列(密码),最后在数据窗口保存时,是经过MD5加密的。这是保存按钮中的一段代码
ls_pass = f_md5(ls_pass)
dw_1.setitem(li_row , 'psw' , ls_pass)
当只修某用户的改权限时,点击保存按钮,密码列又被MD5加密然后写入数据库,导致用户密码错误,请问如何判断pws列数据没有修改呢?
我查看了帮助文件用这段代码,但是得不到结果
dwitemstatus l_statusl_status = dw_1.getitemstatus(dw_1.getrow(), "psw", Primary!)
密码既然加密了,那就不要这样的界面,单独一个界面来处理密码。修改密码前要输入一次原来的密码,或者更高级用户的密码才能修改。 if (isnew(),1,0) ehxz 发表于 2014-6-15 19:58
密码既然加密了,那就不要这样的界面,单独一个界面来处理密码。修改密码前要输入一次原来的密码,或者更高 ...
看来真的要把注册用户和权限设置分开了,本想这样能把2个窗口合并一个窗口,没想到带来这个麻烦。
LONG ll_Row
ll_Row=dw_Data.GetRow()
IF ll_Row<1 THEN REURN -1
DWITEMSTATUS ldwis_Status
ldwis_Status=dw_Data.GetItemStatus(ll_Row,0,Primary!)
IF ldwis_Status=New! OR ldwis_Status=NewModified! THEN
STRING ls_Password
ls_Password=dw_Data.Object.S_Password
dw_Data.Object.S_Password=gnv_cst_MD5.of_Encrypt(ls_Password)
END IF
如果看不懂就没有办法帮你了 回答的非常好!!学习!
longll_row , ll_select_sum, a , b
string ls_jh_id , ls_ccode
dwItemStatus l_status
ll_row = dw_1.rowcount( )
if ll_row = 0 thenreturn
if dw_1.AcceptText()<> 1 then return
for b=1 toll_row
if string(dw_1.object.data ) ='1'then
ls_jh_id= ls_jh_id+string(dw_1.object.data ) + ","
ll_select_sum = ll_select_sum + 1
end if
l_status=dw_1.GetItemStatus(b, 4, Primary!)
ifl_status <> NotModified! then a = a + 1
next
页:
[1]