PowerBuilder中实现数据共享是通过函数ShareData()实现的。ShareData函数的语法为dwprimary.ShareData(dwsecondary).其中,dwprimary是指主数据窗口控件名,dwsecondary是指从数据窗口控件名。该函数的返回值是Integer类型。函数成功执行时返回1,发生错误时寒暑假返回-1.
实现数据共享的3个条件如下:
1、选择字段的数目相同;
2、选择字段的数据类型相同;
3、选择字段的排列顺序相同;
具体实现数据共享步骤如下:
1、建立若干个数据窗口对象,并让它们同时操纵同一个表,同时要求主数据窗口与从数据窗口对象的列必须相同,但各自使用的select语句可以不一样。
2、建立一个数据窗口,并在此数据窗口上创建若干个数据窗口控件,分别为它们指定相应的数据窗口对象。
3、选定其中一个数据窗口控件为主数据窗口控件,其余为从数据窗口控件,在主数据窗口的open事件中编写代码,用ShareData()函数来实现主从数据窗口数据缓冲区的共享。
要终止数据窗口之间的数据共享,可以调用ShareDataOff()函数。终止了数据共享后,从数据窗口中的数据将消失。需要说明的是,在多数情况下可以不必关闭数据共享,因为当一个窗口被关闭或任何与数据共享有关的Datawindow控件被删除时,数据共享会自动关闭。