Seite 1 von 1
Zugriff auf Felder mit gleichem Namen
Verfasst: 03.11.2010, 10:11
von Krumbi
Hallo Fachgemeinde,
ich habe ein Dokument mit
fünf CheckButtons, die allesamt den Namen A haben. Nun möchte ich folgendes mit den Buttons machen:
Wenn ich in einem
DatePicker ein Datum eingetragen habe, dann sollen die Buttons
enabled werden. Ansonsten
disabled.
Da ich neu bin im PDF "programmieren", weiß ich nicht so genau, wie ich das alles richtig machen muss.
Herausgefunden habe ich bereits, dass der Wert des Datums in "formattedValue" steht und einfach nach "leer" abgefragt werden kann.
Nun möchte ich aber in der
validate Funktion des DatePickers überprüfen ob dieser Value belegt ist.
Pseudocode wie folgt:
Code: Alles auswählen
WENN Datum leer
DANN alle CheckButtons disabled
SONST alle CheckButtons enabled
Dieser Code funktioniert an sich:
Code: Alles auswählen
if (this.formattedValue == ""){ A.access="readOnly"; }
else { A.access="open"; }
Problem: Er setzt lediglich den ersten CheckButton readOnly. Ich möchte aber
alle fünf Buttons so haben.
Deshalb meine Idee:
Code: Alles auswählen
if (this.formattedValue == ""){ A[0].access="readOnly"; A[1].access="readOnly"; }
else { A[0].access="open"; A[1].access="open"; }
(Später dann natürlich mit Schleife)
Intellisense gibt mir die Möglichkeit, aber funktionieren tut es nicht. Ich kann mir nicht erklären warum...
Problem 2: Sobald er die validate des DatePicker aufruft (ich also im DatePicker was ändere), kommt ein Fehler: "<NAME> Prüfung fehlgeschlagen"
Ich bitte dringend um fachmännisches Wissen.
Zugriff auf Felder mit gleichem Namen
Verfasst: 03.11.2010, 10:22
von nele_sonntag
Hallo Krumbi,
lade doch mal Dein PDF hoch, dann ist es in der Regel einfacher.
LG Mandy
Zugriff auf Felder mit gleichem Namen
Verfasst: 03.11.2010, 10:43
von Krumbi
Es geht um die zweite Spalte. Die anderen können ignoriert werden.
Zugriff auf Felder mit gleichem Namen
Verfasst: 03.11.2010, 12:14
von nele_sonntag
Hallo Krumbi,
- Also zunächst würde ich alle Kästchen der Spalte 2 (Checkbuttons) im INITIALIZE-Ereignis des Formulars schon beim Öffnen des PDF auf schreibgeschützt setzen.
- Im EXIT-Ereignis des Datumsfeldes eine Prüfung vornehmen. Wenns null ist oder das DF ohne Eingabe wieder verlassen wurde, lasse es schreibgeschützt, wenn Datum ausgewählt, dann mach sie beschreibbar.
Code: Alles auswählen
if(this.rawValue != null)
{
Optionsfeldliste.access="open";
}
- Die Zuweisung der Zahlen würde ich wie folgt im CHANGE-Ereignis des Teilformulares, welches die Optionskästchen umgibt realisieren.
Code: Alles auswählen
switch(Optionsfeldliste.rawValue)
{
case "1":
Textfeld1.rawValue="5";
break;
case "2":
Textfeld1.rawValue="4";
break;
case "3":
Textfeld1.rawValue="3";
break;
case "4":
Textfeld1.rawValue="2";
break;
case "5":
Textfeld1.rawValue="1";
break;
}
Wenn ich mir die Bemerkung erlauben darf. Ich finde Deinen Aufbau ein wenig verwirrend. Warum hast Du lauter Optionskästchen, die nicht in einem Teilformular sind, wie es bei OK üblich ist, sondern alle einzeln?
Na ja, Du kannst Dir ja mal meinen Aufbau anschauen, vielleicht ist es ja eine Anregung für Dich. Dann ist es auch nicht so kompliziert, das PDF mit Skripten zu versehen. Bei Dir müsste man ständig in ein anderes Objekt wechseln.
Wenn Du noch Fragen hast oder ich Deine Frage falsch gelöst habe, melde Dich einfach noch mal.
LG Mandy
Zugriff auf Felder mit gleichem Namen
Verfasst: 03.11.2010, 13:38
von Krumbi
Okay vielen Dank. Das sieht gut aus.
Ich habe es so genutzt, weil ich neu bin
Aber die eigentliche Frage, wie ich Felder ansteuere mit dem selben Namen ist noch offen

Zugriff auf Felder mit gleichem Namen
Verfasst: 03.11.2010, 14:34
von nele_sonntag
Wie? Was möchtest Du ansteuern und warum und warum der gleiche Name?
Zugriff auf Felder mit gleichem Namen
Verfasst: 04.11.2010, 15:00
von Krumbi
Ich habe fünf CheckButtons mit identischem Namen. z.B. "A"
Jetzt möchte ich alle fünf seperat ansteuern. Leider geht es nicht über A[0] und A[1] und A[2]... Welche Möglichkeit muss ich nutzen?
Zugriff auf Felder mit gleichem Namen
Verfasst: 04.11.2010, 16:15
von nele_sonntag
Hallo Krumbi,
die Suche im Forum hätte es gebracht.

Die Mustervorlagen sind wirklich sehr hilfreich. Da steht natürlich nicht genau Dein Problem, aber viele, die man einfach adaptieren kann. Alles, was im Grunde genommen mit einer Schleife mehrere Felder anspricht, bearbeitet mehr oder weniger Dein Problem.
Ich habe im Übrigen darauf nicht geantwortet, da mir der Aufbau Deines PDFs ein wenig unsinnig erschien. Deswegen hatte ich Dir ja RICHITGE Optionskästchen empfohlen und gedacht, damit wäre es hinfällig.
Nun ja. Schau doch einfach mal bei:
Felder durch Klick auf Button in schreibgeschützt umwandeln
http://acronaut.de/forum44/1407.html
bspw. alle Felder auf Schreibschutz setzen in Mustervorlagen:
http://acronaut.de/forum44/1407.html
Prüfen mehrerer Felder durch eine Schleife
http://acronaut.de/forum44/1495.html
LG Mandy
PS: Hoffe, die PDF-Datei (anbei) hilft Dir weiter.
Zugriff auf Felder mit gleichem Namen
Verfasst: 06.11.2010, 15:56
von Krumbi
Vielen dank für die Hilfe!
Leider funktioniert in der Unbenannt.pdf von dir nicht, dass, wenn ich das Datum wieder herauslösche, die Felder auch wieder disabled werden. Aber ich denke das ist nur eine Kleinigkeit
Viele Dank schon einmal!
Grüße
Zugriff auf Felder mit gleichem Namen
Verfasst: 06.11.2010, 19:34
von nele_sonntag
Hallo Krumbi,
das war auch nicht Sinn des PDF. Damit habe ich Dein Frage von "Geschrieben: 4 Nov 2010 16:000" beantworten wollen und wollte Dir nur zeigen, wie Du alle Felder gleichen Namens ansprechen kannst.
Du musst das ganze nur noch in eine IF-Verzweigung packen. Codebeispiele, wie Du abprüfst, ob das Datumsfeld leer ist, habe ich Dir ja schon oben aufgeschrieben.
Das ganze kombinieren und gut.
LG Mandy