Text wird nach dem & Zeichen gelöscht

Fragen und Antworten rund um das Thema JavaScript im LiveCycleDesigner
zico
Beiträge: 12
Registriert: 29.07.2010, 14:24

Text wird nach dem & Zeichen gelöscht

Beitrag von zico » 19.09.2011, 13:26

Hallo,

ich habe hier ein komisches Problem welches ich auch durch Suchen in der Datenbank nicht lösen konnte.

Ich habe in meinem Formular einen Button definiert, den ich als Mailto nutze durch Javascript.
Der Body enthält nun auch diversen Text, dieser wird aber nach dem & Zeichen abgeschnitten, hat jemand eine Idee woran das liegen könnte ?

Hier mein Code in Event des Buttons:

this.resolveNode("#event.#submit").target = "mailto:?bcc="+$record.IF_SUBMIT_INFO_EMAIL.value+"&subject="+$record.IF_SUBMIT_INFO_SUBJECT.value+"&Body=\n\n" +

"\n\n\ Text vor&Text danach" +

"Summary:\n--------\n" +$record.IF_NOTES.NOTE_SUMMARY.value +
"\n\n\nReport:\n-------\n" +$record.IF_NOTES.NOTE_REPORT.value +
"\n\n\n"+$record.IF_CRM_URL.value

Alles was nach dem & steht, also beginnend mit "Text danach..." wird im Body der Email dann nicht mehr angezeigt.



Danke im Voraus
Zico

Benutzeravatar
Merklin
Beiträge: 1857
Registriert: 04.04.2009, 17:03

Text wird nach dem & Zeichen gelöscht

Beitrag von Merklin » 19.09.2011, 22:02

Hallo Zico,

Zu mehreren FormCalc-Operatoren gibt es ein äquivalentes mnemonisches Operator-Schlüsselwort. Diese Schlüsselwort-Operatoren sind immer dann nützlich, wenn FormCalc-Ausdrücke in HTML- und XML-Quelltext eingebettet sind, wo die Symbole „Kleiner als“  <   und „Größer als“  >  sowie das Et-Zeichen    &       eine vordefinierte Bedeutung haben und daher vermieden werden müssen. In der folgenden Tabelle sind alle FormCalc-Operatoren aufgeführt. Neben der symbolischen ist gegebenenfalls auch die mnemonische Darstellungsform angegeben

Gefunden in der Hilfe (F1)
Vielleicht ist das der Grund.

VG Merklin

zico
Beiträge: 12
Registriert: 29.07.2010, 14:24

Text wird nach dem & Zeichen gelöscht

Beitrag von zico » 20.09.2011, 07:53

Danke für den Tipp, ich nutze Javascript, nicht Formcalc.

Ich denke , es würde vielleicht funktioneiren wenn ich den String casten würde, ich wüßte nur nicht wie ?

ciberadobe
Beiträge: 29
Registriert: 16.09.2010, 11:27

Text wird nach dem & Zeichen gelöscht

Beitrag von ciberadobe » 26.09.2011, 08:57

Naiv gefragt - muss Du & Zeichen überhaupt benutzen?

 

zico
Beiträge: 12
Registriert: 29.07.2010, 14:24

Text wird nach dem & Zeichen gelöscht

Beitrag von zico » 18.10.2011, 13:58

Naja, das &-Zeichen brauche ich um die Variablen "Body" usw. befüllen zu können.
Ich möchte an der Stelle einfach Die Daten für den Betreff und den Body der Email vorbelegen

Benutzeravatar
Merklin
Beiträge: 1857
Registriert: 04.04.2009, 17:03

Text wird nach dem & Zeichen gelöscht

Beitrag von Merklin » 18.10.2011, 22:28

Hallo Zico,

also mein E-Mail Button Script lautet wie folgt.

Formular1.#subform[0].Schaltfläche1::click - (JavaScript, client)

event.target.mailDoc({
        bUI: false,
        cTo: "test@test.de",
        cSubject: "Betreff", // Text erscheint in der Betreffzeile
        cMsg: "Nachricht",   // Text erscheint in der E-Mail
        cSubmitAs: "PDF"   // oder "XML", je nachdem
    });

