Das Notes Forum

Domino 9 und frühere Versionen => ND7: Entwicklung => Thema gestartet von: Steffen_Jakubowski am 24.08.06 - 14:58:49

Titel: Markieren von Dokumenten!!!!
Beitrag von: Steffen_Jakubowski am 24.08.06 - 14:58:49
Hallo

Ich habe eine Frage an euch.

Folgendes Szenario:
Ich möchte mehrere markierte Dokumente bearbeiten, sagen wir ein Feld einfügen.

Hier die Schwierigkeit dabei:
Es gib eine sogenannte Portaldatenbank und es gibt die Usermaildatenbank. Der User öffnet seine Mail allerdings nur über eine Rahmengruppe in der Portaldatenbank, die volle Mailfunktionalität ist gegeben.
Die Rahmengruppe baut sich aus zwei Rahmen auf. Rahmen1 enthält die Maildatenbank, Rahmen2 enthält eine Aktionsleiste (über eine Maske gebaut) für zusätzliche Funktionen.

Ich möchte nun in die Aktionsleiste in Rahme2 eine Aktion einbauen, die ein zusätzliches Feld in ausgewählte Maildokumente schreibt.

Folgende Scriptformel habe ich bisher innerhalb der Maildatenbank dafür verwendet:

Sub Initialize
   Dim s As New NotesSession
   Dim db As NotesDatabase
   Dim col As NotesDocumentCollection
   Dim doc As NotesDocument
   
   Set db = s.CurrentDatabase
   Set col = db.UnprocessedDocuments
   Set doc = col.GetFirstDocument
   
   While Not doc Is Nothing
      Call doc.ReplaceItemValue("_privat",25)
      Call doc.Save(True,False,False)
      Set doc = col.GetNextDocument(doc)
   Wend
   
End Sub


Hat jemand eine Idee wie ich das Script ändern müsste so das ich die Aktion über die Portaldatenbank ausführen kann???
Für eure währe ich euch sehr dankbar.

Viele Grüße Steffen
Titel: Re: Markieren von Dokumenten!!!!
Beitrag von: Untitled am 24.08.06 - 17:47:31
Hi Steffen

Benutze "Dim db As New NotesDatabase( server$, dbfile$ )". Dann musst du als Parameter deine MailDB angeben. Anschliessend kannst du die Zeile "Set db = s.CurrentDatabase" streichen. Sollte meiner Meinung nach klappen...

Falls es Probleme gibt, kannst du den Code in einen Agenten packen und den Agenten von der Portaldatenbank aus starten (mit LS).

Grüsse
Moritz

P.S. Im Betreff ist es immer sinnvoll, etwas mehr zu schreiben als nur die zwei wichtigsten Stichworte. So gibts dann auch mehr Reaktionen auf deine Fragen. Bewährt hat sich: Objekt + Problem. (Und die Ausrufezeichen erhöhen das Interesse auch nicht, höchstens im Gegenteil...)
Titel: Re: Markieren von Dokumenten!!!!
Beitrag von: Axel am 24.08.06 - 19:58:11
Benutze "Dim db As New NotesDatabase( server$, dbfile$ )". Dann musst du als Parameter deine MailDB angeben. Anschliessend kannst du die Zeile "Set db = s.CurrentDatabase" streichen. Sollte meiner Meinung nach klappen...

Das liefert aber nicht die markierten Dokumente. Meines Erachtes hast du kaum eine Chance auf markierte Dokumente in einer Ansicht aus einem anderen Frame zuzugreifen.


Axel
Titel: Re: Markieren von Dokumenten!!!!
Beitrag von: Steffen_Jakubowski am 25.08.06 - 15:58:37
Hallo

Danke Moritz für Deinen Tip, allerdings muß ich Axel recht geben, denn ich habe es auch schon über den weg probiert. Damit kommt man genauso nicht weiter.

Es müsste irgend eine Möglichkeit geben wie in der Formelsprache den "SetTargetFrame" Befehl zu nutzen.

Denn mit Formel kann ich jeweils "ein" Dokument verändern aber eben nicht ausgewählte Dokumente.....

@SetTargetFrame("xyz")
@SetField("[Field]";[Wert])

Das geht, allerdings nur immer ein Dokument.  :-\

Vielleicht hat ja noch jemand ein Tip.

Wäre sehr dankbar.

Viele Grüße Steffen
Titel: Re: Markieren von Dokumenten!!!!
Beitrag von: Tode am 28.08.06 - 16:10:09
nur mal so ins blaue geschossen: Probier doch mal ein

@SetTargetFrame( ... )
@UpdateFormulaContext
@Command([ToolsRunMacro] ; "AgentInDerMailDBMitDeinemScriptCode" )

Eventuell hilft das (ungetestet).

Tode