Fehler bei Verbind. von 2 Datenfelder zu 1 in Abfrage
Moderator: Moderatoren
Fehler bei Verbind. von 2 Datenfelder zu 1 in Abfrage
Hallo liebe Community,
komme einfach nicht weiter.
Habe bei einer Abfrage durch den Befehl: "Bestand"."ObjektStr" + SPACE( 1 ) + "ObjektHNR" AS "Straße", verknüpft, um dann in einem
Formluar, dies als eine Aussage zu bekommen.
Dies funzzt auch.
Aber nur so lange die Datenfeld auch einen Inhalt haben.
Fehlt bei der Straße ein Eintrag im Datenset, so verschwinden in der Abfrage in dem betreffenden Datensatz, wo der Namen der Straßen fehlt, auch sogleich die Hausnummer.
Dies könnte ich lösen, in dem ich einen Platzhalter in dem Datenfeld einfüge.
Aber gibt es keine elegantere Lösung?
komme einfach nicht weiter.
Habe bei einer Abfrage durch den Befehl: "Bestand"."ObjektStr" + SPACE( 1 ) + "ObjektHNR" AS "Straße", verknüpft, um dann in einem
Formluar, dies als eine Aussage zu bekommen.
Dies funzzt auch.
Aber nur so lange die Datenfeld auch einen Inhalt haben.
Fehlt bei der Straße ein Eintrag im Datenset, so verschwinden in der Abfrage in dem betreffenden Datensatz, wo der Namen der Straßen fehlt, auch sogleich die Hausnummer.
Dies könnte ich lösen, in dem ich einen Platzhalter in dem Datenfeld einfüge.
Aber gibt es keine elegantere Lösung?
Mit freundlichen Grüßen
owenstone
owenstone
Re: Fehler bei Verbind. von 2 Datenfelder zu 1 in Abfrage
Hallo Owenstone,
dass
mit dem Eintrag SPACE(1) funktioniert, war mir neu.
Folgendes dürfte Dir aber weiter helfen, sofern es sich um die interne HSQLDB handelt:
Wobei es sich bei den eingefügten Zeichen immer um Hochkommata handelt.
Mit IFNULL(Ausdruck1, Ausdruck2) wird Ausdruck2 dann gewählt, wenn Ausdruck1 leer ist. Das kann auch bei Rechnungen recht sinnvoll sein. Angenommen, Du willst den Bestand einer Kasse ermitteln. Das machst Du in einer Abfrage mit
Nur merkwürdig - trotz lauter Einnahmen bleibt der Bestand immer leer, solange keine Ausgaben getätigt wurden. Mit einem leeren Feld kann Base nicht rechnen. Deshalb ist die folgende Anweisung schon einmal besser:
Jetzt wird gerechnet, auch wenn keine Ausgaben da sind. Fehlen aber Einnahmen, so kann weiter munter ausgegeben werden, der Bestand bleibt immer noch leer. Voll auf der sicheren Seite ist man mit der folgenden Variante:
Gruß
Robert
dass
Code: Alles auswählen
"Bestand"."ObjektStr" + SPACE( 1 ) + "ObjektHNR" AS "Straße"
Folgendes dürfte Dir aber weiter helfen, sofern es sich um die interne HSQLDB handelt:
Code: Alles auswählen
"Bestand"."ObjektStr" + IFNULL(' ' + "ObjektHNR",'') AS "Straße"
Mit IFNULL(Ausdruck1, Ausdruck2) wird Ausdruck2 dann gewählt, wenn Ausdruck1 leer ist. Das kann auch bei Rechnungen recht sinnvoll sein. Angenommen, Du willst den Bestand einer Kasse ermitteln. Das machst Du in einer Abfrage mit
Code: Alles auswählen
"Einnahmen"-"Ausgaben" AS "Bestand"
Code: Alles auswählen
"Einnahmen"-IFNULL("Ausgaben",0) AS "Bestand"
Code: Alles auswählen
IFNULL("Einnahmen",0)-IFNULL("Ausgaben",0) AS "Bestand"
Robert
Re: Fehler bei Verbind. von 2 Datenfelder zu 1 in Abfrage
Mensch Robert
,
das ist Wahnsinn!
So schnell schon eine Antwort parat
!
Ich habe Deine Lösungen zwar noch nicht probiert, mangels Zeit, aber ich bin mir sicher, dass Du die Lösung meines Problems geliefert hat.
Wenn es wider Erwarten - was ich aber nicht glaube - doch nicht klappen sollte, werde ich mich hier noch einmal melden.
Ansonsten.
Bitte mach weiter so
!

das ist Wahnsinn!
So schnell schon eine Antwort parat

Ich habe Deine Lösungen zwar noch nicht probiert, mangels Zeit, aber ich bin mir sicher, dass Du die Lösung meines Problems geliefert hat.
Wenn es wider Erwarten - was ich aber nicht glaube - doch nicht klappen sollte, werde ich mich hier noch einmal melden.
Ansonsten.


Mit freundlichen Grüßen
owenstone
owenstone
Re: Fehler bei Verbind. von 2 Datenfelder zu 1 in Abfrage
Hi Robert,
hab's heut getestet - und Du ahnst es schon
.
Bekomme die Fehlermeldung: Syntax Error Expression SQL.
Du hast im Vorfeld erwähnt, dass es sich um eine interne HSQLDB handeln muss.
Geht es vielleicht deswegen nicht?
Wie kann ich heraus finden, ob ich eine habe?
hab's heut getestet - und Du ahnst es schon

Bekomme die Fehlermeldung: Syntax Error Expression SQL.
Du hast im Vorfeld erwähnt, dass es sich um eine interne HSQLDB handeln muss.
Geht es vielleicht deswegen nicht?
Wie kann ich heraus finden, ob ich eine habe?
Mit freundlichen Grüßen
owenstone
owenstone
Re: Fehler bei Verbind. von 2 Datenfelder zu 1 in Abfrage
Hallo,
guckst Du unten: Gruß R
guckst Du unten: Gruß R
- miniKasse MMove 1.0.6 Base Videotutorial
- Windows 11: AOO, LO Linux Mint: AOO, LO
Re: Fehler bei Verbind. von 2 Datenfelder zu 1 in Abfrage
Hallo cw7,
hab' ich gekuckt
.
Un' gefunne'!
Manchmal ist das Leben viel einfacher als man denkt.
Hab' ich also eine interne HSQLDB.
Der Befehl funzzt leider nicht.
hab' ich gekuckt

Un' gefunne'!
Manchmal ist das Leben viel einfacher als man denkt.
Hab' ich also eine interne HSQLDB.
Der Befehl funzzt leider nicht.
Mit freundlichen Grüßen
owenstone
owenstone
Re: Fehler bei Verbind. von 2 Datenfelder zu 1 in Abfrage
Hallo,
die Fehlermeldung hört sich nach einem fehlenden Hochkomma o.ä. an,
kopiere doch deinen Code mal hierher.
Gruß R
PS: was heißt cw7?
die Fehlermeldung hört sich nach einem fehlenden Hochkomma o.ä. an,
kopiere doch deinen Code mal hierher.
Gruß R
PS: was heißt cw7?
- miniKasse MMove 1.0.6 Base Videotutorial
- Windows 11: AOO, LO Linux Mint: AOO, LO
Re: Fehler bei Verbind. von 2 Datenfelder zu 1 in Abfrage
Servus
Mögliche Ursache sind auch die Pluszeichen, die zur String-Verkettung benutzt werden.
Entweder alle "+" durch "||" ersetzen, oder aber "SQL-Kommando direkt ausführen" aktivieren.
Mögliche Ursache sind auch die Pluszeichen, die zur String-Verkettung benutzt werden.
Entweder alle "+" durch "||" ersetzen, oder aber "SQL-Kommando direkt ausführen" aktivieren.
Re: Fehler bei Verbind. von 2 Datenfelder zu 1 in Abfrage
Also der Tipp von DPunch war nicht schlecht.
Wenn ich also den Befehl von Robert eintrage und dann auf speichern gehe, bekomme ich die o.g. Fehlmeldung. Drücke ich aber zuvor auf SQL Befehl direkt ausführen und dann speichern. Geht dies vonstatten. Die Abfrage danach zeigt mir auch das Ergebnis.
Dies ist der abgewandelte Befehl von Robert.
"Bestand"."InhabVornam" + IFNULL ( ' ' + "Bestand"."InhabName",' ') AS "Inhaber Name",
aber das Ergebnis ist das gleiche wie ich schon bei der Eröffnung dieses Themas erwähnt habe. Ist in dem Datenfeld Vornamen kein Eintrag vorhanden, führt dieser Befehl auch dazu, dass das Datenfeld Namen dann auch keine Anzeige macht.

Wenn ich also den Befehl von Robert eintrage und dann auf speichern gehe, bekomme ich die o.g. Fehlmeldung. Drücke ich aber zuvor auf SQL Befehl direkt ausführen und dann speichern. Geht dies vonstatten. Die Abfrage danach zeigt mir auch das Ergebnis.
Dies ist der abgewandelte Befehl von Robert.
"Bestand"."InhabVornam" + IFNULL ( ' ' + "Bestand"."InhabName",' ') AS "Inhaber Name",
aber das Ergebnis ist das gleiche wie ich schon bei der Eröffnung dieses Themas erwähnt habe. Ist in dem Datenfeld Vornamen kein Eintrag vorhanden, führt dieser Befehl auch dazu, dass das Datenfeld Namen dann auch keine Anzeige macht.




Mit freundlichen Grüßen
owenstone
owenstone
Re: Fehler bei Verbind. von 2 Datenfelder zu 1 in Abfrage
Hi,
versuch es mal so:
Gruß R
versuch es mal so:
Code: Alles auswählen
IFNULL ("Bestand"."InhabVornam",'Vorname fehlt') || IFNULL ( ' '||"Bestand"."InhabName",' Nachname fehlt') AS "Inhaber Name",
- miniKasse MMove 1.0.6 Base Videotutorial
- Windows 11: AOO, LO Linux Mint: AOO, LO
Re: Fehler bei Verbind. von 2 Datenfelder zu 1 in Abfrage
Hi F3K Total,
das ging ja wirklich flott
.
Und Deine Lösung war jetzt zum Schluß auch die Richtige
An all die Anderen an dieser Stelle auch noch mal vielen herzlichen Dank
.
das ging ja wirklich flott

Und Deine Lösung war jetzt zum Schluß auch die Richtige




Mit freundlichen Grüßen
owenstone
owenstone