Seite 2 von 2

Pflichtfelder prüfen - Optionsfelder und Felder in Tabellen

Verfasst: 06.09.2013, 14:36
von nele_sonntag
Nun ja..ich gebe auch Schulungen.. :)

Das dürfte aber nur so zum Spaß einfach zu teuer sein.. Sinnvoller ist es jede Problemlösung , die du mit Hilfe des Forums gelöst bekommst, solang zu hinterfragen (und für Dich im Code auszukommentieren), sodass du verstehst, was da passiert, weißt, was jede Codezeile bedeutet, sodass du auch nach geraumer Zeit noch etwas damit anfangen kannst..

Ich selbst benutze auch weniger Formcalc, aber mitunter und da hat armine natürlich Recht, ist es wesentlich einfacher und vor allem (auch, wenn das vermutlich bei dir keien Role spielen dürfte) performanter.

Wenn man gar nicht aus der Programmiererei kommt, dürfte Formcalc auch wesentlich selbsterklärender sein..

So, wo hakt es denn nun?

Lg Mandy

Pflichtfelder prüfen - Optionsfelder und Felder in Tabellen

Verfasst: 06.09.2013, 14:50
von cs080376
Hi Mandy,

ich finde es klasse wie geduldig Ihr mit den Hilfesuchenden seit... ganz großes Lob.

Du hast schon recht. Eine Schulung so zum Spaß ist zu teuer. Daher habe ich bei uns im Unternehmen auch schon den Vorschlag gemacht, eine Person einzustellen, die nur für Formulare zuständig ist. Wir hätten hier soviel Potential. Mal sehen, vielleicht wirds ja was.

Die Überprüfung des Optionsfeldes habe ich jetzt hinbekommen. Habe mich aber dazu entschlossen, das Feld im Standard mit "1 = ja" zu belegen. Es werden ja dann die Felder der Tabelle geprüft. Wählt der User "2 = nein" wird die Tabelle dann ausgeblendet.

Nun zu meinem Verständnisproblem.
Ich steige ... weder in Formcal noch JavaScript ... dahinter wie die Logik der Prüfung in Tabellen ist. Das ist eigentlich das Hauptproblem. Im Moment finde ich da gar keinen Zugang. Vielleicht brauche ich dazu einfach mal Ruhe. Wenn Du eine einfache Erklärung hast, gerne her damit.

Desweiteren hat armine im Formular eine Funktion, die ich ebenfalls nicht nachvollziehen kann. In der ersten Zeile der Tabelle steht nur ein Plus. Erst wenn 2 Zeilen vorhanden sind, erscheint in beiden Zeilen ein Minus. Finde ich klasse, kann aber auch hier die Logik nicht erkennen.

Gruß
Christian

Pflichtfelder prüfen - Optionsfelder und Felder in Tabellen

Verfasst: 06.09.2013, 15:16
von armine
Hallo Christian,

herzlichen Dank für die Rückmeldung. Mit "Leider klappt es nicht so ganz." kann ich wenig anfangen. Was klappt den nicht?

Wenn du "JavaScript so einigermaßen auf die Reihe" bekommst, dann soll dich die (meistens) mit JS programmierte Erweiterung erleuchten. Da wird statt der Sternchens halt mal eine Schleife eingetippt, aber sonst ändert sich nicht viel. Bei [font=courier new]Investitionen.Inhalt.Invest_JS.Tab.Kopfzeile[/font] habe ich mir das aber verkniffen. Statt vier mal Sternchen vier Schleifen ...?

Wenn du noch Fragen hast, dann melde dich bitte mit konkreten Fragen.

vg armine

P.S.: Ich sehe gerade, du hast präzesiert.

"Die Überprüfung des Optionsfeldes habe ich jetzt hinbekommen. Habe ich aber dazu entschlossen, das Feld im Standard mit "1 = ja" zu belegen. Es werden ja dann die Felder der Tabelle geprüft. Wählt der User "2 = nein" wird die Tabelle dann ausgeblendet."
Ob du den einen oder den anderen Weg gehst ist vollkommen egal. Wenn angeklickt, dann ist [font=courier new]validate.nullTest = "disabled"[/font] für die Gruppe angesagt und gegebenenfalls die Tabelle einzublenden. Wird sie eingeblendet, müssen auch die Pflichtfelder aktiviert werden. Sind sie nämlich grungsätzlich aktiviert, werden sie auch bei ausgeblendeter Tabelle als Fehler erkannt.

"Ich steige ... weder in Formcal noch JavaScript ... dahinter wie die Logik der Prüfung in Tabellen ist."
In ausgefüllten Feldern gilt [font=courier new]validate.nullTest = "disabled"[/font]. In einer Schleife ist deswegen abzufragen, wo das nicht so ist.

"In der ersten Zeile der Tabelle steht nur ein Plus. Erst wenn 2 Zeilen vorhanden sind, erscheint in beiden Zeilen ein Minus. Finde ich klasse, kann aber auch hier die Logik nicht erkennen."
Der zustädige Code steht in [font=courier new]Investitionen.Inhalt.Invest_JS.Tab.Kopfzeile[/font].
Dem User werden nur Buttons mit Funktion angeboten. Wenn nur eine Zeile da ist, gibt es keine zum Löschen und folgerichtig braucht es dazu auch keinen Button.
Wenn die max. Zeilenzahl erreicht ist, trifft obige Logik den anderen Button ...

d.o.




Pflichtfelder prüfen - Optionsfelder und Felder in Tabellen

Verfasst: 13.09.2013, 08:31
von cs080376
Hallo zusammen,

was lange währt ... wird endlich gut.

In Ruhe hinsetzen und nachdenken... verstehen was passiert... dann klappt es auch.

Vielen Dank für Eure Hilfe und Unterstützung.

Gruß
Christian

Pflichtfelder prüfen - Optionsfelder und Felder in Tabellen

Verfasst: 30.09.2013, 16:18
von cs080376
Hallo armine,

mit ist bei Deiner Anlage Investition_TEST1.pdf noch ein Effekt aufgefallen, den ich nicht weg bekomme. Vielleicht kannst Du da weiterhelfen.

Hat man die maximale Anzahl der Zeilen in der oberen Tabelle erreicht, aber noch keine Zeile aufgefüllt, verschwinden (wenn man versehentlich bereits drucken möchte) bis auf 1 Zeile alle anderen Zeilen.

Das ist ja auch so gewollt und im Skript entsprechend hinterlegt.

Allerdings erscheint die "Plus-Schaltfläche" nicht mehr. Ich kann dann also keine Zeilen mehr hinzufügen.

Irgendwelche Ideen?

Gruß
Christian

 

Pflichtfelder prüfen - Optionsfelder und Felder in Tabellen

Verfasst: 30.09.2013, 17:17
von armine
Hallo Christian,

da gibt es nicht nur eine Idee, sondern eine Lösung. Was da fehlt, ist ein [font=courier new]recalculate[/font].

[font=courier new]Investitionen.Inhalt.PrintButton1::prePrint - (JavaScript, client)

if (Invest.Tab.presence == "visible") {
    for (i = Invest.Tab._Zeile.count - 1; i >= 0; i--) {
        if (xfa.resolveNode("Invest.Tab.Zeile[" + i + "].Beschreibung").rawValue == null && xfa.resolveNode("Invest.Tab.Zeile[" + i + "].Betrag").rawValue == null) {
            if (Invest.Tab._Zeile.count > Invest.Tab._Zeile.min) xfa.resolveNode("Invest.Tab.Zeile[" + i + "]").instanceManager.removeInstance(i)
        }
    }
    Invest.Tab.Kopfzeile.Steuerbox.recalculate(1);
}
var Sammelmeldung = "" ;
for (j = 0 ; j < xfa.host.numPages; j++) {
    var PF = xfa.layout.pageContent(j, "field") ;
    for (i = 0; i < PF.length; i++) {
        if (PF.item(i).validate.nullTest == "error") {
            Sammelmeldung = Sammelmeldung + PF.item(i).name + "\n"
        }
    }
}
if (Sammelmeldung > "") {
    xfa.host.messageBox("Sie haben nicht alle (farbig markierten) Pflichtfelder ausgefüllt.\n\n" + Sammelmeldung, "", 1) ;
    xfa.event.cancelAction = 1 ;
    app.runtimeHighlight = true ;
}[/font]

vg armine

Pflichtfelder prüfen - Optionsfelder und Felder in Tabellen

Verfasst: 01.10.2013, 07:52
von cs080376
Hallo armine,

ich habe das mal so übernommen.

Nun wird die Tabelle entsprechend zurückgesetzt und das "Plus" erscheint wieder. Allerdings wird nun das Drucken-Ereignis nicht mehr abgebrochen.

Gruß
Christian

Pflichtfelder prüfen - Optionsfelder und Felder in Tabellen

Verfasst: 01.10.2013, 09:03
von armine
Hallo Christian,

jetzt sollte alles funktionieren.

vg armine

Pflichtfelder prüfen - Optionsfelder und Felder in Tabellen

Verfasst: 01.10.2013, 09:10
von cs080376
Hallo armine,

vielen lieben Dank für die schnelle Hilfe.

Gruß
Christian

PS.
Ein Lob an alle, die hier im Forum unterstützend tätig sind.
Ohne Euch wäre ich im Adobe Livecycle Designer nie soweit gekommen!!