作爲FoxPro的新手(但是在Clipper的老手),我有點茫然想出如何從以下OLEPUBLIC類返回數組。 編輯:我修改了代碼belw以考慮下面@Stuart所做的評論。如何從Visual FoxPro 9 OLEPUBLIC類中返回數組?
DEFINE CLASS db AS CUSTOM OLEPUBLIC
DIMENSION ada(1) && public scope for later return
FUNCTION opendb(cpName)
SET MULTILOCKS ON
USE (cpName) EXCLUSIVE NOUPDATE
= CURSORSETPROP("Buffering",5)
RETURN ALIAS()
ENDFUNC
&& etc
FUNCTION getrecord(sAlias, nRecno)
SELECT (sAlias)
GOTO (nRecno)
fc = FCOUNT()
DIMENSION this.ada(fc)
FOR i = 1 TO fc
STORE CURVAL(FIELD(i)) to THIS.ada(i)
ENDFOR
RETURN @THIS.ada
ENDFUNC
ENDDEFINE
鑑於以下VBScript的位,我可以打開文件。我似乎無法做的是找回比錯誤消息更有用的東西。
set sp = createobject("sloop.db")
al = sp.opendb("p:\testing\sloop\patient.dbf")
wscript.echo sp.getrecord(al,1)
這是錯誤消息:
C:\ TEMP \ foo.vbs(3,1)sloop.db sloop.db:.getrecord號碼:\測試\桅\桅。 prg第41行的錯誤語法錯誤。 200
41號線,因爲它的出現,是
RETURN @THIS.ada
這實在是怪異的因爲這是微軟提出的語法。任何線索?
我剛剛意識到我還在使用VFP6。這是我的舊機器有V9。尷尬++ – bugmagnet 2009-02-05 01:13:11