Acronaut Diskussions Forum Home

Freies User Forum für

ADOBE® ACROBAT®

Acronaut Diskussions Forum > Adobe Livecycle Designer > JavaScript im LCD > Komplexe Berchnung mit Abhängigkeitsfeldern
Navigation
Nicht angemeldet

Login | Registrieren 

  

Suche

Erweiterte Suche

Newsletter

Mitgliederliste

Kalender

Moderatoren/Partner

Hilfe

Banner

Kontakt/Impressum
Komplexe Berchnung mit Abhängigkeitsfeldern
 Moderiert von: WebZopp, Gentleman, FileAffairs, acronaut Produkt: Adobe LiveCycle Designer Version nicht definiert  

Neue Diskussion

Antworten

Drucken
VerfasserBericht
ichfragmichgrad
Member


Eintragen seit: 6 Dez 2012
Herkunft: Deutschland
Berichte: 16
Status:  Offline
 Geschrieben: 22 Sep 2017 22:26

Text übernehmen

Antworten
Hallo,

ich habe folgende Berechnungen durchzuführen, und komme überhaupt nicht klar. Zur Info: ich in Grafiker, kein Programmierer :shock:

Ausgabefeld = Wert 2 x 0,9 (max. 3.045 EUR) abzgl. 12,13 %
Ausgabefeld = Wert 1: Bei Eingabefeld 3 = altes Bundesland = Wert 1 (bis max. 6.350 €) x 0,29 // Bei Eingabefeld 3 = neues Bundesland = Wert 1 (bis max. 5.700 €) x 0,29
Ausgabefeld = Wert 1: Bei Eingabefeld 3 = altes Bundesland = Wert 1 (bis max. 6.350 €) x 0,145 // Bei Eingabefeld 3 = neues Bundesland = Wert 1 (bis max. 5.700 €) x 0,145
Ausgabefeld = Wert 1: Bei Eingabefeld 3 = altes Bundesland = Wert 1 (bis max. 6.350 €) x 0,16 // Bei Eingabefeld 3 = neues Bundesland = Wert 1 (bis max. 5.700 €) x 0,16
Ausgabefeld = Wert 1: Bei Eingabefeld 3 = altes Bundesland = Wert 1 (bis max. 6.350 €) x 0,075 // Bei Eingabefeld 3 = neues Bundesland = Wert 1 (bis max. 5.700 €) x 0,075

Und, auf einer anderen Seite des PDF-Dokuments:

Ausgabefeld = Wert 1: Bei Eingabefeld 3 = altes Bundesland = Wert 1 (bis max. 6.350 €) x 0,29 // Bei Eingabefeld 3 = neues Bundesland = Wert 1 (bis max. 5.700 €) x 0,29
Ausgabefeld = Wert 4: Bei Eingabefeld 3 = altes Bundesland = Wert 1 (bis max. 6.350 €) x 0,29 // Bei Eingabefeld 6 = neues Bundesland = Wert 1 (bis max. 5.700 €) x 0,29
Wählbar
Eingabefeld
Eingabefeld
Ausgabefeld = Wert 15 abzgl. (sofern 17 angewählt) Wert 19 oder 22 abzgl. Wert 25
Ausgabefeld = Wert 16 abzgl. (sofern 17 angewählt) Wert 20 oder 23 abzgl. Wert 26

Die Felder "altes Bundesland" und "neues Bundesland" sind bisher Optionsfelder.

Kann einer helfen?

Mein Dank wäre unendlich!
Andreas

PS Ich werde natürlich noch das Dokument hier irgendwie laden/veröffentlichen, sorry. Habe ich vergessen. Folgt.

Letzte Änderung am 25 Sep 2017 11:21 von ichfragmichgrad

ichfragmichgrad
Member


Eintragen seit: 6 Dez 2012
Herkunft: Deutschland
Berichte: 16
Status:  Offline
 Geschrieben: 25 Sep 2017 11:22

Text übernehmen

Antworten
Hallo noch einmal.

Das Dokument darf ich aus Gründen der Vertraulichkeit leider nicht hier einspielen. Aber mal zur Logik der Berechnungen:

