Domino 9 und frühere Versionen > Entwicklung
Wert von Sign und Encrypt ändern
koehlerbv:
Das kannst Du doch über die Benutzervorgaben machen. Wenn Du verhindern willst, daß diese Optionen wieder abgewählt werden, hilft nur das Aufbohren des Designs der Mailfiles.
Joker:
Hi,
hier mein Code.
Dim ws As NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim dc As NotesDocumentCollection
Dim note As NotesDocument
Dim MailAddress As String
Dim aktdoc As NotesDocument
Set ws = New NotesUIWorkspace
Set uidoc = ws.CurrentDocument
Set aktdoc = uidoc.Document
Set dc = ws.PickListCollection(1,True,"S1DX01","smime.nsf", "$MIME","Verschlüsselungspartner nach Firma","Bitte treffen Sie Ihre Auswahl: ")
Set note = dc.GetFirstDocument
If Not (note Is Nothing) Then
Call note.ReplaceItemValue( "Sign", "1" )
Call note.ReplaceItemValue( "Encrypt", "1" )
End If
While Not (note Is Nothing)
MailAddress = note.GetItemValue("MailAddress")(0)
Call uidoc.GotoField("EnterSendTo")
Call uidoc.FieldAppendText("EnterSendTo",MailAddress & ", ")
Set note = dc.GetNextDocument(note)
Wend
Zur Erklärung:
Es wird nur eine PickList angezeigt aus der der Anwender bestimmte Dokumente auswählt. Aus den ausgewählten Dokumenten sollen die Were im Feld "MailAddress" in das Feld EnterSendTo des neuen Mailmemos eingetragen werden. Funktioniert ja auch alles Prächtig.
Nur zuvor sollen eben die Werte der Felder Sign und Encrypt geändert werden. Wenn ich den Code Debugge steht der Wert "1" auch in den Feldern drin, doch im Dokument (habe die Verbergung aufgehoben) steht immer noch "0".
koehlerbv:
So ganz steige ich hier nicht durch ...
Du holst Dir eine Collection.
Im ersten Dokument der Collection versuchst Du, Sign und Encrypt zu setzen.
Dann kommt eine Schleife, die aus dem ersten und weiteren Dokumenten der Collection Infos holt. Warum wird Sign und Encrypt nur für das erste Dokument gesetzt ? Ist note nicht die Adressquelle ? Und uidoc Dein Memo ?
Noch ein Tip zur generellen Erleichterung des Belegens von Feldern:
Call note.ReplaceItemValue( "Sign", "1" )
ist das gleiche wie
note.Sign = "1"
oder
MailAddress = note.GetItemValue("MailAddress")(0)
ist das gleiche wie
MailAddress = note.MailAddress (0)
Joker:
Hi,
kleiner Fehler durch das ständigen umbauen des Codes.
Ich möchte natürlich nicht in dem ersten Dokuement Sign und Encrypt setzen, sondern im neuen MailMemo. Muss also heißen:
If Not (note Is Nothing) Then
Set item = aktdoc.ReplaceItemValue("Sign","1")
Set item = aktdoc.ReplaceItemValue("Encrypt","1")
End If
Habe deine Kurzformen hier auch ausprobiert. Ist jedoch gar keine Speicherung möglich. Fehler: Variable Required: SIGN bzw. Variable Required: ENCRYPT.
PS: Kannte die "Kurzform" schon. Benutze sie normalerweise auch. Bei diesen beiden blö... Feldern jedoch scheint dies nicht zu funktionieren.
Gruss
Martin
koehlerbv:
Das mit dem Nicht-Funktionieren der direkten Feldbelegung, wie von Dir beschrieben, muß ich bei Gelegenheit mal nachvollziehen - ist mystisch.
actdoc ist das Backend-Doc Deines neuen Memos. Da siehst Du im Frontend natürlich nix von, bis Du ein Reload oder Refresh Deines Frontend-Docs machst. Probier das mal: Nach Abschluß Deiner Belegungen ein uidoc.Refresh.
Bernhard
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln