社区
DataWindow
帖子详情
datastore.retrieve返回-1
hds8229830
2008-08-29 03:58:28
lds_acct = create datastore
lds_acct.dataobject = 'd_flow_calcdirect'
lds_acct.settransobject(sqlca)
ll_count = lds_acct.retrieve(as_table_id,as_model_window,as_button_id)
为什么ll_count = -1,
打开数据窗口,检索数据没有问题
...全文
137
9
打赏
收藏
datastore.retrieve返回-1
lds_acct = create datastore lds_acct.dataobject = 'd_flow_calcdirect' lds_acct.settransobject(sqlca) ll_count = lds_acct.retrieve(as_table_id,as_model_window,as_button_id) 为什么ll_count = -1, 打开数据窗口,检索数据没有问题
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
编程夜猫
2008-08-30
打赏
举报
回复
[Quote=引用 3 楼 AFIC 的回复:]
编译的时候,把所有pbl都够上发布成pbd就好了。
[/Quote]
3楼正理。
datawindow.dataobject =“”
和
datastore.dataobject =“”
这样的形式,编译成PBD发布
tiggerliu
2008-08-30
打赏
举报
回复
[Quote=引用 1 楼 jlwei888 的回复:]
-1就是有错误了!
那几个参数有问题了!你在pb打开d_flow_calcdirect,把参数手工输入试试知道了
[/Quote]
sinlan
2008-08-30
打赏
举报
回复
参数一一对应
kenryu3450
2008-08-30
打赏
举报
回复
把数据窗口重新生成下 或者 把整个程序重新编译下
hds8229830
2008-08-30
打赏
举报
回复
知道问题了,内存没有释放掉,谢谢各位了
sanmao136
2008-08-30
打赏
举报
回复
在开发环境下,出现-1,应该跟代码有关系
如果编译了出现-1.则编译成pbd发布,或者在pbr文件中包含d_flow_calcdirect
AFIC
2008-08-29
打赏
举报
回复
编译的时候,把所有pbl都够上发布成pbd就好了。
jlwei888
2008-08-29
打赏
举报
回复
注意一下,你输入的参数和程序中的变量是否一致
jlwei888
2008-08-29
打赏
举报
回复
-1就是有错误了!
那几个参数有问题了!你在pb打开d_flow_calcdirect,把参数手工输入试试知道了
PB 刷新datawindow当前行的数据
当数据存在主次表时,当更新了次表数据后,主表数据在后台有更变时。可利用刷新主表当前行的方法重显主表数据。 /************************************************************ 函数名称: f_refresh_currentrow(adw) 功 能: 刷新DW当前行数据,不可刷新NO update or 带arguments的DW 参数说明: adw 目标DW 返 回 值: integer 成功
返回
1,失败
返回
-1 作 者: sean 创建时间: 2010年8月18日 ************************************************************/ string ls_dataobject string ls_keys[] //key Column Name string ls_dbname[] //key field Name string ls_coltype[] //field style string ls_tablenm //table name string ls_condition //sql Condition long ll_currentrow //Current Row numeric long ll_column //Column count integer i datawindow ldw
datastore
l
datastore
ldw=adw if ldw.rowcount( )=0 then return -1 elseif trim(ldw.describe( "datawindow.table.arguments"))<>'?' then messagebox('','刷新数据窗口当前行失败!,数据窗口需要参数',exclamation!) return -1 else ll_currentrow=ldw.getrow( ) FOR ll_column = 1 TO long(ldw.object.datawindow.column.count)//key names If ldw.Describe("#"+string(ll_column)+".key") ='yes' Then i++ ls_keys[i]=ldw.Describe("#"+string(ll_column)+".name") ls_dbname[i]=ldw.Describe("#"+string(ll_column)+".dbname") ls_coltype[i]=ldw.Describe("#"+string(ll_column)+".coltype") End If NEXT if upperbound(ls_keys[])=0 then messagebox('','刷新数据窗口当前行失败!,没有主键',exclamation!) return -1 else ls_tablenm=left(ls_dbname[1],pos(ls_dbname[1],'.') -1) //table name for i=1 to upperbound(ls_keys[]) if pos('numb,deci,long,',LeftA(ls_coltype[i],4) +',')>0 then ls_condition+="and "+ls_dbname[i]+"="+string(f_getitem(ldw,ll_currentrow,ls_keys[i])) else ls_condition+="and "+ls_dbname[i]+"='"+string(f_getitem(ldw,ll_currentrow,ls_keys[i]))+"'" end if next ls_condition=mid(ls_condition,4) //sql Condition l
datastore
=create
datastore
l
datastore
.dataobject=ldw.dataobject l
datastore
.settransobject( sqlca) if f_addwhere_re
trie
ve
(l
datastore
,ls_condition)=1 then if l
datastore
.rowcount( )=1 then ldw.object.data[ll_currentrow]=l
datastore
.object.data[1] ldw.setitemstatus( ll_currentrow, 0, primary!, NotModified!) //if ldw.getrow( )<>ll_currentrow then ldw.scrolltorow( ll_currentrow) end if else messagebox('','刷新数据窗口当前行失败!,条件语法错误',exclamation!) return -1 end if destroy l
datastore
end if end if
关于PowerBuilder多线程的一些心得
最近在看.Net多线程的时候突然想到PowerBuiler是否支持多线程开发呢?于是Google了下,原来真的可以,不过比较遗憾的是这关于PB多线程方面的资料无论是英文的还是中文的都十分稀缺,完全没有详细的资料可查,连官网都一样,PB自带的帮助文档就更不用说的,简陋啊!!于是自己摸着石头过河,其中也遇到不少莫名其妙的问题,但多数是IDE本身语义检测的缺陷,谁让这不是VS呢?... -----
pb 数据窗口re
trie
ve
时出现偶尔无数据的情况
用pb开发功能或报表时,数据窗口的re
trie
ve
函数自然不用多说,肯定会用到,但有时候可能会会用到 setfilter和filter两个方法来过滤数据 本人在re
trie
ve
后再用setfilter和filter时就遇到了这种情况,这个说来也简单,但找起问题来却很让人头疼,明明sql没问题或数据窗口可以检索出数据,但在程序执行时就出现一会有一会无的情况,以为是入参的问题,所以从da...
PB常用函数
基本写法:Messagebox('标题','内容') 完整写法: MessageBox ( '标题','内容',图标,按键,默认值) (1)其中标题与内容为要显示的字符串,不可省略,但可以省略,即什么也不显示,例如Messagebox('','')这样也是正确的单里面的东西一样也不能少! (2)图标可选值: Question!或None! 或Informati
PB中的数据窗口和Filter和
DataStore
一.Filter的使用: 函数作用:为DataWindow或者
DataStore
指定数据过滤规则。通常在调用该函数前使用函数Re
trie
ve
将数据检索到客户端,该函数可以决定检索到客户端的这些数据哪些可以显示,哪些不能显示。该函数对客户端的数据进行操作,和后台数据库没有任何关系。在设置完过滤规则后使用函数Re
trie
ve
检索数据是不合理的,每次设置过滤规则后都检索数据,这样的执行效率很低...
DataWindow
609
社区成员
20,469
社区内容
发帖
与我相关
我的任务
DataWindow
PowerBuilder DataWindow
复制链接
扫一扫
分享
社区描述
PowerBuilder DataWindow
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章