2017-08-16 3 views

Antwort

0

die Dokumente prüfen, die von den Anwendungen per E-Mail werden. Sie können die Mail-Aufzeichnung einrichten, um sie zu erfassen, wenn Sie keine andere Möglichkeit haben. Suchen Sie nach den Elementen $ Title und $ Body. Ihre Anwesenheit zeigt an, dass das Dokument ein gespeichertes Formular enthält. hat

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

Basierend auf Ihrer Antwort möchten Sie wahrscheinlich @IsAvailable ($ Body) in der einen Hälfte dieser Formel – Duston

+0

Ja. Danke, dass du das verstanden hast. Korrigiert. –

1

zunächst eine Datenbank, die die Verwendung der gespeicherten Formulare in Dokumenten erlaubt keine Kleinbuchstaben „f“ in den $ Flags Elemente der ICON Anmerkung: Man könnte sogar eine Auswahlformel aufgebaut. Sie können das Symbol Zugriff nicht in einer Datenbank

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 

Zweite Formen verwenden, haben in den Dokumenten unterstützen oder eine Flagge in der $ Info Artikel gespeichert, die es gibt. Dieses Element ist Rich Text und kann in der IDE nicht problemlos angezeigt werden. Wenn Sie jedoch die DXL-Version der Datei über ein synchronisiertes Oon Disk Project (ODP) verwenden, können Sie sie mit einem XML- oder Text-Editor anzeigen. Es sieht so aus, als ob das sechste Zeichen entweder ein "I" für normale Formulare und ein "G" für Formulare ist, die mit den Dokumenten gespeichert werden.

Bisher habe ich keinen Code zum tatsächlichen Testen oder Berichten der Formulare erstellt, da das Deaktivieren der Funktionen auf DB-Ebene die Sicherheitsprobleme durch gespeicherte Formulare behebt.

+0

Ich bin mir ziemlich sicher, dass Formulare und Skripts auch Dokumente mit gespeicherten Formularen senden können, unabhängig von der Formulareinstellung. –

+0

@RichardSchwartz - Das ist richtig, aber Ausschalten auf der DB-Ebene verhindert es. – Newbs

+0

Interessant. Wird es in Datenbank A deaktiviert, um zu verhindern, dass ein Skript in Datenbank A DatenbankB als NotesDatabase-Objekt öffnet, dann databaseB.CreateDocument verwendet und dieses neue Dokument mit einem gespeicherten Formular sendet? Wenn nicht, dann macht es diese verschwommene Grenze zwischen "Datenbank" und "Anwendung" etwas schwieriger zu beantworten. –

Verwandte Themen