【发布时间】:2016-03-03 14:49:07
【问题描述】:
我正在编写一个从文档中提取附件的 Lotus 脚本代码。该代码工作正常,除了一些文档并引发错误: 错误代码:91 - 错误:未设置对象变量
下面是我用来提取的代码:
If (doc.HasItem("$File")) Then
attachments = Evaluate("@AttachmentNames", doc)
Forall o In attachments
Set AttachmentName = doc.GetAttachment(o)
Call AttachmentName.ExtractFile(Attachfoldername & "\" & AttachFileNames)
End Forall
End If
在调试时,我发现 AttachmentName 变体没有设置,一旦我进入下一行,它只会显示 [NOTESEMBEDDEDOBJECT] 值。请参阅下面的屏幕打印: AttachmentName variable not set
您还可以从上图中看到附件名称包含某些垃圾字符。代码失败并返回相同错误的其他文档很少。所有这些附件的文件名都带有奇怪的字符(例如:“■ß■■1.jpg”、“AR Médipel faible teneur en capasaïcine.doc”)。
使用的表单中没有富文本字段,我无权查看表单的设计,但我可以在文档属性中看到 $FILE 字段。 我最初认为问题可能出在文件名上,因此为了对此进行测试,我将同名文件附加到测试文档的富文本字段中。这次代码成功地按预期提取了附件。所以现在我想知道实际的问题可能是什么。
我是 Lotus Script 的初学者,所以我不知道我是否遗漏了什么。
任何解决此问题的帮助将不胜感激。提前致谢!
【问题讨论】: