Erstelle eine neue Maske, Name könnte lauten "MailAddress". Diese Maske enthält ein Feld mit dem Namen "SendTo". Das Feld "SendTo" in der anderen Maske bleibt aber dennoch erhalten.
Die Aktion "Adresse" muss nun so aussehen:
@Command([MailAddress]);
@SetProfileField("MailAddress"; "SendTo"; SendTo; @UserName)
In das Profildokument "MailAddress", das einem bestimmten User zugeordnet ist, wird in das Feld SentTo der Inhalt des Feldes SentTo der Auftragsmaske geschrieben.
Im Script musst du natürlich auch noch ein paar Zeilen ergänzen:
Sub Initialize
Dim session As New Notessession
Dim ws As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim db As NotesDatabase
Dim newdoc As NotesDocument 'neuer Reproauftrag in DB
Dim doc As NotesDocument 'Plandokument in DB
Dim vdoc As NotesDocument 'Verteilerdokument in DB
Dim profile As notesdocument
Dim profileMail As NotesDocument
Dim rtitem As NotesrichtextItem
Dim plitem As NotesItem
Dim profitem As Notesitem
Dim view As NotesView
Dim user As String
Set db = session.Currentdatabase
Set View = db.GetView("ReproAuswahl")
Set profile = db.GetProfileDocument("DBProfil")
Set profileMail = db.GetProfileDocument("MailAddress", session.UserName)
Nummern = profile.GetItemValue("Nummern")
Set newdoc = New NotesDocument(db)
newdoc.Form = "ReproAuftrag"
user=session.CommonUserName
Call newdoc.ReplaceItemValue("Autor",user)
Call newdoc.ReplaceItemValue("Ersteller",user)
'als Autorenfeld setzen:
Set plitem=newdoc.GetFirstItem("Autor")
plitem.IsAuthors=True
plitem.IsSummary=True
'SendTo-Feld erzeugen:
Call newdoc.ReplaceItemValue("SendTo", profileMail.SendTo(0))
For i = 0 To Ubound(Nummern)
zw = ""
Set doc = view.GetDocumentByKey(Nummern(i))
%REM
Die Plan-Dateien werden nicht mehr mit dem Auftrag verschickt...
Set rtitem = doc.GetFirstItem("Plot")
Call newdoc.CopyItem(rtitem,"Anlage_" & i)
%END REM
'... dafür wird jetzt die Doc-ID des Plandocumentes mitverschickt...
Call newdoc.replaceitemvalue( "PlanUnid_" & Cstr(i), doc.universalid)
'... und der Name des Attachments
Set rtitem = doc.getfirstitem("Plot")
If Isarray( rtitem.embeddedObjects) Then
Forall att In rtitem.embeddedObjects
If att.type = Embed_Attachment Then
zw = zw + att.name
End If
End Forall
End If
If zw <> "" Then
Call newdoc.replaceitemvalue( "AttName_" & Cstr(i), zw)
Else
Call newdoc.replaceitemvalue( "AttName_" & Cstr(i), "Kein Attachment vorhanden!")
End If
Set plitem=doc.GetFirstItem("PlanFormat")
Call newdoc.CopyItem(plitem, "Größe_" & i)
Set plitem=doc.GetFirstItem("Verteilerschluessel")
Call newdoc.CopyItem(plitem,"VS_" & i)
Set plitem=doc.GetFirstItem("PlanID")
Call newdoc.CopyItem(plitem,"PlanID_" & i)
Anz=0
For j=0 To 9
zw=doc.GetItemValue("Farbe_" & Cstr(j))
Anz= Anz+Cint(zw(0))
Next j
Call newdoc.ReplaceItemValue("pafa_" & i, Anz)
Anz=0
For j=0 To 9
zw=doc.GetItemValue("sw_" & Cstr(j))
Anz= Anz+Cint(zw(0))
Next j
Call newdoc.ReplaceItemValue("pasw_" & i, Anz)
Next i
Call newdoc.save(True,True)
Call view.Refresh
Set uidoc = ws.EditDocument(True,newdoc)
End Sub
Ich hoffe es funktioniert!
lg