Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: skywook am 18.08.06 - 14:45:36

Titel: Meldung bei neuem Dokument
Beitrag von: skywook am 18.08.06 - 14:45:36
Hallo,
kann ich mir eine DialogBox am Bildschirm anzeigen lassen wenn in einer bestimmten Datenbank ein Dokument eingefügt wird (das Dokument wird in einer anderen DB erzeugt und in diese per Script übertragen).

Das Problem: Wenn Notes im Hintergrund liegt, wie kann ich mir die Box anzeigen lassen mit LotusScript oder HostScript.

Funktioniert so was.
Titel: Re: Meldung bei neuem Dokument
Beitrag von: koehlerbv am 18.08.06 - 14:58:00
Wo kommen denn die neuen Dokumente an, und wo soll dann der Agent laufen?

Bernhard
Titel: Re: Meldung bei neuem Dokument
Beitrag von: skywook am 18.08.06 - 15:08:24
Hallo Bernhard,

die Dokumente kommen übers Backend und werden in einer bestimmten Ansicht angezeigt.
Titel: Re: Meldung bei neuem Dokument
Beitrag von: koehlerbv am 18.08.06 - 15:12:40
Nicht "wie", sondern "wo": Server? Lokal? Wo soll der Agent laufen?

Bernhard
Titel: Re: Meldung bei neuem Dokument
Beitrag von: skywook am 18.08.06 - 15:19:29
Sorry,
ist Freitag kurz vor dem Feierabend.
Auf dem Server.
Titel: Re: Meldung bei neuem Dokument
Beitrag von: koehlerbv am 18.08.06 - 18:46:05
Tja, dann wird das nicht einfach, ist aber machbar. Ich sehe folgende Wege:
- Serverbasierender Agent, der nach Feststellung neuer Docs eine Broadcast-Message verschickt
- Lokaler Agent, der periodisch in der DB auf dem Server nachschaut und dann via WinAPI ein Fenster auf dem Client öffnet
- Ein Nicht-Notes-Programm, welches periodisch via NotesAPI / COM vom Client aus auf neue Docs auf dem Server prüft und wiederum per WinAPI ein Fenster beim Client öffnet.

Welchen Weg traust Du Dir zu?

Bernhard
Titel: Re: Meldung bei neuem Dokument
Beitrag von: skywook am 20.08.06 - 14:31:21
@Bernhard
Ich würde den serverbasierenden oder den lokalen Agenten vorziehen. Aber was würdest Du vorschlagen (möchte ja auch noch was dazulernen).

Ist aber noch was komplexer. Die Meldung soll nur erscheinen wenn das Doc in einer bestimmten Ansicht selektiert und in einem Feld ein bestimmter Wert angekreuzt ist.

Hättest Du mir da einen Ansatzpunkt?
Titel: Re: Meldung bei neuem Dokument
Beitrag von: koehlerbv am 20.08.06 - 14:46:57
Mir fehlen nach wie vor Details zu den Anforderungen. Wenn serverbasierend, dann funktioniert das ganze natürlich auch nur unter der Bedingung, dass der User in dem Moment, in dem die Bedingungen für eine neue Meldung stimmen, auch vom Server erreichbar ist. Trotzdem wäre dies natürlich dann der einfachste Weg.
Was bedeutet "in Ansicht selektiert"? Dass die Bedingungen stimmen, um das Dokument in eine bestimmte Ansicht aufgenommen wird? Diese Bedingung liesse sich ja genauso im Agent nachbilden, ebenso wie der Wert, der in einem bestimmten Feld stehen muss.

Ansonsten: Siehe die Punkte, die ich im letzten Posting geschrieben habe.

Bernhard
Titel: Re: Meldung bei neuem Dokument
Beitrag von: Klafu am 21.08.06 - 08:52:11
Würde es nicht reichen per E-Mail benachrichtig zu werden ?
Das wäre nämlich leichter.

Gruß
Titel: Re: Meldung bei neuem Dokument
Beitrag von: skywook am 13.09.06 - 16:23:02
Habe jetzt einen zeitgesteuerten serverseitigen Agenten. Wenn ich diesen manuell starte funktionierts - die Exe-Datei wird gestartet.

Schalte ich wieder auf zeitgesteuert wird der Agent zwar gestartet (sehe ich im Protokoll) aber der Shell-Befehl wird nicht ausgeführt. Die Exe-Datei (ist VB) zeigt einfach einen Prompt mit einer Meldung:

Sub Initialize
   Dim result As Integer
   Dim anzahl As Integer   
   Dim s As New NotesSession
   Dim db As NotesDatabase
   Dim view As NotesView
   Dim doc As NotesDocument
   Set db = s.CurrentDatabase
   Set view = db.GetView( "vb_PrioMSC" )   
   anzahl = 0
   Set doc = view.GetFirstDocument
   While Not(doc Is Nothing)
      If doc.vb_z_Prio(0) = "1" Then
         anzahl = anzahl + 1         
      End If
      Set doc = view.GetNextDocument(doc)
   Wend
   If anzahl > 0 Then   
      result = Shell("d:\meldung.exe",1)
   End If
End Sub

Für einen Tipp wäre ich dankbar.
Titel: Re: Meldung bei neuem Dokument
Beitrag von: Tode am 14.09.06 - 09:58:40
Dein zeitgesteuertet Agent läuft auf dem Server und sucht auch DORT nach D:\meldung.exe. Ausserdem wird er auf dem Server die Meldung anzeigen, was Dir absolut nix bringt !!!

Es sei denn, Deine meldung.exe schickt die Meldung per net send o.ä. an einen anderen Rechner....

Tode
Titel: Re: Meldung bei neuem Dokument
Beitrag von: skywook am 14.09.06 - 15:41:12
Danke Tode,
das wars. Gibt es denn keine Möglichkeit die exe auf dem Client auszuführen lassen.