Es wird in Feld 1 bzw. 2 ein Nettoeinkommen und in folgenden Optionsbuttons „neue“ oder „alte Bundesländer“ abgefragt. Diese sind u. a. entscheidend für die Berechnungsfelder.

Von der Logik her denke ich müsste es z. B. für die Formeln wie folgt aussehen (natürlich in „Grafiker-Programmiersprache“, also völlig falsch) :

Ausgabefeld A = if WERT 2 </= 3.045 then (WERT 2 x 0,9) - (WERT 2 x 0,1213), else if  WERT 2 > 3.045, then (3.045 x 0,9) - (3.045 x 0,1213)

Ausgabefeld B = if Optionsbutton ALTES BUNDESLAND: if WERT 1 </= 6350  then (WERT 1 x 0,29), else if  WERT 1 > 6350 then (6350 x 0,29),
                            ELSE if Optionsbutton NEUES BUNDESLAND: if WERT 1 <= 5700  then (WERT 1 x 0,29), else if  WERT 1 > 5700 then (5700 x 0,29)

Irgendwie so : )

Ich könnte mir von einem Bespiel ja den Code / die Systematik übertragen. Die Zahlenanpassung bekomme ich sicherlich hin - nicht aber den Code.

Hilfe. :shock:

armine
Administrator
 

Eintragen seit: 15 Mai 2009
Herkunft:  
Berichte: 2361
Status:  Offline
 Geschrieben: 25 Sep 2017 17:07

Text übernehmen

Antworten
Hallo Andreas,

das komplexeste Problem scheint mir, dass du es nicht schaffst, eine Datei hochzuladen. Dagegen ist die Anwendung des Dreisatzes unter Verwendung von JavaScript trivial.
Aus dem Beispiel solltest alles Wissenswerte entnehmen können.

vg armine

P.S.: Wird da eine Gehaltsabrechnung von einem Grafiker gestrickt?

Anlage: ichfragmichgrad1.pdf (13 Mal aufgenommen)

ichfragmichgrad
Member


Eintragen seit: 6 Dez 2012
Herkunft: Deutschland
Berichte: 16
Status:  Offline
 Geschrieben: 26 Sep 2017 08:32

Text übernehmen

Antworten
Vielen Dank, armine,

Damit komme ich sicher weiter. Wie ich zuvor schrieb, darf ich die Datei leider nicht hochladen, das wurde mir vom Autor untersagt.
Was für den einen trivial, ist für den anderen zu komplex :D

Und: Nein, es handelt sich um eine andere Berechnung.

Ich werde mich nicht scheuen, sofern ich doch nicht mit deinem Beispiel zurecht komme, nochmals hier zu post. Es sei denn, dass dies nicht gewünscht wird.

Vielen Dank nochmals!!!!

ichfragmichgrad
Member


Eintragen seit: 6 Dez 2012
Herkunft: Deutschland
Berichte: 16
Status:  Offline
 Geschrieben: 27 Sep 2017 21:48

Text übernehmen

Antworten
Liebe armine, liebes Forum,

leider komme ich mit dem Beispiel nicht weiter. Wenn ich richtig geshen habe, ist der Button OST / WEST in armines Beispiel nicht berücksichtigt.

Ich habe die relevante Stelle mal als testdatei aufgebaut und es tatsächlich geschafft, diese hier zu posten / anzuhängen.

Die Berechnung soll wie folgt stattfinden:
Ausgabe: Bei Optionsfeld = altes Bundesland (aB1) = Eingabe (bis max. 6.350 €) x 0,29 // Bei Optionsfeld = neues Bundesland (nB1) = Eingabe (bis max. 5.700 €) x 0,29

Leider beherrsche ich kein JavaScript - vermutlich hilft mir daher armines Lösung nicht (vielen Dank dafür übrigens). Ich kann sie nicht auf meine Problem übertragen.

Die Schwierigkeit sehe ich im Max-Wert. Ab einem bestimmten Wert soll nur noch dieser für die Berechnung verwendet werden. BIS dahin aber der tatsächlich eingegebene Wert (Eingabe).

