10.05.2023 07:53

Co se děje ? Jak se pracuje v jazyce vzorců ? (2)
21.04.2023 14:15

Co se starou dokumentací k R3, R4, ...?
05.04.2023 14:41

Událost, při neexistenci přílohy. (2)
05.04.2023 11:51

Jak zjistit vložení přílohy. (4)
21.03.2023 11:14

Rámec nebo okno ? (10)
22.02.2023 10:14

Vylepseni designera 9.01 (3)
02.02.2023 20:27

Jak resit casove narocneho agent na frontendu (13)
25.01.2023 19:15

Občas by přišel velmi vhod nástroj, který by odstranil z mailů všechny přílohy. Typickým příkladem použití jsou maily s dlouhými soubory příloh, které časem ztratily na aktuálnosti, nicméně vlastní mail je žádoucí uchovat.
Agenta není složité napsat, ale proč se psát s něčím, co už je vyzkoušené (kód umístěte třeba do Actions nebo Shared Actions v příslušné mailové databázi nebo přímo v mailovém template - očekává spuštění z pohledu nebo folderu, v němž jsou maily, z nichž se mají odstranit přílohy, označeny vybráním):
Sub Initialize
On Error Resume Next
Dim session As New NotesSession
Dim db As NotesDatabase
Dim dc As NotesDocumentCollection
Dim doc As NotesDocument
Dim RTI As NotesRichTextItem
Dim answer As Integer
Dim strDocCount As String
Set db = session.CurrentDatabase
Set dc = db.UnprocessedDocuments
Select Case dc.Count
Case 0
Exit Sub
Case 1
strDocCount = " vybraného 1 dokumentu?"
Case Is > 1
strDocCount = " vybraných " & Cstr(dc.Count) & " dokumentů?"
End Select
answer = Msgbox("Určitě chcete smazat přílohy u " & strDocCount,36, "Mazání příloh")
If answer = 7 Then Exit Sub
Set doc = dc.GetFirstDocument
Do While Not (doc Is Nothing)
Set RTI = doc.GetFirstItem("Body")
If RTI.Type = RICHTEXT Then
Forall o In RTI.EmbeddedObjects
If ( o.Type = EMBED_ATTACHMENT ) Then
Call o.Remove
Call doc.Save( False, True )
End If
End Forall
End If
Set doc = dc.GetNextDocument(doc)
Loop
End Sub
Zdroj: diskuzní fóra, upraveno
Autor: Zdeněk Michálek
Datum: 19.05.2001
Sdílet článek Seznam komentářů
Zatím nebyl přidán žádný komentář. Buďte první!