🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀

❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Im Bericht ein Feld anzeigen

Base ermöglicht es Ihnen, Ihre Daten in einer Datenbank direkt mit LibreOffice zu bearbeiten.
Mr. Cutty
Beiträge: 18
Registriert: So 10. Mär 2013, 16:51

Re: Im Bericht ein Feld anzeigen

Beitrag von Mr. Cutty » Do 14. Mär 2013, 14:17

Moin nochmal,

habe die Datenbank "Quittung" als Zip-Datei angehängt. Die Endung *.odb wurde einfachhalber in *.zip umbenannt.

Ich habe nun folgende Möglichkeiten ausprobiert:

Den Code von Robert -> ( SELECT "Preis" * "a"."Anzahl" *"MWSt"/100 FROM "Ware" WHERE "ID" = "a"."Ware_ID" ) AS "MWSt"

Deinen -> SELECT ("Ware"."Preis" * "a"."Anzahl" * 0.19) AS "MWSt" FROM "Ware", "a" WHERE "Ware"."ID" = "a"."Ware_ID"

Extras -> SQL = Fehlermeldung, Einfügen -> Abfrage (SQL-Ansicht...), Einfügen -> (SQL) Ansicht einfach, dann den Button SQL-Kommandodirekt ausführen

In allen Fällen gab's Mecker von LO. :-) Möglicherweise sitzt der Fehler ja vor der Tastatur, das möchte ich ausdrücklich nicht ausschließen. :-)

Gruß

Franky
Dateianhänge
Quittung.zip
(52.95 KiB) 226-mal heruntergeladen

RobertG
* LO-Experte *
Beiträge: 2884
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Im Bericht ein Feld anzeigen

Beitrag von RobertG » Do 14. Mär 2013, 15:40

Hallo Franky,

in dem Anhang ist nur die datei von mir.

Ich habe

Code: Alles auswählen

( SELECT "Preis" * "a"."Anzahl" *"MWSt"/100 FROM "Ware" WHERE "ID" = "a"."Ware_ID" ) AS "MWSt"
vor

Code: Alles auswählen

 FROM "Verkauf" AS "a"
nach einem Komma (vielleicht fehlt Dir das ja?)
in den Code der Abfrage eingefügt. Funktioniert einwandfrei - außer, dass die Beispieldatenbank noch keine Einträge im Feld MWSt hatte. Dort schnell '19' überall eingetragen, weil keine Lebensmittel dabei - und schon funktioniert auch die Berechnung.

Gruß

Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

gogo
* LO-Experte *
Beiträge: 1081
Registriert: Sa 5. Feb 2011, 19:07

Re: Im Bericht ein Feld anzeigen

Beitrag von gogo » Do 14. Mär 2013, 16:03

ok...

diese Abfrage:

Code: Alles auswählen

SELECT

 "a".*,

 ( SELECT
     "Preis" * "a"."Anzahl"
   FROM
     "Ware"
   WHERE
     "ID" = "a"."Ware_ID"                          ) AS "Anzahl*Preis", 

 ( SELECT
     SUM( "Ware"."Preis" * "Verkauf"."Anzahl" )
   FROM
     "Ware",
     "Verkauf"
   WHERE
     "Verkauf"."Quittung_ID" = "a"."Quittung_ID"
      AND
     "Ware"."ID"             = "Verkauf"."Ware_ID" ) AS "Summe", 

 ( SELECT
     "Datum"
   FROM
     "Quittung"
   WHERE
     "ID" = "a"."Quittung_ID"                      )  AS "Datum", 

 ( SELECT
     "Ware"
   FROM
     "Ware"
   WHERE
     "ID" = "a"."Ware_ID"                           ) AS "Ware", 

 ( SELECT
     "Preis"
   FROM
     "Ware"
   WHERE
     "ID" = "a"."Ware_ID"                           ) AS "Preis" 
FROM
 "Verkauf" AS "a"
kannst Du durch Folgende ersetzen:

Code: Alles auswählen

SELECT
 "Verkauf"."ID",
 "Verkauf"."Anzahl",
 "Verkauf"."Ware_ID",
 "Verkauf"."Quittung_ID",
 "Ware"."Preis" * "Verkauf"."Anzahl" AS "Summe (inkl. Steuer)",
 "Quittung"."Datum",
 "Ware"."Ware",
 "Ware"."Preis",
 "Ware"."Preis" * "Verkauf"."Anzahl" * ( 0.19 ) AS "Summe (MWSt)"
FROM
 "Verkauf",
 "Ware",
 "Quittung"
WHERE
 "Verkauf"."Ware_ID" = "Ware"."ID"
  AND
 "Verkauf"."Quittung_ID" = "Quittung"."ID"
