我之前都是做CS的,在CS里比较容易控制,如果A先开发了001,在服务器端作一个标记,如果B也打开了001,这时B的界面只能只读的,并提示B当前的表单已经被谁打开了。
12 个解决方案
#1
你那个只读的方法,同样可以用啊
#2
在BS里不太好控制界面只读吧,
在CS里:当退出当前界面时 将服务端标记的界面打开的消息去掉,在BS里如何实现?,当点击 浏览器的关闭按钮 或 直接 结束浏览器的进程,BS系统如何捕捉当前用户已经退出了某个表单的页面?
#3
遍历一下页面控件,通通设为只读或者直接把提交按钮禁用就好的,剩下的你CS怎么做的BS就怎么做
#4
BS是在你点击保存时检查的,所以用你原来的数据库设计办法是可行的。
如果你要再做得好一点儿,做得能实时检查是否有其它人在修改,可以用ajax把保存禁用或是解除禁用。
如果你要再做得好一点儿,做得能实时检查是否有其它人在修改,可以用ajax把保存禁用或是解除禁用。
#5
打开后,直接对记录进行锁定处理
#6
每隔5秒,用ajax判定一次状态,如果还是当前SessionID操作,就更新一下时间,如果长时间没有更新状态,说明对方已经离开
#7
你的这个长时间是多长时间?
#8
随你定义啊,如果这条记录的最后更新时间超过1分钟,你还给他操作吗? 总之比你的5秒+加载页面的时间大就行了
#9
这得多浪费服务器资源啊?
#10
cs中你如果a一直不提交怎么办?就一直占用着?
可以给后修改的人一个提示信息,提示数据已经被其他人修改过,是否仍然要继续修改
可以给后修改的人一个提示信息,提示数据已经被其他人修改过,是否仍然要继续修改
#11
假如用户修改表单 修改了一半,出去上了一个厕所(假设10分钟),如果按你说的 意思的话,那么这个用户是放弃修改了,其他用户可以修改这个表单。 但对于这个用户来说 他没有放弃当前修改的东西。
我个人觉得 最好是 客户端浏览器 主动通知 服务端 用户放弃或结束了表单的编辑,但现在不知道 如果 用户浏览器关闭浏览器 或结束浏览器进程,这是服务端如何知道?
不知道其他成熟的ERP BS系统是如何实现这样的功能的,比如说用友金蝶等。。。
#12
只要他还停留在当前页面,不管人在不在,js都会定时触发服务器,更新最后时间的啊,如果最后时间离现在已经很久了,说明这条信息没有人在占用
#1
你那个只读的方法,同样可以用啊
#2
在BS里不太好控制界面只读吧,
在CS里:当退出当前界面时 将服务端标记的界面打开的消息去掉,在BS里如何实现?,当点击 浏览器的关闭按钮 或 直接 结束浏览器的进程,BS系统如何捕捉当前用户已经退出了某个表单的页面?
#3
遍历一下页面控件,通通设为只读或者直接把提交按钮禁用就好的,剩下的你CS怎么做的BS就怎么做
#4
BS是在你点击保存时检查的,所以用你原来的数据库设计办法是可行的。
如果你要再做得好一点儿,做得能实时检查是否有其它人在修改,可以用ajax把保存禁用或是解除禁用。
如果你要再做得好一点儿,做得能实时检查是否有其它人在修改,可以用ajax把保存禁用或是解除禁用。
#5
打开后,直接对记录进行锁定处理
#6
每隔5秒,用ajax判定一次状态,如果还是当前SessionID操作,就更新一下时间,如果长时间没有更新状态,说明对方已经离开
#7
你的这个长时间是多长时间?
#8
随你定义啊,如果这条记录的最后更新时间超过1分钟,你还给他操作吗? 总之比你的5秒+加载页面的时间大就行了
#9
这得多浪费服务器资源啊?
#10
cs中你如果a一直不提交怎么办?就一直占用着?
可以给后修改的人一个提示信息,提示数据已经被其他人修改过,是否仍然要继续修改
可以给后修改的人一个提示信息,提示数据已经被其他人修改过,是否仍然要继续修改
#11
假如用户修改表单 修改了一半,出去上了一个厕所(假设10分钟),如果按你说的 意思的话,那么这个用户是放弃修改了,其他用户可以修改这个表单。 但对于这个用户来说 他没有放弃当前修改的东西。
我个人觉得 最好是 客户端浏览器 主动通知 服务端 用户放弃或结束了表单的编辑,但现在不知道 如果 用户浏览器关闭浏览器 或结束浏览器进程,这是服务端如何知道?
不知道其他成熟的ERP BS系统是如何实现这样的功能的,比如说用友金蝶等。。。
#12
只要他还停留在当前页面,不管人在不在,js都会定时触发服务器,更新最后时间的啊,如果最后时间离现在已经很久了,说明这条信息没有人在占用