动态修改数据源出现异常现象
请看下面的代码:
choose case tab_1.selectedtab
case 1
dw_1.dataobject='d_main'
case 2
dw_1.dataobject='d_type'
case 3
dw_1.dataobject='d_stuff'
case 4
dw_1.dataobject='d_color'
end choose
dw_1.settransobject(sqlca) //设置事务处理
dw_1.retrieve()
原意是根据不同的选择给数据窗口指定不同的数据源,但只有当"在设计时指定的数据源与上面的数据源相同时"设置事务处理OK,不同时则设置失败,导致数据提不出来。但这四个数据源都存在,且在PB7.0集成环境下运行正常
问题点数:20、回复次数:9Top
1 楼gija(深蓝)回复于 2002-03-10 09:15:57 得分 0
问题 什么时候触发此代码,问题不是很明确
Top
2 楼flyerlxg(飞鸟)回复于 2002-03-10 09:24:37 得分 0
我有个TAB控件,其中有四个页面,分别对应以上四个数据源,即“大类”“类别”“材质”“颜色”,当选择某个页面时,则将数据窗口的数据源修改为显示对应的数据。代码写在TAB控件的selectionchanged事件中。在应用对象中连接数据库,其他地方没有代码了Top
3 楼gija(深蓝)回复于 2002-03-10 09:29:56 得分 0
数据窗口都存在把, debug看看settransobject(SQLCA)返回什么值,因该没问题Top
4 楼wu_07(一只狗不孤单,想一只狗才孤单)回复于 2002-03-10 11:02:48 得分 0
同意...debug就知道问题出在那里了Top
5 楼flyerlxg(飞鸟)回复于 2002-03-10 12:20:09 得分 0
深蓝大哥,我程序在集成环境下一切OK呀,但编译成EXE后执行时settransobject(SQLCA)的返回值为-1呀?Top
6 楼flyerlxg(飞鸟)回复于 2002-03-10 12:28:01 得分 0
深蓝大哥:我的程序在PB集成环境下运行OK呀,只是编译成EXE文件后执行时出错,Settransobject(SQLCA)返回值为-1呀,帮我想想问题出在哪?谢谢!Top
7 楼heliang(流浪的风筝)回复于 2002-03-10 13:43:39 得分 10
两个解决方案:
1:不要编译成一个EXE 文件的形式
2:使用资源文件Top
8 楼flyerlxg(飞鸟)回复于 2002-03-10 19:20:05 得分 0
何生:能否具体一点呢?小弟先行谢过!!Top
9 楼heliang(流浪的风筝)回复于 2002-03-11 22:49:32 得分 10
通过脚本改变dataobject的,编译成一个EXE会出现问题,解决方法两个:
1:编译成一个EXE和多个DLL(PBD)模式
2:对于非要编译成一个EXE的情况,使用资源文件
在记事本中编写如下
***.pbl(dd_test)
***.bmp
存为*.pbr文件,编译时库列表中在引用该资源的PBL后面选择该资源文件即可。Top




