Ein Syntaxproblem

Fragen und Antworten rund um das Thema JavaScript im LiveCycleDesigner
Tuono
Beiträge: 16
Registriert: 03.04.2014, 11:35

Ein Syntaxproblem

Beitrag von Tuono » 24.04.2014, 13:40

Hallo zusammen,

ich habe eigentlich nur ein Syntaxproblem und bekomme es leider nicht gelöst:

Code: Alles auswählen

var namePart = name.rawValue;
Hiermit vesuche ich den Wert eines Feldes zu übernehmen, was nicht funktioniert.

Beim speichern meldet er als Name "undefiened"

Auch das folgende funktioniert nicht:

Code: Alles auswählen

var namePart = Formular1.Teilformular.Kopf.Tabelle_kopf.Zeile1[0].name.rawValue;
Was mache ich denn da falsch?

Vielen Dank!

Benutzeravatar
nele_sonntag
Beiträge: 2742
Registriert: 04.05.2009, 15:12
Wohnort: Frankfurt
Kontaktdaten:

Ein Syntaxproblem

Beitrag von nele_sonntag » 24.04.2014, 14:01

Was soll den lt. Fehlermeldung undefined sein? Die Variable oder das Textfeld, welches Du ansprechen willst?

Perfekt wäre Dein PDF!

Tuono
Beiträge: 16
Registriert: 03.04.2014, 11:35

Ein Syntaxproblem

Beitrag von Tuono » 24.04.2014, 14:05

Hallo Mandy,

ich speichere das Formular über JS (saveas) und gebe dem Formular einen neuen Namen, bestehend aus einem Textfeld und dem aktuellen Datum. Das Datum trägt er wie gewünscht ein, den Namen aus dem Textfeld allerdings nicht. Der erscheint dann als "undefined".

Aber du hast Recht (!) anbei mein Formular. Dann wirst du es sicher besser verstehen.

LG

Uli

Benutzeravatar
nele_sonntag
Beiträge: 2742
Registriert: 04.05.2009, 15:12
Wohnort: Frankfurt
Kontaktdaten:

Ein Syntaxproblem

Beitrag von nele_sonntag » 24.04.2014, 14:59

Also schon mal so al kleienr Tipp. Wenn Du einen Pfad oder einen Objektnamen eingibst, danach den Punkt setzt und es kommt KEIN Propertyinspector..so kannst Du idR davon ausgehen, dass der Pfad oder Objektname so nicht ausreichend ist..das ist in Deinem Fall schon mal so. :)

So..und um Fehlereingrezung zu betreiben bzw. Pseudodebugging, könntest Du mit app.alert(); schauen, wo er was nicht bekommt.

Code: Alles auswählen

var namePart = Tabelle_kopf.Zeile1.name.rawValue;
app.alert(Tabelle_kopf.Zeile1.name.rawValue);
app.alert(namePart);
var datum = new Date();
app.alert(datum);
var datePart = (datum.getDay() + 8) + "-" + (datum.getMonth() + 1) + "-" + datum.getFullYear();
app.alert(datePart);
var fullName = "/o/Biotop Leitung/" + namePart + "-" + datePart + ".pdf";
app.alert(fullName );
myTrustedSaveAs(event.target,fullName);

Benutzeravatar
nele_sonntag
Beiträge: 2742
Registriert: 04.05.2009, 15:12
Wohnort: Frankfurt
Kontaktdaten:

Ein Syntaxproblem

Beitrag von nele_sonntag » 24.04.2014, 15:03

Das alles macht er bei mir korrekt, also liegts an der letzten Zeile bzw. Deiner TrustedSave Funktion/Datei..

Tuono
Beiträge: 16
Registriert: 03.04.2014, 11:35

Ein Syntaxproblem

Beitrag von Tuono » 24.04.2014, 15:21

Mmmhh, mit deiner Version klappts jetzt auch bei mir...ich hab  wirklich keine Ahnung warum...aber es geht.

Vielen Dank!!

Kann ich die Meldung zur Erteilung der Schreibberechtigung auch noch unterdrücken?

Screenshot im Anhang.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Benutzeravatar
nele_sonntag
Beiträge: 2742
Registriert: 04.05.2009, 15:12
Wohnort: Frankfurt
Kontaktdaten:

Ein Syntaxproblem

Beitrag von nele_sonntag » 24.04.2014, 15:32

..nun ja, wie gesagt, du hast falsch auf das Feld name verwiesen. Da konnte es nicht gehen.

Da Du ins System eingreifst, wirst Du das nicht verhindern können. Es ist ein Sicherheitsfeature - soweit ich weiß - denn sonst könntest Du beliebig auf dem Rechner Code ausführen.

Ich bin mir nicht sicher - da ich selbst damit nicht arbeite - inwieweit die TrustedSave auch den Alert aushebelt.

Tuono
Beiträge: 16
Registriert: 03.04.2014, 11:35

Ein Syntaxproblem

Beitrag von Tuono » 24.04.2014, 15:35

Alles Super, vielen Dank!

Mit der Meldung kann ich (bzw. die User) leben. Ohne wär's schöner, aber was soll's.

LG

Uli

Benutzeravatar
radzmar
Beiträge: 962
Registriert: 26.10.2011, 10:18

Ein Syntaxproblem

Beitrag von radzmar » 24.04.2014, 15:36

Kleiner Hinweis:

Man sollte Objekten NIEMALS Namen geben, die für Skriptmethoden reserviert sind.
name ist so einer, denn darüber wird der Objektname zurückgegeben.

NICHT GUT:

Code: Alles auswählen

var namePart = name.rawValue;
BESSER:

Code: Alles auswählen

var namePart = Name.rawValue;
oder

Code: Alles auswählen

var namePart = partName.rawValue;
oder...

Tuono
Beiträge: 16
Registriert: 03.04.2014, 11:35

Ein Syntaxproblem

Beitrag von Tuono » 24.04.2014, 15:37

Danke für den Tip!

Ist bereits geändert.

Antworten