Die Felder im Select-Teil kannst Du natürlich noch nach Belieben anpassen...
Dein Problem ist nicht, dass die Abfrage falsch ist, sondern dass der Abfrage-Editor von Base diese Abfrage nicht übersetzen kann. Der Abfrage-Editor von Base ist übrigens nicht immer dazu in der Lage eine SQL-Abfrage so zu speichern wie man sie eingegeben hat!
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu

Mr. Cutty
Beiträge: 18
Registriert: So 10. Mär 2013, 16:51

Re: Im Bericht ein Feld anzeigen

Beitrag von Mr. Cutty » Do 14. Mär 2013, 16:48

Vielen herzlichen Dank an Euch beide für Eure Geduld mit mir.

@Robert:
Die Datenbank "Quittung" ist Deine. Ich dachte mir, dass das für mich zum Üben völlig ausreichend ist. Nachdem ich Deine Zeile eingefügte und in der Tabelle Ware in der Spalte MWST überall 19 eingetragen hatte, zeigte mir LO die u.a. Tabelle. Übrigens lag es, wie Du richtig vermutet hast, an dem übersehenen Komma. :oops:

Nachdem ich die gesamte SQL-Abfrage gegen den Vorschlag von gogo ausgetauscht hatte, lief es endlich so, wie es sollte. Uff, war das eine schwere Geburt.

@gogo:
Deinen Code nenne ich mal kurz und bündig. Deine Schreibweise erinnert mich an alte Zeiten Mitte der 1980er. Damals habe ich in der Abendschule viel in Assembler, Basic, C++ u.a. programmiert. Da ist eine übersichtliche Darstellung das A und O. Doch wenn man das alles über viele Jahre nicht braucht, schmeißt das Gedächtnis vieles wieder über Bord.

Jetzt würde es mich allerdings brennend interessieren, was in Roberts Abfrage anders ist als in meiner. Denn es funktioniert ja bei ihm. Robert, könntest Du die Datenbank einstellen, damit ich vergleichen kann, wo nun der Kinken bei mir sitzt? Liegt es vielleicht an einer unterschiedlichen LO Version? Rein von der Logik her muss es doch irgendwo einen Unterschied geben.
Dein Problem ist nicht, dass die Abfrage falsch ist, sondern dass der Abfrage-Editor von Base diese Abfrage nicht übersetzen kann. Der Abfrage-Editor von Base ist übrigens nicht immer dazu in der Lage eine SQL-Abfrage so zu speichern wie man sie eingegeben hat!
Davon hatte ich keinen blassen Schimmer. Wenn man das nicht weiß, steht man gewaltig in den Pilzen. Leckomio, ich habe mir echt 'nen Wolf gesucht. Codes gewälzt und verglichen, gesucht und gemacht. Trotzdem werde ich das Gefühl nicht los, dass LO 4.0.0.3 in Base zumindest noch mit Bugs behaftet ist. Doch dank der Hilfe von Euch bin ich jetzt wieder ein kleines Stückchen weiter gekommen.

Obwohl ich parallel MS Office auf dem PC habe, möchte ich lieber den steinigen Weg über LO gehen. Ich denke, dass man auf diese Weise wesentlich mehr lernt, wenn gleich es auch mühsamer ist.

Also nochmals vielen Dank für Euer Engagement.

Gruß

Franky
Dateianhänge
Abfrage_Tabelle.jpg
Abfrage_Tabelle.jpg (10.13 KiB) 4707 mal betrachtet

gogo
* LO-Experte *
Beiträge: 1081
Registriert: Sa 5. Feb 2011, 19:07

Re: Im Bericht ein Feld anzeigen

Beitrag von gogo » Do 14. Mär 2013, 18:19

Mr. Cutty hat geschrieben:...Jetzt würde es mich allerdings brennend interessieren, was in Roberts Abfrage anders ist als in meiner. Denn es funktioniert ja bei ihm. ...
da verweise ich jetzt mal: Elefantenjagd

;) ich hoffe Du verstehst
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu

Mr. Cutty
Beiträge: 18
Registriert: So 10. Mär 2013, 16:51

Re: Im Bericht ein Feld anzeigen

Beitrag von Mr. Cutty » Do 14. Mär 2013, 18:32

Wo Du Recht hast, hast Du Recht. :lol:

RobertG
* LO-Experte *
Beiträge: 2884
Registriert: Sa 19. Mai 2012, 17:37
Kontaktdaten:

Re: Im Bericht ein Feld anzeigen

Beitrag von RobertG » Do 14. Mär 2013, 22:34

Hallo Franky,

die Abfragen von gogo und mir sind nicht gleich. Zum einen fehlt die Summierung des gesamten Inhaltes in Abhängigkeit von der Quittung_ID, zum anderen bereitet die Abfrage beim Editieren Probleme. Das liegt nicht allein daran, dass einige Primärschlüssel in gogos Abfrage nicht vorhanden sind, sondern auch an einem Bug von Base: Die Berechnungen werden in der Abfrage nicht aktualisiert, wenn ich nicht nach jeder erfolgreichen Eingabe die ganze Abfrage über den entsprechenden Button aktualisiere.

