OK: Wollte das mal auf Basis dieser Erkenntnis ausprobieren, ob man was tricksen kann:
Also das Ganze geht mit Tricks und Entwickler- Zugriff:
3 Agenten.
Der erste ruft die beiden anderen auf. Formelsprache:
| @Command([RunAgent] ; "TestCreateFolder1" ); |
| @Command([CreateFolder] ); |
| @Command([RunAgent] ; "TestCreateFolder2" ); |
Der zweite ("TestCreateFolder1") setzt das Flag "Portfolio" im Datenbank- Icon:
| Dim doc As NotesDocument |
| Dim strFlags As String |
| |
| Set doc = g_dbCurrent.GetDocumentByID("FFFF0010") |
| If InStr( strFlags, "u" ) = 0 Then |
| strFlags = doc.GetItemValue( "$Flags" )(0) & "u" |
| Call doc.Replaceitemvalue( "$Flags", strFlags ) |
| Call doc.Save( True, True ) |
| MsgBox "Flag set to portfolio: " & strFlags |
| Else |
| MsgBox "no need to set Flag" |
| End If |
Und der dritte ("TestCreateFolder2") setzt das Flag wieder zurück:
| Dim doc As NotesDocument |
| Dim strFlags As String |
| |
| Set doc = g_dbCurrent.GetDocumentByID("FFFF0010") |
| strFlags = Replace( doc.GetItemValue( "$Flags" )(0), "u", "" ) |
| Call doc.Replaceitemvalue( "$Flags", strFlags ) |
| Call doc.Save( True, True ) |
| MsgBox "Flag reset : " & strFlags |
Natürlich könnte man probieren, das mit den Designer- Berechtigungen via Agent auf dem Server zu umgehen, aber für eine gute Idee halte ich das nicht...
Das ist nur ein "proof of concept"... Einsetzen würde ich das nie im leben.
Die Infos übers Datenbank- Icon kommen übrigens
hierher