如何用简单的方法,确定数据窗口(freeform)中具体那些字段被修改了,然后,update这些字段?

mashansj 2001-12-20 08:54:07
...全文
97 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
cctcj 2001-12-21
  • 打赏
  • 举报
回复
如何改变列的字体颜色,提醒用户此列已做修改
---- 在列的Color属性中,输入如下表达式
IF (column_name < >column_name.Original, RGB(255, 0, 0), RGB(0, 0, 0))。
在这个条件中,如果此列已改变,则显示红色字体,否则显示黑色字体。这个表达式主要用
column_name < > column_name.Original比较当前列的值和原始列的值是否相同来达到判断的目的。
kkbgp 2001-12-21
  • 打赏
  • 举报
回复
其实你使用update()函数的时候,系统更新的就是被修改过的数据,干嘛你还要去判断哪些被修改呀,况且你知道哪些字段内容被修改,难道你使用update语句去更新不成?

不知我理解是否有误
zhugejunshi 2001-12-21
  • 打赏
  • 举报
回复
IF dw_1.ModifiedCount() > 0 THEN
rtn=dw_1.Update()
end if


if rtn = 1 then

Commit Using SQLCA;
MessageBox("成功","保存结果成功!")
cb_3.enabled=false
else
MessageBox("失败","某一项不能为空")

rollback using sqlca;
end if
dw_1.retrieve()
nobody3721 2001-12-21
  • 打赏
  • 举报
回复
说说我用的办法,也许不是很好:
在DW的ITEMCHANGED事件中写代码,用GETCOLUMNNAME()或GETCOLUMN()就可以得到被修改的列,
如果要马上修改,当然是调UPDATE()
lianghua_21cn 2001-12-20
  • 打赏
  • 举报
回复
笨办法(仅供参考):使用getitemstatus,可以查帮助啊。他可以判断某行某列是否被修改。
mashansj 2001-12-20
  • 打赏
  • 举报
回复
detail
dotnba 2001-12-20
  • 打赏
  • 举报
回复
dw_1.Object.Data.Primary.Current
dw_1.Object.Data.Primary.Original

1,108

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