Es wäre schön, wenn jemand helfen könnte. Es handelt sich überigens um eine Versicherung. Das Formular sollte "mal eben" (wie immer) erstellt werden.

Leider bin ich offenbar zu unintelligent. Daher würde ich mich über Hilfe sehr freuen.

Vielen Dank vorab,
der doofe/arme Grafiker

Anlage: testdatei.pdf (6 Mal aufgenommen)

ichfragmichgrad
Member


Eintragen seit: 6 Dez 2012
Herkunft: Deutschland
Berichte: 16
Status:  Offline
 Geschrieben: 27 Sep 2017 21:51

Text übernehmen

Antworten
Ich habe die vielen Smilys hinter meinen "bissigen" Sätzen vergessen :D

Bin echt auf eure Hilfe angewiesen. Ich schätze das Forum hier sehr und habe es schon in der Vergangenheit oft genutzt, um z. B. "wachsende Textfelder" zu erstellen.

Schön, dass es euch gibt! :D

ichfragmichgrad
Member


Eintragen seit: 6 Dez 2012
Herkunft: Deutschland
Berichte: 16
Status:  Offline
 Geschrieben: 27 Sep 2017 22:00

Text übernehmen

Antworten
... das hier habe ich mir übrigens mal zurechtgestammelt, aber das funktioniert nicht im LCD:
--- javascript-Start ---
if (aB1) {
    if (Eingabe <= 6350) {
        Ausgabe  = Eingabe * 0.29;
    } else {
        Ausgabe = 6350 * 0.29;
    }
} else {
    if (nB1) {
        if (Eingabe <= 5700) {
            Ausgabe = Eingabe * 0.29;
        } else {
            Ausgabe = 5700 * 0.29;
        }
    }
}
--- javascript-Ende ---

ichfragmichgrad
Member


Eintragen seit: 6 Dez 2012
Herkunft: Deutschland
Berichte: 16
Status:  Offline
 Geschrieben: 27 Sep 2017 22:02

Text übernehmen

Antworten
Ich verwende LCD Version 11.0...

armine
Administrator
 

Eintragen seit: 15 Mai 2009
Herkunft:  
Berichte: 2361
Status:  Offline
 Geschrieben: 28 Sep 2017 07:28

Text übernehmen

Antworten
Hallo Andreas,

"Wenn ich richtig geshen habe, ist der Button OST / WEST in armines Beispiel nicht berücksichtigt."
Falsch. Die "Rentenversicherung" wird abhängig vom" Bruttoeinkommen" und der Auswahl "West" bzw. "Ost" bis zu max. 6350 bzw . 5700 Euro berechnet.

"Leider beherrsche ich kein JavaScript - vermutlich hilft mir daher armines Lösung nicht ...".
Kein JavaScript? Das ist nun aber die Programmiersprache der Wahl. Da bin ich raus.

vg armine

ichfragmichgrad
Member


Eintragen seit: 6 Dez 2012
Herkunft: Deutschland
Berichte: 16
Status:  Offline
 Geschrieben: 28 Sep 2017 15:06

Text übernehmen

Antworten
Danke Armine,

es funktioniert. Da hatte ich wohl falsch getestet. Wenn ich es richtig verstanden habe, greift das Feld RV auf die Optionsfeldgruppe OW zu, das KV-Feld wiederum berücksichtigt den Max-Wert. Denn wenn ich mehr als 6350 / 5700 EUR eingebe, verändert sich weiterhin der RV-Wert.

Nun habe ich endlich die Werte / Eingabestelle der Variablen gefunden. Das kannte ich noch nicht. Da hast du auch bei RV die max-Werte eingegeben. Scheint aber nicht zu greifen.

Vielen Dank für die Mühe und Zeit. Ich versuche mal allein weiter zu kommen.

Eigentlich ist es ja wirklich keine komplizierte Logik, aber mit der Art dem Programm das klar zu machen hapert es bei mir.

Danke!
Andreas

ichfragmichgrad
Member


Eintragen seit: 6 Dez 2012
Herkunft: Deutschland
Berichte: 16
Status:  Offline
 Geschrieben: 28 Sep 2017 15:19

