注册 登录
编程论坛 VFP论坛

SQLEXEC( ) 函数的aCountInfo参数可以是一个对象的数组属性吗

easyppt 发布于 2022-04-08 18:11, 1659 次点击
只有本站会员才能查看附件,请 登录

比如表单 自定义了一个数组属性 myarray[1,1]
然后 ,SQLEXEC() 里的 aCountInfo 为:thisform.myarray,会报语法错误,有办什么实现吗,还是说,这里只能是一个数组变量,然后不用thisform,直接换成一个对象引用也不行,比如:
lobject.myarray,也会报错误,总之就是用对象的属性数组作为参数好像不行

[此贴子已经被作者于2022-4-8 18:13编辑过]

6 回复
#2
laowan0012022-04-08 20:38
SQLEXEC()是发送到后台数据库执行的,那里可不知道thisform是什么
#3
吹水佬2022-04-09 09:05
thisform.myarray,myarray是表单属性,试试改用内存变量aMyArray,并这样引用作为参数 @aMyArray
#4
easyppt2022-04-09 09:38
内存变量是可以的,我想把SPT重新用对象封装一下,所以就有了对象的数组属性,如果 SQLEXEC不接受对象的数组,那就只能使用变量数组了,这算不算BUG啊,因为帮助文档里说 这个参数是数组,可对象的属性数组,也是数组呀。

实在不行就用变量数组吧,然后再程序处理一下把变量数组COPY给对象属性数组。

还好 acopy() 支持对象的属性数组,拷贝一下也简单。

[此贴子已经被作者于2022-4-9 09:54编辑过]

#5
吹水佬2022-04-09 12:01
应该不算BUG吧,通常的读写数组元素,内存变量数组与对象数组没什么差别,但用作函数参数传递的数组有其特殊性,尤其是在COM的应用。

#6
csyx2022-04-09 17:32
封装成对象方法想法是好的,可也要注意了,如果你的表单经常采用私有数据会话,可能会有麻烦。例如:这个对象是在默认会话中创建的,那它查询回来的临时表也就在默认会话里,如果表单使用了私有会话,你是访问不到这些临时表的。哦,对了,会话(Session)很多人也叫它工作期
#7
a575985872022-05-07 13:03
会话(Session)很多人也叫它工作期

请教:  会话(Session)很多人也叫它工作期,这个和  数据工作期 有什么异同?

[此贴子已经被作者于2022-5-7 13:04编辑过]

1