我在具有数据类型VARIANT的变量中填充特定注释文档的值。
原因:该值包括反斜杠,字母和数字。
稍后在我的代码中,我想用这个变量建立一个数据库连接。不幸的是,它始终失败并显示以下消息:
方法中的类型不匹配Coerce String:找到未知,预期未知
我的代码:
Dim varMailFile As Variant
Dim varMailServer As Variant
Dim maildb As New NotesDatabase( "", "" )
Dim cprofile As NotesDocument
vMailFile = doc.GetItemValue( "MailFile" )
vMailServer = doc.GetItemValue( "MailServer" )
Call maildb.Open(vMailServer, vMailFile)
我已经尝试将varMailFile和varMailServer定义为String,但stilld不起作用。它也很难排除故障,因为错误消息并没有告诉您它找到了什么以及它期望什么。
我希望你能帮助我。谢谢。
NotesDocument.GetItemValue始终返回变量,即使该项只包含一个值。您需要EITHER将第一个值(Index = 0,因为LotusScript默认情况下为0)分配给您的变量,或者只使用调用中的第一个值:
第一种可能性
varMailFile = doc.GetItemValue( "MailFile" )(0)
varMailServer = doc.GetItemValue( "MailServer" )(0)
...
Call maildb.Open(varMailServer, varMailFile)
第二种可能性
varMailFile = doc.GetItemValue( "MailFile" )
varMailServer = doc.GetItemValue( "MailServer" )
...
Call maildb.Open(varMailServer(0), varMailFile(0))