Java Berechnungen durchführen anhand von Bedingungen
Timo Fleischmann
- datenbank
- javascript
Hallo zusammen,
ich bin Java Anfänger und würde gerne in einem Formular eine Berechnung gekoppelt an Bedingungen durchführen lassen.
Also wenn eine Variabel den Wert x hat soll die Berechnung a/b durchgeführt werden Wenn die Variabel den Wert y hat soll b/a ausgeführt werden.
Kann mir da jemand helfen! :-)
was hast du denn schon? Wo ist das Problem?
was hast du denn schon? Wo ist das Problem?
if (dataSetRow["TATNR"] = 0985) {dataSetRow["ZEIT_H"];}
if (dataSetRow["TATNR"] =0310) {dataSetRow["ZEIT_H"];}
if (dataSetRow["TATNR"] = 0330) {dataSetRow["PE"] / dataSetRow["ZEIT_H"];}
ich habe es mal so veruscht, es tut aber nicht ;-(
Hallo,
if (dataSetRow["TATNR"] = 0985) ...
Dreh es um, dann sollte dir deine IDE hilfreichere Hinweise geben:
if ( 0985 = dataSetRow[...])...
Gruß
Kalk
Moin,
if (dataSetRow["TATNR"] = 0985) {dataSetRow["ZEIT_H"];} if (dataSetRow["TATNR"] = 0310) {dataSetRow["ZEIT_H"];} if (dataSetRow["TATNR"] = 0330) {dataSetRow["PE"] / dataSetRow["ZEIT_H"];}
ich habe es mal so veruscht, es tut aber nicht ;-(
"es tut aber nicht" ist keine brauchbare Fehlerbeschreibung.
Allerdings hat der obige Codeausschnitt zwei deutlich erkennbare Fehler.
So long,
Martin
@@Der Martin
0985 produziert einen Fehler, weil das Oktalsystem die Ziffern 8 und 9 nicht kennt.
Nein – weder in JavaScript noch in PHP.
Allerdings verhält es sich unterschiedlich.
JavaScript:
var a = 0985;
console.log(a); // 985
PHP:
$a = 0985;
echo $a; // 0
WIe sieht’s in Java aus?
LLAP 🖖
sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|
Hi,
0985 produziert einen Fehler, weil das Oktalsystem die Ziffern 8 und 9 nicht kennt.
Nein – weder in JavaScript noch in PHP.
dass PHP hier sehr merkwürdig reagiert, weiß ich seit kurzem. Aber Javascript auch?
var a = 0985; console.log(a); // 985
Drecksg'lump. 0985 ist ein Fehler, es widerspricht den Regeln, sollte also auch als Fehler beanstandet und gemeldet werden. So eine heimliche interne Fehlerkorrektur kann vorteilhaft sein, kann aber ebenso auch zu stundenlanger Suche führen.
PHP:
$a = 0985; echo $a; // 0
Ab PHP 7 gibt's angeblich einen Parse Error. So sollte es IMO sein.
So long,
Martin
Hallo Der Martin,
$a = 0985; echo $a; // 0
Ab PHP 7 gibt's angeblich einen Parse Error. So sollte es IMO sein.
Bis demnächst
Matthias
Tach,
0985 ist ein Fehler, es widerspricht den Regeln, sollte also auch als Fehler beanstandet und gemeldet werden.
in ECMAScript (Strict Mode) allerdings ein anderer Fehler, als du erwarten würdest, führende Nullen in Integers sind komplett verboten.
mfg
Woodfighter
Hallo,
0985 ist ein Fehler, es widerspricht den Regeln, sollte also auch als Fehler beanstandet und gemeldet werden.
in ECMAScript (Strict Mode) allerdings ein anderer Fehler, als du erwarten würdest, führende Nullen in Integers sind komplett verboten.
das hätte ich tatsächlich nicht erwartet.
Und wie werden Oktalzahlen dann notiert? Gar nicht, weil's kaum einer verwendet?
Ähm, und Hex-Notation mit dem Präfix 0x? Das wäre ja auch eine führende Null. Und jetzt?
Ciao,
Martin
Tach,
in ECMAScript (Strict Mode) allerdings ein anderer Fehler, als du erwarten würdest, führende Nullen in Integers sind komplett verboten.
das hätte ich tatsächlich nicht erwartet.
Und wie werden Oktalzahlen dann notiert? Gar nicht, weil's kaum einer verwendet?
angelehnt an Hex mit dem Präfix 0o oder um es schlechter sichtbar zu machen 0O.
Ähm, und Hex-Notation mit dem Präfix 0x? Das wäre ja auch eine führende Null. Und jetzt?
Habe mich zu kurz gefasst, das Präfix existiert weiterhin.
mfg
Woodfighter
Hi,
Und wie werden Oktalzahlen dann notiert? Gar nicht, weil's kaum einer verwendet?
angelehnt an Hex mit dem Präfix 0o oder um es schlechter sichtbar zu machen 0O.
Ähm, und Hex-Notation mit dem Präfix 0x? Das wäre ja auch eine führende Null. Und jetzt?
Habe mich zu kurz gefasst, das Präfix existiert weiterhin.
ah, verstehe. Danke für die Ergänzung.
Das heißt, führende Nullen sind nicht erlaubt, mit Ausnahme von 0o, 0x und vermutlich auch 0b (und die entsprechenden Varianten mit Großbuchstaben).
Ciao,
Martin
Hallo Gunnar Bittersmann,
WIe sieht’s in Java aus?
http://www.tutorialspoint.com/compile_java_online.php
public class HelloWorld{
public static void main(String []args){
a = 0895;
System.out.println(a);
}
}
HelloWorld.java:4: error: integer number too large: 0895
a = 0895;
^
1 error
Bis demnächst
Matthias
@@Timo Fleischmann
ich bin Java Anfänger
Den Unterschied zwischen Java und JavaScript kennst du aber schon? Und den Unterschied zwischen Deppenleerzeichen und Bindestrichen?
Also wenn eine Variabel den Wert x hat soll die Berechnung a/b durchgeführt werden Wenn die Variabel den Wert y hat soll b/a ausgeführt werden.
Kann mir da jemand helfen! :-)
„Wenn ‟heißt auf Englisch „if‟. Das sollte dir helfen.
LLAP 🖖
sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|
@@Timo Fleischmann
ich bin Java Anfänger
Den Unterschied zwischen Java und JavaScript kennst du aber schon? Und den Unterschied zwischen Deppenleerzeichen und Bindestrichen?
Also wenn eine Variabel den Wert x hat soll die Berechnung a/b durchgeführt werden Wenn die Variabel den Wert y hat soll b/a ausgeführt werden.
Kann mir da jemand helfen! :-)
„Wenn ‟heißt auf Englisch „if‟. Das sollte dir helfen.
LLAP 🖖
“You might believe there are benefits for the developer, but first of all, you should put those behind the interest of the user.” —Stefan Tilkov
Selfcode:sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|
Eher bei Adam und Eva anfangen :-)
Hallo Timo Fleischmann,
Kann mir da jemand helfen! :-)
„Wenn ‟heißt auf Englisch „if‟. Das sollte dir helfen.
Bitte zitiere sinnvoll, nur das worauf du dich gerade beziehen möchtest. Danke.
Eher bei Adam und Eva anfangen :-)
Dann musst du deine Ziele etwas genauer beschreiben und auch die Voraussetzungen, z.B. wo kommen die Werte her, mit denen du rechnen möchtest, …
Bis demnächst
Matthias
Hallo Timo Fleischmann,
Kann mir da jemand helfen! :-)
„Wenn ‟heißt auf Englisch „if‟. Das sollte dir helfen.
Bitte zitiere sinnvoll, nur das worauf du dich gerade beziehen möchtest. Danke.
Eher bei Adam und Eva anfangen :-)
Dann musst du deine Ziele etwas genauer beschreiben und auch die Voraussetzungen, z.B. wo kommen die Werte her, mit denen du rechnen möchtest, …
Bis demnächst
MatthiasDieses Forum nutzt Markdown. Im Wiki erhalten Sie Hilfe bei der Formatierung Ihrer Beiträge.
Hallo Matthias,
ich habe ein Formular für mein ERP System. Hier möchte ich einem Feld eine Berechnung hinterlegen würde so ausshen, wenn mein Feld "TATNR" aus meiner Datenbank mit dem Wert 0985 gefüllt wird, dann zeige nur das Feld Zeit_H an, wenn die 0330 drin steht dann führe unten stehende berechnung durch:
if (dataSetRow["TATNR"] = 0985) {dataSetRow["ZEIT_H"];} if (dataSetRow["TATNR"] =0310) {dataSetRow["ZEIT_H"];} if (dataSetRow["TATNR"] = 0330) {dataSetRow["PE"] / dataSetRow["ZEIT_H"];}
Danke für die Hilfe! Gruß Timo
Hallo Timo Fleischmann,
Was hast du an
Bitte zitiere sinnvoll, nur das worauf du dich gerade beziehen möchtest. Danke.
nicht verstanden?
ich habe ein Formular für mein ERP System. Hier möchte ich einem Feld eine Berechnung hinterlegen würde so ausshen, wenn mein Feld "TATNR" aus meiner Datenbank mit dem Wert 0985 gefüllt wird, dann zeige nur das Feld Zeit_H an, wenn die 0330 drin steht dann führe unten stehende berechnung durch:
if (dataSetRow["TATNR"] = 0985) {dataSetRow["ZEIT_H"];} if (dataSetRow["TATNR"] =0310) {dataSetRow["ZEIT_H"];} if (dataSetRow["TATNR"] = 0330) {dataSetRow["PE"] / dataSetRow["ZEIT_H"];}
Es fehlen möglicherweise Anführungsstriche, eventuell müssen auch die führenden Nullen entfernt werden. Wo soll das Ergebnis der Berechnung erscheinen? Eine Anweisung zum Anzeigen kann ich jedenfalls nicht entdecken? So völlig ohne Grundkenntnisse wird es schwierig. Wie sieht das Formular aus?
Für ein ERP gibt es doch bestimmt qualitativ hochwertigen Support?
Bis demnächst
Matthias
[Vollzitat entfernt]
So habe es jetzt hinbekommen, der ERP Support ist sehr hochwertig, vor allem teuer :-)
Danke nochmal!!! Gruß Timo
@@Timo Fleischmann
if (dataSetRow["TATNR"] = 0985)
In viele Programmiersprachen (in allen mit C-ähnlicher Syntax) ist =
der Zuweisungoperator. Der Vergleichsoperator ist ==
; in JavaScript typsicher: ===
.
Wenn du also nicht dataSetRow["TATNR"]
den Wert 0985
zuweisen willst, musst du
if (dataSetRow["TATNR"] == 0985)
bzw.
if (dataSetRow["TATNR"] === 0985)
schreiben.
LLAP 🖖
sh:) fo:} ch:? rl:) br:> n4:& va:| de:> zu:} fl:{ ss:| ls:# js:|
[Vollzitat entfernt]
Super Danke jetzt funktioniert es!!