我想在ms-Access中显示对Web服务(几行)的调用结果。为此,我创建了一个带有defaultView = 1的表单(=连续表单)。
现在,我想知道是否可以直接在表单中使用Web服务的显示结果。这意味着无需创建一个表,然后再使用recordsource-property选择该表。
有没有一种方法可以在不使用表的情况下在MS-Access中以连续形式显示数据?
我试图这样自己设置记录集:
Private Sub Form_Load()
Set m_Dataset = CurrentDb.OpenRecordset("Test", RecordsetTypeEnum.dbOpenDynamic)
Call m_Dataset.AddNew
m_Dataset("OutOfThinAir") = "Hallo"
Set Me.Recordset = m_Dataset
End Sub
但是OpenRecordset引发错误“无效参数”。
我还考虑过在不使用表名的情况下将recordsource设置为select语句(在oracle中,这将是“ Select ... from dual”),但是我没有找到一个有效的语句。“从双重选择1;” 绝对不行。
在Erik AII的帮助下,找到了一个可行的解决方案:
Private Sub Form_Load()
Dim rstADO As ADODB.Recordset
Set rstADO = New ADODB.Recordset
rstADO.Fields.Append "OutOfThinAir", adVarChar, 100, adFldMayBeNull
rstADO.LockType = adLockOptimistic
rstADO.Open
rstADO.Addnew
rstADO.Fields("OutOfThinAir") = "Hello"
rstADO.Update
rstADO.Addnew
rstADO.Fields("OutOfThinAir") = "Du"
rstADO.Update
Set Me.Recordset = rstADO
End Sub
顺便说一句,我不得不添加“ Microsoft ActiveX数据对象6.1库”作为引用,以便使用常量和将“ ADODB.Recordset”用作变量类型。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句