Text übernehmen

Antworten
Hallo noch einmal,

ich glaube jetzt hab ich verstanden, wie es angelegt ist.
Danke!

ichfragmichgrad
Member


Eintragen seit: 6 Dez 2012
Herkunft: Deutschland
Berichte: 16
Status:  Offline
 Geschrieben: 28 Sep 2017 18:59

Text übernehmen

Antworten
Jetzt habe ich es wirklich fast - danke!

Die Werte der Variablen stimmten noch nicht.

Letzte Änderung am 29 Sep 2017 12:02 von ichfragmichgrad

ichfragmichgrad
Member


Eintragen seit: 6 Dez 2012
Herkunft: Deutschland
Berichte: 16
Status:  Offline
 Geschrieben: 29 Sep 2017 16:01

Text übernehmen

Antworten
Hallo (in diesem Threat hoffentlich ein letztes Mal).

Mein Dokument funktioniert nun. Allerdings nur, wenn die Optionsfeldgruppe "OW" auf der selben Seite ist, wie das Ausgabefeld für die Berechnung.

Nun ist es vom Layout her so, dass die Abfrage (Optionsfeld) auf Seite 2 steht, das Ausgabefeld aber auf Seite 4.

Kann jemand helfen, was ich noch im Script ergänzen muss?
Hier das Script des Ausgabefeldes (von armine - danke noch mal!!!)

topmostSubform.Page4._9_Lohnfortzahlung::calculate - (JavaScript, client)

var arr = EK.value.split(",").map(Number) ;
this.rawValue = Math.round(Math.min(brutto1.rawValue, arr[OW.rawValue]) * arr[2]) / 100

Gruß,
Andreas

ichfragmichgrad
Member


Eintragen seit: 6 Dez 2012
Herkunft: Deutschland
Berichte: 16
Status:  Offline
 Geschrieben: 29 Sep 2017 19:35

Text übernehmen

Antworten
Hallo Gemeinde,

leider habe ich noch im Verlauf des Auftrags eine weitere Abfrage entdeckt, die mich überfordert:

Ausgabefeld = Wert Feld A abzgl. Wert Feld B (sofern Optionsbutton X angewählt), andernfalls Wert Feld C abzgl. Wert Feld D.

:shock:

Da heute noch Änderungen an der PDF kamen, konnte ich glücklicherweise noch etwas Zeit rausschinden.

Für Hilfe wäre ich sehr dankbar.

Liebe Grüße,
Andreas

Letzte Änderung am 29 Sep 2017 19:36 von ichfragmichgrad

ichfragmichgrad
Member


Eintragen seit: 6 Dez 2012
Herkunft: Deutschland
Berichte: 16
Status:  Offline
 Geschrieben: 3 Okt 2017 22:37

Text übernehmen

Antworten
Hallo,

dieses Berechnung konnte ich nun auch mit Hilfe richtig eingeben.

Übrig bleibt ein "Problem" mit armines Script:
Der array "OW" funktioniert nur in dynamischen Dokumenten. Ich muss aber ein statisches Dokument berechnen lassen, da die Vorlage statisch eingeladen / geöffnet werden muss (Typo, Bilder, ...). An den "Hintergrund", also das Dokument muss ich auch im LCD nicht mehr ran.

Gibt es diese Berechnung / Zeile auch für ein statisches Dokument?
Ich schätze es liegt an den hinterlegten Elementen WEST und OST für die Werte 0 und 1. Diese gibt es bei den statischen Optionsfeldern nicht, soweit ich weiß.

Ich habe den arr für "OW" einfach mal fix auf 0 gesetzt (.. arr [0] * arr [2] / 100) - dann funktioniert es auch im statischen Dokument. mit "... arr [OW.rawValue] *arr [2] / 100" funktioneirt die Berechnung leider nicht.

Liebe Grüße!


 Uhrzeit 03:52
Seite:    1  2  Nächste Seite Letzte Seite  





Powered by WowBB 1.7 - Copyright © 2003-2006 Aycan Gulez
Seite erstellt in 0.1056 Sekunden (25% DB + 75% PHP). 18 verarbeitete Abfragen.