Autor Thema: Inbox Recover  (Gelesen 1811 mal)

Offline Xantox

  • Aktives Mitglied
  • ***
  • Beiträge: 106
  • Geschlecht: Männlich
Inbox Recover
« am: 02.12.03 - 09:51:14 »
Guten Morgen Zusammen :)

Ein User von mir hat sich seine Inbox gelöscht. Nachdem ich mit Replace Design diese wiederhergestellt habe, sind natürlich seine bis dahin eingegangen Mails nicht mehr im Eingang.

Zu diesem Problem habe ich mal ein Script gefunden, nur leider funktioniert das nicht so richtig. Ich poste mal das ganze script und weiter unten zeige ich die Problemzeile auf.

Der Agent / das Script:

Sub Click (Source As Button)
   
'**********************************************************************
' This script builds an array of documents that are included in a
'folder. It then compares each document in the All Documents view to
'each document in the array. If it finds one, it breaks out and
'continues onto the next document. If it reaches the end of the array,
'then it hasn't found a match and the document is moved to the Inbox
'folder.
'**********************************************************************
   
   Dim s As New notessession
   Dim db As notesdatabase
   Dim fDoc As NotesDocument ' Document in folder
   Dim ad As notesview ' All Documents view
   Dim aDoc As notesdocument ' document in All Docs view
   Dim fUNID() As String ' array of UNID's of docs in folders
   Dim i As Integer ' UNID array index
   Dim deldate As notesitem
   Dim Chair1 As notesitem
   
   i =0
   Set db = s.CurrentDatabase
   
' Build UNID array by looping through folders, then their documents
   Forall view In db.views
      If view.IsFolder And Not view.Name=("($All)") Then
         Set fDoc = view.GetFirstDocument
         While Not fDoc Is Nothing
            Redim Preserve fUNID(i)
                fUNID(i) = fDoc.UniversalIDInbox Recover
            i=i+1
            Set fDoc = view.GetNextDocument(fDoc)
         Wend
      End If
   End Forall
   
' Loop through docs in the All Documents view and compare UNIDs to each doc in the array
   Set ad = db.GetView("($All)")
   Set aDoc = ad.GetFirstDocument
   While Not aDoc Is Nothing
      i = 0
      Do While i <= Ubound(fUNID)
         If fUNID(i) = aDoc.UniversalID Then
            Exit Do
         End If
         i = i + 1
      Loop
      Set deldate = adoc.getfirstitem("delivereddate")
      Set Chair1 = adoc.getfirstitem("CHAIR")
      If i > Ubound(fUNID) And Not deldate Is Nothing And Chair1 Is Nothing Then
      Call adoc.PutInFolder( "($Inbox)")
      
   End If
   Set aDoc = ad.GetNextDocument(adoc)
Wend
End Sub



Folgende Zeile zeigt er mir Rot an und ich weiss nicht, was falsch ist :/

"fUNID(i) = fDoc.UniversalIDInbox Recover"

Ich danke im voraus schonmal für den Tipp. Da dieser Agent sicher auch praktisch für andere Admins ist.

Grüße Xantox
4 x Domino 8.5.3 auf 3 x Win2008 64Bit und 1 x Win2003 32Bit
1 x Traveler 8.5.3.1 || 1 x Sametime Entry 8.5.1
ca. 370 x Notes 8.5.x Standard || ca. 60 x iOS Devices

Driri

  • Gast
Re:Inbox Recover
« Antwort #1 am: 02.12.03 - 09:55:18 »
Hi,

ohne jetzt das ganze Script gelesen zu haben, ich denke mal, es müßte

fUNID(i) = fdoc.UniversalID

heißen.

Evtl. is Inbox Recover nen Kommentar und der ' is verloren gegangen.
Sagt mir auf jeden Fall so nix.
« Letzte Änderung: 02.12.03 - 10:51:36 von Driri »

Offline Xantox

  • Aktives Mitglied
  • ***
  • Beiträge: 106
  • Geschlecht: Männlich
Re:Inbox Recover
« Antwort #2 am: 02.12.03 - 09:58:27 »
 :) jaaa - das wars! :) Danke!

Wenn ich das Script getestet habe, stell ich es nochmal ordnungsgemäss hier rein.

Grüße Xantox
4 x Domino 8.5.3 auf 3 x Win2008 64Bit und 1 x Win2003 32Bit
1 x Traveler 8.5.3.1 || 1 x Sametime Entry 8.5.1
ca. 370 x Notes 8.5.x Standard || ca. 60 x iOS Devices

Offline Xantox

  • Aktives Mitglied
  • ***
  • Beiträge: 106
  • Geschlecht: Männlich
Re:Inbox Recover
« Antwort #3 am: 02.12.03 - 10:47:23 »
Sub Click (Source As Button)
   
'**********************************************************************
' This script builds an array of documents that are included in a
'folder. It then compares each document in the All Documents view to
'each document in the array. If it finds one, it breaks out and
'continues onto the next document. If it reaches the end of the array,
'then it hasn't found a match and the document is moved to the Inbox
'folder.
'**********************************************************************
   
   Dim s As New notessession
   Dim db As notesdatabase
   Dim fDoc As NotesDocument ' Document in folder
   Dim ad As notesview ' All Documents view
   Dim aDoc As notesdocument ' document in All Docs view
   Dim fUNID() As String ' array of UNID's of docs in folders
   Dim i As Integer ' UNID array index
   Dim deldate As notesitem
   Dim Chair1 As notesitem
   
   i =0
   Set db = s.CurrentDatabase
   
' Build UNID array by looping through folders, then their documents
   Forall view In db.views
      If view.IsFolder And Not view.Name=("($All)") Then
         Set fDoc = view.GetFirstDocument
         While Not fDoc Is Nothing
            Redim Preserve fUNID(i)
            fUNID(i) = fDoc.UniversalID
            i=i+1
            Set fDoc = view.GetNextDocument(fDoc)
         Wend
      End If
   End Forall
   
' Loop through docs in the All Documents view and compare UNIDs to each doc in the array
   Set ad = db.GetView("($All)")
   Set aDoc = ad.GetFirstDocument
   While Not aDoc Is Nothing
      i = 0
      Do While i <= Ubound(fUNID)
         If fUNID(i) = aDoc.UniversalID Then
            Exit Do
         End If
         i = i + 1
      Loop
      Set deldate = adoc.getfirstitem("delivereddate")
      Set Chair1 = adoc.getfirstitem("CHAIR")
      If i > Ubound(fUNID) And Not deldate Is Nothing And Chair1 Is Nothing Then
         Call adoc.PutInFolder( "($Inbox)")
         
      End If
      Set aDoc = ad.GetNextDocument(adoc)
   Wend
End Sub
4 x Domino 8.5.3 auf 3 x Win2008 64Bit und 1 x Win2003 32Bit
1 x Traveler 8.5.3.1 || 1 x Sametime Entry 8.5.1
ca. 370 x Notes 8.5.x Standard || ca. 60 x iOS Devices

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz