Foxtable(狐表)用户栏目专家坐堂 → [求助]新手求学,关于事件


  共有29414人关注过本帖树形打印复制链接

主题:[求助]新手求学,关于事件

帅哥哟,离线,有人找我吗?
狐狸爸爸
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/6/29 15:17:00 [显示全部帖子]

3楼的带脉没有问题,没有出现对话框,说明不符合你设置的条件,所有没有出现。

你可以看看这个,在供应商合同列输入字符“我”,就会出现提示

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目119.table


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/6/29 16:04:00 [显示全部帖子]

内外都一样,编写程序没有任何差别的.

建议你把代码改为:

MessageBox.Show(e.DataCol.Name & "|" & e.NewValue & (e.datacol.name="供应商合同" AndAlso e.newvalue="我"))
if e.datacol.name="供应商合同" AndAlso e.newvalue="我" then
    MessageBox.Show(user.name,"请注意",MessageBoxButtons.YesNo, MessageBoxIcon.Question)
end if

这样就能检查关键的内容,例如列名、新输入的值,是否符合设置的条件,一目了然,调试通过再删除第一行代码。


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
[原创]foxtable 函数有没有感应 刚刚学习  发帖心情 Post By:2009/6/29 16:13:00 [显示全部帖子]

没有道理的
发文件上来,外部数据源一起发上来。
如果是SQL SERVER,导出为ACCESS文件后压缩一下,一起发上来。

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/6/29 16:20:00 [显示全部帖子]

你锁门了,我进不去,密码呢?

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/6/29 16:28:00 [显示全部帖子]

呵呵,很简单的问题:

if e.datacol.name="供应商合同号" AndAlso e.newvalue="我" then
    MessageBox.Show(user.name,"请注意",MessageBoxButtons.YesNo, MessageBoxIcon.Question)
end if


你少输入了一个号字,看来你没有真正体会我在9楼贴出的代码的含义。
[此贴子已经被作者于2009-6-29 16:29:09编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/6/29 16:53:00 [显示全部帖子]

既然是代码,想怎样都行。

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/6/29 21:21:00 [显示全部帖子]

不明白你具体的要求. 既然是代码,就没有不可能表述的逻辑,不过要先多看两次帮助,掌握基本原理和方法.
[此贴子已经被作者于2009-6-29 21:24:47编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/6/30 9:17:00 [显示全部帖子]

以下是引用roy78在2009-6-30 9:06:00的发言:

局域网的两台电脑均使用的是同一项目,连接的是同一数据库的数据,我的目的就是,当其中某一台电脑对当前列的内容作出修改后(这里暂时不谈条件是否满足),只要是对当前列作出了修改,希望另一台使用此项目的电脑也会弹出窗口.(此处的弹出窗口就是此贴的求助例)


呵呵,原来这样啊,有点怪的要求。
如果某用户编辑后没有保存,另一个用户怎么知道对方已经编辑了?
除非每编辑一次就保存一次,另一个用户不停地用SQLCommand命令查找是否有符合特定条件的记录,如果有,则同步这些记录,甚至重新加载数据。
但是性能呢? 而且这对一般用户来说,显得过于复杂,实在是没有必要。

个人觉得,不要这样做的,最好放弃这样的想法。

[此贴子已经被作者于2009-6-30 9:18:47编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/6/30 9:39:00 [显示全部帖子]

Foxtable早就考虑了这种需要。

合理的做法就是加入标志列,处理完一个流程后,该标志列就设置为一个特定的值,然后保存。
任何人在处理某行数据之前,先同步此行,只有标志列的值符合要求,才可以处理下一个流程。
通过适当的编码,可以高效率地实现工作流。

Load


重新加载行。

如果其他人已经修改并保存此行,执行此方法,即可将该行最新的内容同步显示在表中。


语法:


Load(preserve)


preserve:可选参数,逻辑性,是否保留已经做出的修改,默认为True,也就是保存。


例如重新加载订单表的第二行:


DataTables
("订单").DataRows(1).Load()


如果要重新加载整个表,请执行DataTable的Load方法,那样效率会比逐行重新加载高很多。


如果将preserve参数设为False,可以撤销对某一行做出的修改,例如撤销对订单表第二行的修改:


DataTables
("订单").DataRows(1).Load(False)


如果只希望撤销修改,而不需要重新加载数据,请使用RejectChanges方法。

[此贴子已经被作者于2009-6-30 9:39:36编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/6/30 9:46:00 [显示全部帖子]

内容来自帮助,建议你先多看两次帮助,再动手,特别是Foxtable编程这一章。


 回到顶部
总数 11 1 2 下一页