关于DW_1.DATAOBJECT=''的奇怪的问题?

vbcat 2002-10-21 03:50:29
我在程序中使用dw_1.dataobject = '...'动态改变数据窗口出现了一个奇怪的问题。
当我把该程序单独提出,作成一个应用以后,在PB中测试运行出现正确结果,程序没有问题,但编译成EXE执行文件后,运行EXE文件时出错。
运行结果是当数据窗口对象改变以后SETTRANOBJECT(SQLCA)不成功,返回值为-1,无法进行数据窗口的retrieve()操作,而再改回原来的数据窗口对象结果又是正确的。
我认为问题是在SETTRANOBJECT(SQLCA)这部分,但出错时SQLCA.sqlerrtext并没有返回值。奇怪!!!是不是PB的“BUG”。
6.0和8.0中都出现了这个问题。
...全文
115 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
balloonman2002 2002-10-21
  • 打赏
  • 举报
回复
怪不得,我编译时都加PBD的,:)
vbcat 2002-10-21
  • 打赏
  • 举报
回复
balloonman2002(革命的本钱-身体) 、 jeking(苦命人)
谢谢参与。
vbcat 2002-10-21
  • 打赏
  • 举报
回复
但是当程序集成在其他应用中结果就是正确的。
而且还有个有趣的问题,当程序编译时加上PBD文件,也就是说除了EXE文件,再加上PBD文件,结果也是正确的。而且,并不需要编译时加入PBR文件。
呵呵,看样子PB还是有一点小问题。
等等给你分。
pufan 2002-10-21
  • 打赏
  • 举报
回复
哦,我以前看到资料上是这么说的.
balloonman2002 2002-10-21
  • 打赏
  • 举报
回复
没有吧,我程序里面那么多动态修改DATAOBJECT也没有编译到PBR里面的啊:)
pufan 2002-10-21
  • 打赏
  • 举报
回复
程序中动态改变数据窗口对象时得将该对象打包进pbr文件中,否则pb就找不到了,就是这么古怪,呵呵.
vbcat 2002-10-21
  • 打赏
  • 举报
回复
pufan()
按照你的方法,结果正确。但不知你能否做一个解释?
balloonman2002 2002-10-21
  • 打赏
  • 举报
回复
这个DATAOBJECT连接的库是不是SQLCA连的库呢?
balloonman2002 2002-10-21
  • 打赏
  • 举报
回复
估计是你新改的那个DATAOBJECT有问题,因为你是把“当我把该程序单独提出,作成一个应用以后”,所以这个DATAOBJECT有没有一起提出呢?
vbcat 2002-10-21
  • 打赏
  • 举报
回复
不知方法如何?
不过这个功能在原来的一个系统中使用就没有问题。只是单提出来就出现了问题。
jeking 2002-10-21
  • 打赏
  • 举报
回复
不用有着问题,动态改变数据窗口就这么简单。
dw_1.dataobject = 'yourobject'
dw_1.settransobject(sqlca)
dw_1.retrieve()
pufan 2002-10-21
  • 打赏
  • 举报
回复
然后选择该pbr编译即可.
pufan 2002-10-21
  • 打赏
  • 举报
回复
需要将动态改变的数据窗口对象名写进pbr文件中
如:
test.pbl(d_test)

740

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 脚本语言
社区管理员
  • 脚本语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