Agent

  • Hallo zusammen,


    Ich hab eine für mich sehr Komplizierte Aufgabe zu lösen und brauch euche Hilfe....


    Ich soll einen Agenten schreiben, aber zur erklärung. Ich habe eine Datenbank erstellt in der ich auch Mails empfangen kann. Wenn ich z.B. einen Urlaubsantrag aus meiner MailDB an die Datenbank schicke wird unter Thema: "Urlaubsantrag" eingeben. Wenn die Mail in der Datenbank aufschlägt soll ein Agent überprüfen ob in dem Feld Thema "Urlaubsantrag" steht. Wenn ja soll er die Mail packen und in einer anderen Maske darstellen, also die ganze Mail.


    Ich hoffe ihr könnt mir dabei helfen.....

  • Als erstes musst du dir überlegen, wie oft der Agent laufen soll.
    Entweder Zeitgesteuert oder von Hand.
    Wenn du ihn zeitgesteuert programmieren willst, darfst du keine UI Klassen benutzen(also alles mit ui z.B. NOTESUIDOCUMENT) da diese nicht im Backend laufen.



    Mein Ansatz wäre mit Script (langsam fange ich an es zu lieben):


    Aus einer versteckten Ansicht in der alle mails drin sind, die Urlaubsantrag enthalten, in eine NOTESDOCUMENTCOLLECTION aufnehmen.
    Hieraus kannst du z.B. neue Dokumente


    (einer anderen Maske:
    Set neudoc = db.CreateDocument
    neudoc.form = "MASKE"
    )
    erstellen, die die Werte der Mail beinhalten.


    (oder was meinst du mit packen?)

  • Wenn es nur darum geht Dokumente die im Feld Subject das Wort Urlaubsantrag beinhalten mit einer anderen Maske anzuzeigen, aber keine Änderungen am Dokument vorzunehmen, dann verwende doch einfach die Form Formula in der Ansicht:


    @if(@Contains(Subject;"Urlaubsantrag");"Formname";Form)

  • Das Probier ich mal aus.....


    Die Dokumente sollen nicht mehr verändert werden, also sprich ich trag bei einer Neuen Mail in das Feld Subject das Wort Urlaubsantrag ein und schreib ins Body Feld von wann bis wann und bla bla bla und sende dieses Dokument an meine DB, da sollte dann halt ein Agent oder jetzt diese Formel schauen ob im Feld Subject Urlaubsantrag steht und mir dann diese Mail, besser gesagt die Feldinhalte in einer Maske angezeigt werden.

  • Ich soll nun doch einen Agenten zu den Anforderungen die ich hier schon gepostet hatte schreiben....


    - der Agent soll Zeitgesteuert laufen
    - Ich vermute es ist am einfachsten wenn man die Mail die in der Datenbank ankommt in einem Richtext Feld in der anderen Maske anzeigt, oder???


    Ich hoffe ihr könnt mir auch bei diesem Problem helfen