Bei Deiner Abbildung sieht das allerdings so aus, als ob bei Dir Base alle Berechnungen in korrelierenden Unterabfragen ignoriert. Ich habe das hier jetzt mit AOO 3.4.1, LO 3.3.4 und LO 3.6.5 getestet - überall das gleiche Bild - mit den Daten, die aus der DB stammen, die Du ins Netz gesetzt haben. Alle Felder sind mit Inhalt gefüllt und die Eingabe neuer Werte ist möglich.

Jetzt lese ich gerade, dass Du LO 4.0 verwendest. Die kann bisher überhaupt keine Werte von Unterabfragen anzeigen. deshalb rate ich von der Nutzung ab. Den Bug hatte ich gemeldet. Er wird zu 4.0.2, also dem 2 Bugfix-Release der 4.0, behoben sein. Siehe https://bugs.freedesktop.org/show_bug.cgi?id=61166
Nachtrag: Ich habe soeben LO 4.0.2.1 rc heruntergeladen und installiert. Dort erscheinen die Werte wieder. Bug ist also gefixt.

Gruß

Robert
https://de.libreoffice.org/get-help/documentation/
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=base_handbuch
https://www.familiegrosskopf.de/robert/index.php?&Inhalt=xml_formulare

Mr. Cutty
Beiträge: 18
Registriert: So 10. Mär 2013, 16:51

Re: Im Bericht ein Feld anzeigen

Beitrag von Mr. Cutty » Fr 15. Mär 2013, 20:30

Moin zusammen,

den Bug-Fix auf 4.0.1.2, habe ich heute ebenfalls installiert. Danke trotzdem für den Hinweis, dass LO 4.0 einen Bug hat, etwas in der Art hatte ich rein aus dem Bauch heraus ja schon vermutet, da ich ja alle Codes 1:1 übernommen hatte. Nur habe ich heute keine Muße mehr das auszutesten. Bis gerade eben habe ich meine Rezepte neu durchorganisiert. Man wundert sich wieviel im Laufe der Zeit so zusammenkommt.

Schönen Abend noch.

Gruß

Franky

Mr. Cutty
Beiträge: 18
Registriert: So 10. Mär 2013, 16:51

Re: Im Bericht ein Feld anzeigen

Beitrag von Mr. Cutty » Sa 16. Mär 2013, 10:53

Moin zusammen,

hier ist mal der Abfragecode von Robert, den ich in der Abfrage ausprobiere. Wenn ich diese Abfrage nun starte, bleiben beide Spalten MWSt und Preis in der von der Abfrage erzeugten Tabelle leer, obwohl in der Tabelle Ware beides mit Werten versehen ist.

Erkennt jemand von Euch Wissenden woran das liegen könnte?

Code: Alles auswählen

SELECT "a".*, ( SELECT "Preis" * "a"."Anzahl" FROM "Ware" WHERE "ID" = "a"."Ware_ID" ) AS "Anzahl*Preis", ( SELECT SUM( "Ware"."Preis" * "Verkauf"."Anzahl" ) FROM "Ware", "Verkauf" WHERE "Verkauf"."Quittung_ID" = "a"."Quittung_ID" AND "Ware"."ID" = "Verkauf"."Ware_ID" ) AS "Summe", ( SELECT "Datum" FROM "Quittung" WHERE "ID" = "a"."Quittung_ID" ) AS "Datum", ( SELECT "Ware" FROM "Ware" WHERE "ID" = "a"."Ware_ID" ) AS "Ware", ( SELECT "Preis" FROM "Ware" WHERE "ID" = "a"."Ware_ID" ) AS "Preis", ( SELECT "Preis" * "a"."Anzahl" * "MWSt" / 100 FROM "Ware" WHERE "ID" = "a"."Ware_ID" ) AS "MWSt" FROM "Verkauf" AS "a"

gogo
* LO-Experte *
Beiträge: 1081
Registriert: Sa 5. Feb 2011, 19:07

Re: Im Bericht ein Feld anzeigen

Beitrag von gogo » Sa 16. Mär 2013, 11:10

nein

LibreOffice 3.5.7.2
Build-ID: 350m1(Build:2)
Dateianhänge
Untitled.gif
Untitled.gif (38.56 KiB) 4672 mal betrachtet
Zuletzt geändert von gogo am Sa 16. Mär 2013, 11:41, insgesamt 1-mal geändert.
g
2008 LucidL./MaverickM./WinXP LibreOffice 3.3.2 > 02/13 LinuxMint13/Xubuntu > 09/13 Debian Wheezy+LO3.5.4.2 > 01/15 Debian Jessie KDE+LO4.3.3.2/Mint17 openbox auf USB+LO4.2.8.2 > 03/16 ArchLin & LO5.1+ff > 02/18 Kubuntu


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten