sabse96
Goto Top

InfoPath Formular Betreff automatisch generieren

Hallo Zusammen,

ich hab da eine Frage und zwar habe ich ein InfoPath Formular erstellt, dieses wurde als E-Mail Veröffentlicht. Das Formular soll, sobald man auf einen Absenden Button klickt, die Outlook Kontakte öffnen, einen Kontakt übernehmen und dann Absenden.

Als Zwischenschritt hätte ich jetzt gerne noch, dass ein automatischer Betreff generiert wird und zwar aus 2 Feldern in dem Formular die der Benutzer selbst ausfüllt.

Hat einer ne Idee wie ich das verwirklichen kann?

Danke schon mal face-smile

Sabse

Content-ID: 208932

Url: https://administrator.de/contentid/208932

Ausgedruckt am: 25.11.2024 um 23:11 Uhr

colinardo
colinardo 02.07.2013 aktualisiert um 10:09:04 Uhr
Goto Top
Hello again Sabse,
kein Problem, habe dein Projekt noch im Kopf.
in deinem Code vor folgender Zeile:
conn.Subject.SetStringValue("Testsubject: ")  
setzt du folgende Zeilen:
Dabei musst du die Namen der Felder an folgender Stelle anpassen "//my:[DEINFELDNAME]", also das [DEINFELDNAME] mit dem Feldnamen deiner Felder ersetzen
Dim root As XPathNavigator = MainDataSource.CreateNavigator()
Dim feld1 As String = root.SelectSingleNode("//my:feld01", Me.NamespaceManager).Value  
Dim feld2 As String = root.SelectSingleNode("//my:feld02", Me.NamespaceManager).Value  
zum Schluss kombinierst du die erstellten Variablen in deinem Betreff in der Zeile darunter:
conn.Subject.SetStringValue(feld1 & " " & feld2)  

Grüße Uwe
Sabse96
Sabse96 02.07.2013 um 10:52:59 Uhr
Goto Top
hi Uwe,

danke für deinen Antwort. So wie du es da geschrieben hast, hat es sofort funktioniert.
Jetzt wollte ich aber noch einen definieren und ab da funktioniert es wieder nicht mehr.
Muss ich bei einem 3. zu definierendem Wert noch irgendwas spezielles beachten?
colinardo
colinardo 02.07.2013 aktualisiert um 10:58:11 Uhr
Goto Top
eine weitere Zeile(mit einer weiteren Variablen) nach diesem Muster hinzufügen
Dim feld3 As String = root.SelectSingleNode("//my:feld03", Me.NamespaceManager).Value  
und dann die in der Zeile wo der Betreff gesetzt wird, diese Variable auch mit hinzufügen:
conn.Subject.SetStringValue(feld1 & " " & feld2 & " " feld3)  
in diesem Beispiel sind die Variablen jeweils mit einem Leerzeichen verbunden.
Sabse96
Sabse96 02.07.2013 um 11:03:44 Uhr
Goto Top
okay hab das jetzt mal so gemacht.

als ich es aber gerade getestet hab, sagt er das in einer Zeile etwas falsch ist:

conn.Subject.SetStringValue("FRG-Formular")
Dim root As XPathNavigator = MainDataSource.CreateNavigator()
Dim feld1 As String = root.SelectSingleNode("FRG_Formular", Me.NamespaceManager).Value --> hier ein Fehler?
Dim feld2 As String = root.SelectSingleNode("
my:Nummer", Me.NamespaceManager).Value
Dim feld3 As String = root.SelectSingleNode("//my:Name", Me.NamespaceManager).Value
conn.Subject.SetStringValue(feld1 & " " & feld2 & " " & feld3)
colinardo
colinardo 02.07.2013 aktualisiert um 11:09:53 Uhr
Goto Top
Die erste Zeile ist überflüssig, der String wird ja in der untersten Zeile gesetzt
ist das Feld FRG_Formular ein Textfeld oder ein anderes Steuerelement ?
so ist das richtig:
Dim root As XPathNavigator = MainDataSource.CreateNavigator()
Dim feld1 As String = root.SelectSingleNode("//my:FRG_Formular", Me.NamespaceManager).Value  
Dim feld2 As String = root.SelectSingleNode("//my:Nummer", Me.NamespaceManager).Value  
Dim feld3 As String = root.SelectSingleNode("//my:Name", Me.NamespaceManager).Value  
conn.Subject.SetStringValue(feld1 & " " & feld2 & " " & feld3)  

p.s. post deinen Code bitte mit Code-Tags danke...
Sabse96
Sabse96 02.07.2013 um 11:11:34 Uhr
Goto Top
FRG-Formular ist ein Textfeld, das kann aber nicht ausgefüllt werden, sondern wurde von mir vordefiniert (ausgefüllt) und auf Schreibgeschützt gestellt.

ok ich probiere das gleich noch mal aus.
Sabse96
Sabse96 02.07.2013 um 11:18:33 Uhr
Goto Top
also wenn ich es teste dann kommt folgendes:

"Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt"

Wird mir aber nur gebracht, wenn ich das FRG_Formular noch hinzufüge. Ohne das funktioniert es ohne Probleme
colinardo
colinardo 02.07.2013 um 11:23:16 Uhr
Goto Top
Ich glaube hier weiter zu diskutieren würde wieder zu einem Wust an Kommentaren wie letztes mal führen. Du verstehst den Code einfach nicht und kopierst nur. -> Teamviewer -> ID und Kennwort via PN