最近看别人的代码,看的头大!下面是出错的代码
IF isvalid(THIS.ids_color_cm) = FALSE THEN //0
THIS.ids_color_cm = CREATE uo_datastore
THIS.ids_color_cm.dataobject = dw_2.dataobject + "_1"
ids_color_cm.settransobject(sqlca)
END IF //0
ids_color_cm.reset()
……
tab_1.tabpage_2.dw_2.rowscopy(1,1,primary!,THIS.ids_color_cm,1,primary!)
ids_color_cm.setitem(ll_add,"row_id",ll_ifor)
问题可能出在rowscopy,因为之前是好的。
但是由于什么他妈的需求,dw_2对应的窗口添加了一列,结果就悲剧了
现在执行rowscopy返回的是-1,这样出来的ids_color_cm的rowcount()=0,程序没法继续下去了。
我猜想是ids_color_cm和dw_2的数据窗口列不对应,但是我又不知道ids_color_cm列在那里设置……
具体原因,希望大家给分析一下……
本人N年前用过PB现在算是熟悉吧……
------解决方案--------------------
ids_color_cm 也要加上那个字段
------解决方案--------------------
ids_color_cm对应的dataobject为:dw_2.dataobject + "_1"
你就到这个数据窗口中去增加列即可
------解决方案--------------------
简单点你直接把这个知道名字的DW 放在一个 DW控件里面,点右键 修改DW 就好了 。这样就不用找了。
------解决方案--------------------
有个工具栏有个browse可以查找当前项目下所有的对象