2017-08-16 65 views

回答

0

檢查應用程序通過電子郵件發送的文檔。如果您沒有其他方式設置,您可以設置郵件日誌來捕獲它們。查找項目$ Title和$ Body。他們的存在表明文檔包含存儲的表單。你甚至可以設置一個選擇公式:

SELECT @IsAvailable($Title) & @IsAvailable($Body) 
+1

根據你的回答,你可能想在該公式的一半中使用@IsAvailable($ Body) – Duston

+0

是的。感謝您的支持。糾正。 –

1

首先,一個數據庫,它允許在文檔中使用存儲形式沒有在圖標註的$標誌元素小寫字母「f」。您可以使用

支持或存儲在文件必須在$信息項,表示它的標誌
Const NOTE_CLASS_ICON% = &H0010    '*** icon note 
Const SPECIAL_ID_NOTE& = &HFFFF0000  ' use in combination w/NOTE_CLASS when calling NSFDbGetSpecialNoteID 

Dim iconNoteId& 
Dim icondoc As NotesDocument 

iconNoteId = SPECIAL_ID_NOTE + NOTE_CLASS_ICON 
Set icondoc = db.Getdocumentbyid(iconNoteId) 
If InStr(icondoc.Getitemvalue("$Flags")(0), "f") > 0 Then 
    Print "Database DOES NOT support shared forms" 
Else 
    Print "Database supports shared forms" 
End If 

其次形式不能訪問數據庫中的圖標。此項目是Rich Text,在IDE中不易查看。但是,通過同步的Oon Disk Project(ODP)使用該文件的DXL版本,您可以使用XML或文本編輯器查看該文件。它看起來像是第六個字符是正常形式的「I」和與文檔一起存儲的形式的「G」。

到目前爲止,我還沒有構建任何代碼來實際測試或報告表單,因爲關閉數據庫級別的功能可修復存儲表單造成的安全問題。

+0

我很確定表單和腳本也可以發送帶有存儲表單的文檔,而不管表單設置如何。 –

+0

@RichardSchwartz - 這是正確的,但在數據庫級關閉會阻止它。 – Newbs

+0

有趣。在databaseA中將其關閉會阻止數據庫A中的腳本將數據庫B打開爲NotesDatabase對象,然後使用databaseB.CreateDocument並將該新文檔與存儲的表單一起發送?如果不是這樣,那麼「數據庫」和「應用程序」之間的模糊界限使得知道如何回答這個問題更難一些! –

相關問題