Hi,
Ich habe vier sich gegenseitig ausschließende Optionsfelder in mein PDF Formular eingebracht. Neben dem 3. und 4. Optionsfeld befindet sich ein Datumsfeld. Wählt man Optionsfeld 1 oder 2, sollen mit einem Script die Datumsfelder neben Optionsfeld 3 und 4 geleert werden.
Vielen Dank für Eure Hilfe.
Gruß Schulzenman
Optionsfeld soll Datumsfeld leeren
-
- Beiträge: 17
- Registriert: 01.09.2008, 12:45
- FileAffairs
- Beiträge: 372
- Registriert: 15.09.2008, 20:14
Optionsfeld soll Datumsfeld leeren
Hallo Schulzenmann,
in JavaScript sieht das so aus
Gruß
FileAffairs
in JavaScript sieht das so aus
Code: Alles auswählen
datumsfeld.rawValue = null;
FileAffairs
-
- Beiträge: 17
- Registriert: 01.09.2008, 12:45
Optionsfeld soll Datumsfeld leeren
Vielen Dank FileAffairs,
ich probiere es gleich aus und werde berichten ob ich es hinbekomme.
Ich benutze folgendes Script, um ein Feld vor dem Formularversand per e-Mail zu prüfen, ob dieses gefüllt ist.
var Test;
if(txtf_78.rawValue == null | txtf_78.rawValue == " ")
{
Test = 0;
txtf_78.border.edge.color.value = "255,0,0";
}
else
{
Test = 1;
}
if(Test == 1)
{
}
else
{
app.alert("Prüfen Sie Ihre Daten");
}
Das Script funktioniert auch soweit, nur wenn ich die Schaltfläche in der das Script hinterlegt ist, in ein anderes Teilformular ziehe, funktioniert die Prüfung nicht mehr.
Desweiteren möchte ich nur Felder die sichtbar sind prüfen lassen. Ich habe mehrere Teilformulare die aus dem Layout ausgeblendet sind. Erst wenn eines von denen durch ein Dropdownfeld angewählt wird, soll dieses auch zur Prüfung herangezogen werden.
Ich bitte noch einmal um Eure Hilfe. Das Formular habe ich schon gepostet unter meinem ersten Bericht.
Vielen Dank,
Gruß Schulzenman
ich probiere es gleich aus und werde berichten ob ich es hinbekomme.
Ich benutze folgendes Script, um ein Feld vor dem Formularversand per e-Mail zu prüfen, ob dieses gefüllt ist.
var Test;
if(txtf_78.rawValue == null | txtf_78.rawValue == " ")
{
Test = 0;
txtf_78.border.edge.color.value = "255,0,0";
}
else
{
Test = 1;
}
if(Test == 1)
{
}
else
{
app.alert("Prüfen Sie Ihre Daten");
}
Das Script funktioniert auch soweit, nur wenn ich die Schaltfläche in der das Script hinterlegt ist, in ein anderes Teilformular ziehe, funktioniert die Prüfung nicht mehr.
Desweiteren möchte ich nur Felder die sichtbar sind prüfen lassen. Ich habe mehrere Teilformulare die aus dem Layout ausgeblendet sind. Erst wenn eines von denen durch ein Dropdownfeld angewählt wird, soll dieses auch zur Prüfung herangezogen werden.
Ich bitte noch einmal um Eure Hilfe. Das Formular habe ich schon gepostet unter meinem ersten Bericht.
Vielen Dank,
Gruß Schulzenman
- FileAffairs
- Beiträge: 372
- Registriert: 15.09.2008, 20:14
Optionsfeld soll Datumsfeld leeren
Hallo Schulzenmann,
das Problem mit der Prüfung besteht darin, dass der Name des Feldes nur aufgelöst werden kann, wenn sich die Schaltfläche in demselben Teilformular befindet wie das zu prüfende Feld.
Zudem stimmt die Syntax für das oder nicht.
Der Code sollte so aussehen:
Zur Prüfung nur der sichtbaren Felder baust Du Dir am besten eine Liste aller Felder auf und prüfst dort ob diese sichtbar sind oder nicht:
Schönen Gruß
FileAffairs
das Problem mit der Prüfung besteht darin, dass der Name des Feldes nur aufgelöst werden kann, wenn sich die Schaltfläche in demselben Teilformular befindet wie das zu prüfende Feld.
Zudem stimmt die Syntax für das oder nicht.
Der Code sollte so aussehen:
Code: Alles auswählen
// Suche das Feld im Formular. "teilformular" muss entsprechend
// angepasst werden.
var oField = xfa.resolveNode("teilformular.txtf_78")
if(oField.rawValue == null || oField.rawValue == " ")
{
Test = 0;
txtf_78.border.edge.color.value = "255,0,0";
app.alert("Prüfen Sie Ihre Daten");
}
Code: Alles auswählen
// Liste aller Felder einer Seite auf
for (var nPageCount = 0; nPageCount < xfa.host.numPages; nPageCount++) {
var oFields = xfa.layout.pageContent(nPageCount, "field");
var nNodesLength = oFields.length;
// Set the field property.
for (var nNodeCount = 0; nNodeCount < nNodesLength; nNodeCount++) {
if (oFields.item(nNodeCount).presence == "visible") {
// tu was
}
}
}
FileAffairs
-
- Beiträge: 17
- Registriert: 01.09.2008, 12:45
-
- Beiträge: 17
- Registriert: 01.09.2008, 12:45
Optionsfeld soll Datumsfeld leeren
Was hälst Du von diesem Script?
Sollte das so etwas sein wie ich suche, bitte sage mir was ich noch anpassen muss!
z.B. das Wort "numFields"? Muss das ersetzt werden mit der Bezeichnung meiner Felder?
Danke für die viele Mühe.
Code: Alles auswählen
var isnf = this.numFields;
var fehlFelder ="";
var feldFocus = "";
// Schleife fuer alle Felder
for (var i = 0; i < this.numFields; i++){
var isnfn = this.getNthFieldName(i);
var anfn = this.getField(isnfn);
var typfield = anfn.type; // nach Art des Feldes suchen
if(typfield!="button"){
if (anfn.required == true && anfn.display==display.visible){
if (anfn.value == "" || anfn.value == "Off"){
//app.alert("Feld : " + isnfn + " ist auf required!");
if (fehlFelder == ""){
feldFocus = anfn;
}
anfn.strokeColor = color.red;
//fehlFelder = fehlFelder + isnfn + "
";
fehlFelder = fehlFelder + anfn.userName + "
";
} // Ende wenn nix im erforderlichen Feld
else{
anfn.strokeColor = color.transparent;
}
} // Ende wenn erforderlich
} // Ende wenn nicht Button
} // Ende alle Felder
if(fehlFelder!=""){
app.alert("Bitte füllen Sie noch die folgenden Felder aus:
" + fehlFelder + "
Diese Felder wurden rot umrandet.");
var erfkontrolle = "ja";
this.getField("Inhaber.Name").setFocus();
}
else{
app.alert("Alles OK, jetzt würde der Druckvorgang beginnen!");
}
z.B. das Wort "numFields"? Muss das ersetzt werden mit der Bezeichnung meiner Felder?
Danke für die viele Mühe.
-
- Beiträge: 17
- Registriert: 01.09.2008, 12:45
Optionsfeld soll Datumsfeld leeren
Hier meine Lösung, mit der ich sehr zufrieden bin:
Code: Alles auswählen
var fehler = false;
var fehler_text = "";
if ( Formular1.Teilformular1.OF_beschaeftigung.rawValue == "") {
fehler = true;
fehler_text = fehler_text + "Bitte Beschäftigungsverhältnis auswählen!\n";
}
if ( Formular1.Teilformular1.OF_anrede.rawValue == "") {
fehler = true;
fehler_text = fehler_text + "Bitte Anrede auswählen!\n";
}
if ( Formular1.Teilformular1.txf_name.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Name fehlt!\n";
}
if ( Formular1.Teilformular1.txf_vorname.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Vorname fehlt!\n";
}
if ( Formular1.Teilformular1.txf_strasse.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Straße fehlt!\n";
}
if ( Formular1.Teilformular1.txf_plz.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "PLZ / Wohnort fehlt!\n";
}
// pruefe Teilformulare in Abhaengigkeit vom Inhalt des Optionsfeldes "Beschaeftigungsverhaeltnis"
// Optionsfeld 1 "gewerblicher Arbeitnehmer"
if( Formular1.Teilformular1.OF_beschaeftigung.rawValue == 1) {
if( Formular1.Teilformular1.Teilformular1_1.txf_geburtstag.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Geburtstag fehlt!\n";
}
if( Formular1.Teilformular1.Teilformular1_1.txf_geburtsort.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Geburtsort fehlt!\n";
}
if( Formular1.Teilformular1.Teilformular1_1.dropdown_familie.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Familienstand fehlt!\n";
}
if( Formular1.Teilformular1.Teilformular1_1.txf_nationalitaet.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Nationalität fehlt!\n";
}
if( Formular1.Teilformular1.Teilformular1_1.txf_beruf.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "erlernter Beruf oder z.Z. ausgeübte Tätigkeit fehlt!\n";
}
}
// Optionsfeld 2 "Angestellter"
if( Formular1.Teilformular1.OF_beschaeftigung.rawValue == 2) {
if( Formular1.Teilformular1.Teilformular1_1.txf_geburtstag.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Geburtstag fehlt!\n";
}
if( Formular1.Teilformular1.Teilformular1_1.txf_geburtsort.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Geburtsort fehlt!\n";
}
if( Formular1.Teilformular1.Teilformular1_1.dropdown_familie.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Familienstand fehlt!\n";
}
if( Formular1.Teilformular1.Teilformular1_1.txf_nationalitaet.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Nationalität fehlt!\n";
}
if( Formular1.Teilformular1.Teilformular1_1.txf_beruf.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "erlernter Beruf oder z.Z. ausgeübte Tätigkeit fehlt!\n";
}
}
// Optionsfeld 4 "gewerblicher Arbeitnehmer"
if( Formular1.Teilformular1.OF_beschaeftigung.rawValue == 4) {
if( Formular1.Teilformular1.Teilformular1_1.txf_geburtstag.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Geburtstag fehlt!\n";
}
if( Formular1.Teilformular1.Teilformular1_1.txf_geburtsort.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Geburtsort fehlt!\n";
}
if( Formular1.Teilformular1.Teilformular1_1.dropdown_familie.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Familienstand fehlt!\n";
}
if( Formular1.Teilformular1.Teilformular1_1.txf_nationalitaet.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Nationalität fehlt!\n";
}
if( Formular1.Teilformular1.Teilformular1_1.txf_beruf.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "erlernter Beruf oder z.Z. ausgeübte Tätigkeit fehlt!\n";
}
}
// Optionsfeld 6 "gewerblicher Arbeitnehmer"
if( Formular1.Teilformular1.OF_beschaeftigung.rawValue == 6) {
if( Formular1.Teilformular1.Teilformular1_1.txf_geburtstag.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Geburtstag fehlt!\n";
}
if( Formular1.Teilformular1.Teilformular1_1.txf_geburtsort.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Geburtsort fehlt!\n";
}
if( Formular1.Teilformular1.Teilformular1_1.dropdown_familie.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Familienstand fehlt!\n";
}
if( Formular1.Teilformular1.Teilformular1_1.txf_nationalitaet.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Nationalität fehlt!\n";
}
if( Formular1.Teilformular1.Teilformular1_1.txf_beruf.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "erlernter Beruf oder z.Z. ausgeübte Tätigkeit fehlt!\n";
}
}
//pruefe dropdown Feld "geplante Maßnahme" auf Inhalt
if ( Formular1.Teilformular1.massnahme.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Bitte Maßnahme auswählen!\n";
}
// pruefe Teilformulare in Abhaengigkeit vom Inhalt des dropdown Feldes
// Dropdownlistenelement 1 "Einstellung / Eigruppierung"
if( Formular1.Teilformular1.massnahme.rawValue == 1) {
if( Formular1.Teilformular2.datum_ab.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Eintrittsdatum fehlt!\n";
}
if( Formular1.Teilformular2.txf_als.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Bezeichnung der auszuführenden Tätigkeit fehlt!\n";
}
if( Formular1.Teilformular2.txf_abteilung.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Abteilung fehlt!\n";
}
if( Formular1.Teilformular2.dropdown_einstufung.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Vorgesehene tarifliche Einstufung fehlt!\n";
}
if ( Formular1.Teilformular2.Optionsfeldliste.rawValue == "") {
fehler = true;
fehler_text = fehler_text + "Bitte eine Bedingung auswählen!\n";
}
}
//pruefe Datumsangaben in Abhaengigkeit der Optionsfeldliste fuer die "Einstellung/Eingruppierung"
if( Formular1.Teilformular2.Optionsfeldliste.rawValue == 2) {
if( Formular1.Teilformular2.datum_bis.rawValue == null) {fehler = true;
fehler_text = fehler_text + "Datum, bis wann die Einstellung geplant ist fehlt!\n";
}
}
if( Formular1.Teilformular2.Optionsfeldliste.rawValue == 3) {
if( Formular1.Teilformular2.datum_probe_bis.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Datum, bis wann die Einstellung zur Probe geplant ist fehlt!\n";
}
}
if( Formular1.Teilformular2.Optionsfeldliste.rawValue == 4) {
if( Formular1.Teilformular2.txf_sonstiges1.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Sie haben eine Bedingung zur Einstellung / Eingruppierung ausgewählt, aber keine Angaben gemacht!\n";
}
}
// Dropdownlistenelement 2 "Umgruppierung"
if( Formular1.Teilformular1.massnahme.rawValue == 2) {
if( Formular1.Teilformular3.datum_ab.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Datum, ab wann die Maßnahme geplant ist fehlt!\n";
}
if( Formular1.Teilformular3.dropdown_lohn1.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "jetzige Lohn-/Gehaltsgruppe fehlt!\n";
}
if( Formular1.Teilformular3.dropdown_lohn2.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "zukünftige Lohn-/Gehaltsgruppe fehlt!\n";
}
if( Formular1.Teilformular3.txf_begruendung.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Begründung zur Umgruppierung fehlt!\n";
}
}
// Dropdownlistenelement 3 "Versetzung"
if( Formular1.Teilformular1.massnahme.rawValue == 3) {
if( Formular1.Teilformular4.datum_ab.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Datum, ab wann die Versetzung geplant ist fehlt!\n";
}
if( Formular1.Teilformular4.txf_abteilung.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Abteilung fehlt!\n";
}
if( Formular1.Teilformular4.txf_als.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Bezeichnung der auszuführenden Tätigkeit fehlt!\n";
}
if( Formular1.Teilformular4.dropdown_einstufung.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Vorgesehene tarifliche Einstufung fehlt!\n";
}
if( Formular1.Teilformular4.txf_begruendung.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Begründung fehlt!\n";
}
}
// Dropdownlistenelement 4 "Leiharbeit"
if( Formular1.Teilformular1.massnahme.rawValue == 4) {
if( Formular1.Teilformular5.datum_ab.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Datum, ab wann der/die Leiharbeiter/in eingesetzt werden soll fehlt!\n";
}
if( Formular1.Teilformular5.datum_bis.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Datum, bis wann der/die Leiharbeiter/in eingesetzt werden soll fehlt!\n";
}
if( Formular1.Teilformular5.txf_als.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Bezeichnung der auszuführenden Tätigkeit fehlt!\n";
}
if( Formular1.Teilformular5.txf_abteilung.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Abteilung fehlt!\n";
}
if( Formular1.Teilformular5.txf_zweck.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Zweck fehlt!\n";
}
if( Formular1.Teilformular5.txf_gestellt.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Zeitarbeitsunternehmen fehlt!\n";
}
if( Formular1.Teilformular5.txf_stunde.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "vereinbarter Stundensatz fehlt!\n";
}
}
// Dropdownlistenelement 5 "Ausbildung"
if( Formular1.Teilformular1.massnahme.rawValue == 5) {
if( Formular1.Teilformular6.datum_vom.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Datum, ab wann die Ausbildung beginnt fehlt!\n";
}
if( Formular1.Teilformular6.datum_bis.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Datum, bis wann die Ausbildung erfolgt fehlt!\n";
}
if( Formular1.Teilformular6.txf_zur.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Berufsbezeichnung fehlt!\n";
}
if( Formular1.Teilformular6.dropdown_einstufung.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Vorgesehene tarifliche Einstufung fehlt!\n";
}
}
// Dropdownlistenelement 6 "Praktikum"
if( Formular1.Teilformular1.massnahme.rawValue == 6) {
if( Formular1.Teilformular7.datum_vom.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Datum, ab wann der/die Praktikant/in beschäftigt wird fehlt!\n";
}
if( Formular1.Teilformular7.datum_bis.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Datum, bis wann der/die Praktikant/in beschäftigt wird fehlt!\n";
}
if( Formular1.Teilformular7.txf_abteilung.rawValue == null) {
fehler = true;
fehler_text = fehler_text + "Abteilung/Bereich fehlt!\n";
}
}
if ( fehler == true) {
app.alert( "Achtung! Sie haben nicht alle Felder ausgefüllt.\n\n" + fehler_text);
} else {
xfa.host.print(1, "0", (xfa.host.numPages -1).toString(), 0, 1, 0, 0, 0);
}