Domino 9 und frühere Versionen > ND7: Entwicklung

Mail versenden bei Feldänderungen

<< < (2/4) > >>

Sommersprosse:
Guten morgen,


--- Zitat von: koehlerbv am 18.03.10 - 22:52:14 ---Die Property NotesUIDocument.ModifiedSinceSaved dürfte vermutlich Dein Freund sein.

--- Ende Zitat ---

nein, ich habs anders gelöst, die Property ist mir noch nicht über'n Weg gelaufen.. Hab das gerade mal in der Hilfe eingegeben, keinen treffer gelandet..... ???
Ich hab's folgendermaßen gelößt:
in den global Options meiner beiden Forms Variable gesetzt.

--- Code: ---Dim per_charalt As String
--- Ende Code ---

Im Postopen den Wert ausgelesen:


--- Code: ---per_charalt = Source.FieldGetText("per_charge")
--- Ende Code ---

Im Querysave Wert verglichen:


--- Code: --- tmpPerson = doc.GetItemValue("per_charge")
strPerson = tmpPerson( 0 )

If per_charalt = strPerson Then
Else
Call SendNewJobMail(Source)
End If

--- Ende Code ---

Aus SendNewJobMail habe ich dann eine Script-Bibliothek gemacht, da ich das ganze auf zwei Masken brauche.


--- Code: ---Sub SendNewJobMail (Source As NotesUIDocument)
Dim session As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument

Set db = session.CurrentDatabase
Set doc = Source.Document

Dim memo As New NotesDocument (db)

tmpPerson = doc.GetItemValue("per_charge")
strPerson = tmpPerson( 0 )

memo.Form = "Memo"
memo.sendTo = per_charge
memo.Subject = "New Job in IP_MM database"
memo.Body = "You are registered for a new Job. Please visit the IP_MM database for further information:"
Call memo.Send (False,strPerson)
End Sub
--- Ende Code ---

Meine Tests waren bis jetzt erfolgreich. Muss zwar noch einen Doclink hinzufügen, dürfte aber auch zu schaffen sein.

Sollte modifiedsincesaved einfacher sein, bin ich für Input offen, wenn es an dem Script noch was zu optimieren gibt natürlich auch. Man (Frau) lernt bekanntlich nie aus.


ascabg:
Hoffentlich sind in dem Feld, welches Du auf Aenderungen pruefst keine Mehrfachwerte zugelassen.

@Bernhard
Deine angesprochene Property NotesUIDocument.ModifiedSinceSaved habe ich auch (noch) nicht gefunden.


Andreas

Sommersprosse:
Hallo Andreas,

nein, keine Mehrfachwerte, es kann und soll auch immer nur eine Person ausgewählt werden.

ascabg:
Na dann koenntest Du doch im QuerySave den aktuellen Wert des Feldes auch ueber


--- Code: ---Source.FieldGetText("per_change")

--- Ende Code ---

abfragen.


Andreas

Sommersprosse:
Sorry, steh grad voll auf'm Schlauch...


--- Zitat von: ascabg am 19.03.10 - 08:54:47 ---
--- Code: ---Source.FieldGetText("per_change")

--- Ende Code ---

--- Ende Zitat ---

mach ich ja eigentlich auch, wenn auch über mehrere Schritte. Hab das gestern glaub auch mal so probiert, aber wahrscheinlich die falsche Syntax gehabt. Wie müsste den die komplette Zeile aussehen?

Mein Problem war noch und das war der Grund das wir es bissle verkompliziert haben, er hat mir die Mail nicht verschickt, da er mit dem Inhalt meines Feldes per_charge nichts anfangen konnte, aber wahrscheinlich aich da, falsche Syntax....

Call memo.Send (False,strPerson) --> hier hatte ich zuerst Call memo.Send (False,per_charge) drin stehen....

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln