我正在研究從文檔中提取附件的蓮花腳本代碼。該代碼工作正常,除了幾個文件,並拋出一個錯誤: 錯誤代碼:91 - 錯誤:對象變量未設置使用getScript方法獲取附件的句柄使用LotusScript
下面是我用做提取代碼:
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
在調試時,我發現附件名稱變體沒有被設置,只是在進入下一行時顯示[NOTESEMBEDDEDOBJECT]值。請參閱下面的屏幕打印: AttachmentName variable not set
另外,您可以從上圖看到附件名稱包含某些垃圾字符。代碼失敗的其他文檔很少,並返回相同的錯誤。所有這些附件中都帶有具有奇怪字符的文件名(例如:「■■■■1.jpg」,「ARMédipel faible teneur encapasañcine.doc」)。
表單中沒有使用的富文本字段,我無權查看錶單的設計,但是我可以在文檔屬性中看到$ FILE字段。 我最初認爲問題可能與文件名有關,因此爲了測試此問題,我將具有相同名稱的文件附加到測試文檔的富文本字段中。這一次代碼能夠按預期成功地提取附件。所以現在我仍然想知道可能是什麼問題。
我是Lotus Script的初學者,所以我不知道我是否錯過了一些東西。
任何幫助解決這個將不勝感激。提前致謝!
我試圖你上面所建議的,但是然後再次,附件變量不獲取設定在線路的任何值的代碼:附件= doc.EmbeddedObjects()..和它拋出下一行類型不匹配錯誤 - Forall o附件 – reshussain
如果您在Notes客戶端中打開文檔,您能看到附件嗎? –
是的,我能夠看到附件並打開,查看並保存它... – reshussain