一个比较难的问题,谁能帮忙解决一下阿!

njscorpio 2003-01-14 10:20:21
要求:
1、判断一行的数据是否被修改,如果被修改就在修改日期列添加当前日期
2、如果数据又改成修改前的前的数据就取消修改日期。

实在是想不出来了,我的表已经做好不想动表,有什么办法在不动表结构的前提下解决这个问题阿!

大家帮忙阿,急!这个写完程序就结了!5555555
...全文
23 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
bomber2001 2003-01-14
  • 打赏
  • 举报
回复
1、GetNextModified()/getitemstatus都可以,就是看个人的使用习惯
2、是同一次修改,还是在不同时间打开窗口的情况下,修改,如果在不同情况下,表中最后又一个保存上次时间的缓冲时间字段,如果是同一次的话,可以用变量缓冲
njscorpio 2003-01-14
  • 打赏
  • 举报
回复
to:andyzq(小强)
不好意是我没有写清楚,我说的改回原来的数据是该烈第一次被赋予的值
andyzq 2003-01-14
  • 打赏
  • 举报
回复
1.用GetNextModified()函数可以很好的解决,该函数的作用是找到被修改过的
记录所在的行号,用法可以查看帮助。

2.一个思路,在未做任何修改之前,把该datawindow中的全部数据(或者主键和
时间)考到一个datastore中,在dw_1中的itemchanged事件中判断,如果修改了时间,那么就查找该条记录在datastore中相应记录的时间并进行比较,然后就是
你的比较内容和其他代码.
njscorpio 2003-01-14
  • 打赏
  • 举报
回复
xiaozg118(肖)
详细点阿,没有写过这种东东
xiaozg118 2003-01-14
  • 打赏
  • 举报
回复
判断当前的数据和原始缓冲区中的数据是否一致
是:修改你的DATE字段
否:该干嘛干嘛
njscorpio 2003-01-14
  • 打赏
  • 举报
回复
getitemstatus可以解决第一问题,第二个还是解决不了阿
larryxiang 2003-01-14
  • 打赏
  • 举报
回复
dwitemstatus l_itemstatus
date ld_date

l_itemstatus = dw_1.getitemstatus( dw_1.getrow(), 0, primary!)
//判断是否被修改过
if l_itemstatus = DataModified! or l_itemstatus = NewModified! then
/*
设置日期
*/
end if
njscorpio 2003-01-14
  • 打赏
  • 举报
回复
能详细点吗?
larryxiang 2003-01-14
  • 打赏
  • 举报
回复
用getitemstatus试试.

611

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder DataWindow
社区管理员
  • DataWindow社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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