社区
DataWindow
帖子详情
数据窗口(大家都关心)
ascap
2003-06-22 01:01:17
请问怎么让当前数据窗口实时自动刷新,也就是说数据库有变更,数据窗口也会
自动显示出来,此时又不影响对数据窗口的添加,修改删除等操作。
分马上送
...全文
54
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
打赏
举报
回复
关注
数据
库视图
本文介绍了
数据
库中的视图概念,解释了视图是如何作为从基本表中抽取的
数据
组合成的逻辑
窗口
,以及它与基本表的区别。通过使用视图,用户可以更加专注于其
关心
的
数据
,并简化复杂的表间操作。
数据
库原理---什么是视图?
视图作为
数据
库中的一种逻辑
窗口
,由基本表
数据
组成,它简化了
数据
查询语句,允许用户从不同角度查看
数据
,提高了
数据
安全性,并提供了一定的逻辑独立性。用户仅需关注
关心
的
数据
,提升效率和满意度。
软件技术连载(二)
本文介绍了POWERBUILDER应用级别的面向对象能力,指出应用人员更
关心
功能和适应性。功能可支撑应用、减轻编程和维护量,适应性则能让对象用于不同环境。以库存计算模型为例,展示了PowerBulider
数据
窗口
模型强大的适应性,强调应将商业模型封装到有适应能力的技术模型中。
聊聊tcp和udp那些事
本文以情侣间的水果投递为比喻,深入浅出地讲解了TCP和UDP这两种传输层协议的工作原理。TCP协议如同细心的情侣,通过确认、重传和
窗口
大小调整确保
数据
完整无误地传输,而UDP则更像直接投递,不
关心
数据
是否送达。通过这样的比喻,读者可以更好地理解两种协议的特点和应用场景。
BigData | Apache Beam的诞生与发展
本文探讨了ApacheBeam的起源与发展,从FlumeJava、Millwheel到DataflowModel,最终形成了统一的批处理和流处理框架。Beam具备一套统一API,使开发者能专注于
数据
处理逻辑,而无需
关心
底层细节。其编程模型涉及
窗口
、水印、触发器和累积模式,适用于各种
数据
处理场景。
DataWindow
611
社区成员
20,469
社区内容
发帖
与我相关
我的任务
DataWindow
PowerBuilder DataWindow
复制链接
扫一扫
分享
社区描述
PowerBuilder DataWindow
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章