Wenn ich dich richtig verstehe, möchtest du Subjekt/Betreff mit einem Text aus einem anderen Textfeld Vorbelegen.

z.B. cSubject: "Festertext" +Textfeld1.rawValue + "_" +Textfeld2.rawValue + "_" + "Festertext";

Das gleiche für cMsg/Nachricht.

Ich hoffe es klappt, habe es selber nicht getestet. Ist aber ein Versuch wert.

VG Merklin


zico
Beiträge: 12
Registriert: 29.07.2010, 14:24

Text wird nach dem & Zeichen gelöscht

Beitrag von zico » 19.10.2011, 13:03

Danke für den Tipp, jetzt klappt es wunderbar !!!

Über die Maildoc Methode sind die "&" Zeichen kein Problem mehr !

:)

zico
Beiträge: 12
Registriert: 29.07.2010, 14:24

Text wird nach dem & Zeichen gelöscht

Beitrag von zico » 21.10.2011, 12:58

Leider habe ich jetzt doch noch ein Problem.

Über Maildoc , kann ich die Email erzeugen und habe keine Probleme mit dem "&" Zeichen. Leider kann ich mit dieser Funktion nicht bestimmen ob das ausgefüllte Formular als XML oder PDF verschickt werden soll, es wird immer ein PDF angehängt.

Da die enthaltenen Daten aber in einem Backend System verarbeitet werden müssen , sollen sie im XML Format geliefert werden, somit scheidet die MailDoc Funktion aus, laut Doku gibts keine Möglichkeit eine Formatwahl durchzuführen wie z.B. beim SubmitForm (trotz Deines Beispiels).

Das Problem habe ich nun also wieder , wenn ich den String zusammensetze mit:

var Mail = "mailto:" + Mailto + "?Subject=" + Betreff + "&Body=" + Nachricht + "&cc=" + CC + "&bcc=" + BCC;

Und z.B: im Feld Betreff ist ein "&" Zeichen hinterlegt, dann wird alles danach abgeschnitten, das Verhalten habe ich, wenn ich einen Standard Button verwende und Controly Type "Submit" einstelle , oder auch wenn ich einen anderen Typ verwende (Execute) über die SubmitForm Funktion.

z.B: var Betreff = "Henkel & Co OHG";

dann steht in der erzeugten Mail im Betreff "Henkel " , der Teil "& CO OHG" fehlt.

Ich hoffe es hat noch jemand eine Idee !!

zico
Beiträge: 12
Registriert: 29.07.2010, 14:24

Text wird nach dem & Zeichen gelöscht

Beitrag von zico » 21.10.2011, 13:13

Noch eine Zusatzinfo, habe jetzt mal per Messagebox mir den Betreff ausgegeben, die Zeichen werden erst beim Erzeugen der Email abgeschnitten (ich verwende Outlook 2003).

xfa.host.messageBox (Betreff);

Hier noch : "Henkel & Co OHG"

//cURL: Mail,
event.target.submitForm({
cURL: "mailto:" + Mailto + "?Subject=" + $record.IF_SUBMIT_INFO_SUBJECT.value  + "&Body=" + Nachricht + "&cc=" + CC + "&bcc=" + BCC,
bEmpty: true,
cSubmitAs: "XML"

});


Hier steht dann nur noch "Henkel " im Subject.




Benutzeravatar
Merklin
Beiträge: 1857
Registriert: 04.04.2009, 17:03

Text wird nach dem & Zeichen gelöscht

Beitrag von Merklin » 23.10.2011, 17:23

Hallo Zico,

geht es auch nicht wenn du unter:

cSubmitAs: "XML"  

ein gibst?

VG Merklin

P.S. Ich denke mal es liegt daran das du hinter HENKEL, wieder dieses & eingegeben hast. Vielleicht muss es so aussehen.

"Henkel"+"&"+ "co.kg" oder so ähnlich



Antworten