社区
DataWindow
帖子详情
数据窗口(大家都关心)
ascap
2003-06-22 01:01:17
请问怎么让当前数据窗口实时自动刷新,也就是说数据库有变更,数据窗口也会
自动显示出来,此时又不影响对数据窗口的添加,修改删除等操作。
分马上送
...全文
56
16
打赏
收藏
数据窗口(大家都关心)
请问怎么让当前数据窗口实时自动刷新,也就是说数据库有变更,数据窗口也会 自动显示出来,此时又不影响对数据窗口的添加,修改删除等操作。 分马上送
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
flythinking
2003-06-25
打赏
举报
回复
to bapi(扒皮):
很好!!
不过,对于消息在网络中传递,要自己在tcp/ip基础上封装协议(消息),挺麻烦的!
bapi
2003-06-24
打赏
举报
回复
to ldy:
如何通知事务服务器:前面不是说了吗,客户端程序与事务服务器是建立有连接的,事务服务器Listen,客户端程序Connect,就象你连到聊天室的情况
另外,要求明确知道修改了哪条记录甚至字段是很难实现的而且大部分情况下都是无意义的,就我们现在的实际情况,主要有二类数据需要明确记录主键并进行处理:
1.基础数据如物料资料/供应商资料/客户资料等,因为这些数据在其它很多地方都会被频繁引用,所以一定要能实时刷新
2.业务单据,如操作员A录入了一张订单并保存,此时就要记录这张单的类型及编号等信息,通过事务服务器向该张单据的下一个操作者(可能是A的上司)提交这样一条消息:A向你提交了一张订单XXX,需要你审批
除以上两类数据外,目前我们对其它的数据暂时是不作处理的,毕竟消息的定义及解释是一件很麻烦的事
还有,以前的版本我们是在相关基础资料表及业务单据表上建立trigger,当有数据变更时,生成对应消息并写到一个特定表中,事务服务器通过定时扫描该表来获取需处理的消息,但事实证明这种方法不可行,开发及维护的代价都太大,当连接用户过多时,服务器根本负担不了,所以如果有想以此方法来实现的朋友,请三思,除非你能准确预计到程序投入使用后的实际负载
888888888888
2003-06-24
打赏
举报
回复
同意楼上
Methodor
2003-06-24
打赏
举报
回复
1、timer控件-一般不使用~
2、dw有此属性,默认为0,可设置为定时自动检索~
3、实时是相对的--看性能代价了~
dotnba
2003-06-24
打赏
举报
回复
bapi(扒皮)说得不错,以前也讨论过这个问题。
可惜我自己一直也没尝试过。
我不太清楚的就是客户端如何确定自己修改、删除以及新增哪些记录,DW在UPDATEEND里也只记录了插入、删除、更改几条。我不知道如何通知事务服务器,望指点
yingmu
2003-06-23
打赏
举报
回复
to: bapi(扒皮)
有没有这方面的资料,给兄弟看一下好吗?
devil_heart
2003-06-23
打赏
举报
回复
to:bapi
不错的想法,但不知效率如何?如果客户端很多的话,对数据库的操作会不会太频繁,有实际在应用吗?
wangyu_hn
2003-06-23
打赏
举报
回复
数据窗口的刷新问题是比较难的一个问题,你可以写一个timer,隔段时间重新检索数据库中的数据
bapi
2003-06-23
打赏
举报
回复
to devil_heart:
我们公司的产品中就融合了这种事务服务器,事实证明完全可行,说到效率问题,呵呵,根本不用担心,这个事务服务器与数据库基本无关,只进行极少数访问(如:在启动时将自己当前的运行机器等信息注册到数据库中/或需要保存当前消息等),但是对网络流量肯定是存在影响的
to yingmu:
因公司网络的原因,我无法上传代码,请见谅,但回答一下问题是可以的
博旺软件
2003-06-23
打赏
举报
回复
好办法,用事务管理,只是很难做。
bapi
2003-06-22
打赏
举报
回复
一般的C/S程序,客户端只连接到数据库服务器,我说的所谓的事务服务器,实际是运行在另一台机器上一个PB程序(可以运行在数据库服务器上,也可以运行在网内上的任何一台机器上),客户机同时连接数据库服务器和事务服务器,数据库服务器是作什么用的就不用说了,事务服务器主要用来在各个用户之间传递消息,如:一个客户端程序修改了物料表,则在提交时通过这个事务服务器向其它客户端广播一条消息(消息由开发者统一定义),其它客户程序收到这个消息后对其进解释,发现其意义是物资料被修改,如果该用户正好有打开的窗口上显示了关于物料资料的数据,则自动重新检索数据
说白了这个事务服务器就是一个多层应用,就象一个聊天室的服务器,而所有的用户就在它上传递消息
另外,说一点我们这边的经验:
这个服务器实现起来并不难,难的是消息的定义及解释,非常之麻烦,就好比开发一套新协议,所以除非是大型的应用,否则不要用这种方法,不然得不偿失,如果你一定要用,也可以定义一套简单的消息解释系统来实现这个功能,不用象我们这样将业务规则也定义到其中
tommyhuanglei
2003-06-22
打赏
举报
回复
呵呵,我也是这么解决的不过很想让其在屏幕的右下角和时间在一起,最小化!
ascap
2003-06-22
打赏
举报
回复
多谢上面几位的回答。我的问题,只是相当于实时显示当前的数据窗口,没有
其它的修改或删除、添加操作。
我很欣赏bapi(扒皮)的事务服务器,但不知道怎么写,请详细指教。
谢谢!
klbt
2003-06-22
打赏
举报
回复
用timer要付出很高的时间代价。
楼主对并发的要求有些苛刻。
能否说明你要解决的问题?
bapi
2003-06-22
打赏
举报
回复
1.用timer,隔段时间重新检索数据
2.写一个事务服务器,一个用户修改了数据并提交后,将这个改变广播到所有用户,各个用户接收这条消息后即重新检索数据
另外我觉得你的想法很难处理并发问题:假设你正在修改(还没提交),这时数据窗口自动刷新,又变成了之前的数据,你不是白忙乎了吗?
不知你到底想实现什么功能,怎样可否说清楚点?
dotnba
2003-06-22
打赏
举报
回复
关注
数据
库视图
视图就是从
数据
库种的基本表抽取出来得
数据
组成的逻辑
窗口
,与基本表不同,是一个虚表。
数据
库中,只存放视图定义,不存放
数据
项。视图机制让用户只注意自己
关心
的用户
数据
。让
数据
库的表与表之间的操作连接和和搜索条件对用户不见,用户只是简单地...
数据
库原理---什么是视图?
@Adrian 视图是由从
数据
库的基本表中选取出来的
数据
组成的逻辑
窗口
,与基本表不同,他是一个虚表。在
数据
库中,存放的只是视图的定义,二不存放视图包含的
数据
项,这些项目仍然存放在原理的基本表结构。 视图的作用主要有以下几点: 可以简化
数据
查询语句。 可以使用户能从多角度看待同一
数据
。 通过引入视图可以提高
数据
的安全性。 视图提供了一定程度的逻辑独立性等。 引入视图带来的优势: 用户将其注意力...
软件技术连载(二)
软件技术连载(二)POWERBUILDER的魅力(二)应用级别的面向对象能力作者:轻风 个人主页:http://gentlebreeze.home4u.china.com 就学术一级或者说就语言自身特性来讲面向对象的能力更多的是指赋予技术人员自身的语言控制能力,诸如接口、多态等特性。然而应用级别的面向对象能力却有很大的不同了。对应用者来说最
关心
的是已经获得的面向对象的能力,简单地
聊聊tcp和udp那些事
当主机A发送完
数据
后,主动发起关闭连接请求,这时候主机B收到关闭连接的请求,先回复一个确认信息给A,同时B这边不再接收
数据
,A收到确认信息后,也不再具有发送
数据
的能力,这是一个半关闭的状态。主机A虽然不具有发送的能力,但是有接收的能力,主机B虽然不具有接收的能力,但是有发送的能力,此时如果主机B还有
数据
未发送,仍然会继续发送,直到发送完毕。这就是udp的传输过程,你只要有
数据
,知道对方在哪,你就一个劲地扔,你并不会问对方在不在,也不
关心
我的东西有没有掉,更不
关心
对方是不是会砸到头。
BigData | Apache Beam的诞生与发展
???? IndexFlumeJava/Millwheel/Dataflow Model的三篇论文Apache Beam的诞生Apache Beam的编程模式???? FlumeJa...
DataWindow
611
社区成员
20,469
社区内容
发帖
与我相关
我的任务
DataWindow
PowerBuilder DataWindow
复制链接
扫一扫
分享
社区描述
PowerBuilder DataWindow
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章