Base Funktion Summe nach Datum ?

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Base Funktion Summe nach Datum ?

Re: Base Funktion Summe nach Datum ?

von komma4 » Fr, 23.09.2011 13:37

astarothis hat geschrieben:Oder gibt es dort eine Lösung ?
Bspw. Standalone-Formulare


astarothis hat geschrieben:Wie ist es mit MS Access ?
Nichts für Linux-Benutzer ;)

Re: Base Funktion Summe nach Datum ?

von astarothis » Fr, 23.09.2011 13:13

Ja HSQL.
Die Dokumentation werde ich mir mal zu Gemüte führen. Führt ja doch kein Weg drum rum wenn man kompliziertere Sachen machen will.

So, jetzt funktioniert auch alles, so wie ich es haben wollte.

Habe mich zwar erst gewundert warum das Datum dann als forlaufende Nummer angezeigt wurde.
Bin dann aber schnell auf SQL befehl direkt ...... und nun läuft alles.

Danke



Noch eine Frage am Rande.

Ich benutze Base eigentlich nur weil ich als Betriebssystem Linux habe.
Die Datei odb braucht ja Open Office als Laufzeitumgebung.
Finde ich ein wenig fürchterlich wenn man zB 10 Formulare hat und 20 Tabellen im täglichen Gebrauch.
Das immer aus Base auszuwählen ist nicht sonderlich elegant, zumal wenn andere Benutzer darauf zugreifen ja auch Tabellen usw ändern oder löschen können, was ja noch viel schlimmer ist.
Oder gibt es dort eine Lösung ?

Wie ist es mit MS Access ?
Kann man dort zB eine .exe Datei compilieren ?
Ist Office dort auch als Laufzeitumgebung nötig ?



Dann noch ein schönes WE... Matze

Re: Base Funktion Summe nach Datum ?

von komma4 » Fr, 23.09.2011 12:45

Das ist ein Weg, und noch garnicht mal dumm :)

Code: Alles auswählen

SELECT "Tabelle".* FROM "Tabelle1" AS "Tabelle", "TabelleVonBis" WHERE "Tabelle"."Datum" BETWEEN "DatumVon" AND "DatumBis"

Die genaue Syntax von SQL-Abfragen ist von der verwendeten Datenbank abhängig - und dann jeweils der Dokumentation zu entnehmen.


Welche Datenbank nutzt Du (embedded HSQLDB)? Angabe steht in der Statuszeile der ODB)
Dokumentation zur eingebauten HSQLDB

Re: Base Funktion Summe nach Datum ?

von astarothis » Fr, 23.09.2011 12:25

Ich weiß das es mehrere Wege gibt.

Ich habe bloss keine Ahnung von Makros und Sql Befehlen usw..... hab ich bisher nie gebraucht.
Ging fast alles wunderbar über den Assi.

Deine Lösung b geht , würde mir eigentlich schon reichen.
Ich lerne eigentlich immer viel durch rumprobieren und mehreren Lösungswegen zu suchen.

Bei A) habe ich versucht das in der SQL Ansicht meiner Abfrage einzubauen, kommt aber Syntax Error.


Bin ich überhaupt auf dem richtigen Weg ?
Habe eine 2. Tabelle angelegt mit Datumvon und Datumbis.
Wird mit einem Formular gefüllt.

Dann in der Abfrage die 2.Tabelle mit aufgenommen.
Aber wie nun weiter.... eigentlich sind nun alle Werte in der Abfrage drin. Weiß aber nicht so recht wie ich sie verknüpfen kann.

Oder ich bin total falsch :)

Re: Base Funktion Summe nach Datum ?

von komma4 » Fr, 23.09.2011 11:24

Du musst Dich nun irgendwann mal entscheiden, wie Du es gerne hättest:

die Lösungen für Abfrage, Filter und Formular-Eingabefelder sind unterschiedlich


a) die sogenannte Parameterabfrage:

Code: Alles auswählen

SELECT...  WHERE "Datum" > :von AND "Datum" < :bis
b) ungetestet! Bei einem Filter müsste auch die Syntax < #30.09.2011# AND > #01.09.2011# gehen

Re: Base Funktion Summe nach Datum ?

von astarothis » Fr, 23.09.2011 10:49

Sorry, die interne Suchfunktion im Forum geht nicht und über Google das Forum zu durchsuchen hat keinen Erfolg gebracht...

Ich suche für mein Beispiel oben eine Filterfunktion Datum von bis

Meine Abfrage zeigt leider alle Einträge nach Datum.
Als Kriterium kann ich zwar zb < #01.09.2011# eingeben aber ich bräuchte ein von bis Kriterium.

Es ist auch nicht sehr komfortabel immer die Abfrage zu bearbeiten um bestimmte Datum Räume zu erhalten.

Welche Lösungen gibt es ?

Kann ich nicht irgendwo ein kleines Formular setzen wo man das Datum von - bis eintragen kann ?
Aber dann weiß ich nicht weiter wie ich das als Kriterium in meiner Abfrage anlegen kann.

In der Suche hatte ich hier mal eine Lösung mit Makros aber das waren etliche Zeilen Code.

Re: Base Funktion Summe nach Datum ?

von astarothis » Mi, 21.09.2011 11:50

Danke nochmals für die schnelle und guten Antworten hier... ;)

Re: Base Funktion Summe nach Datum ?

von komma4 » Mi, 21.09.2011 11:34

astarothis hat geschrieben:Verstehe die Logik nicht dahinter. Anscheinend muss man eine neue Tabelle anfertigen.
Die eingebaute HSQLDB kann (IIRC) keine Änderungen akzeptieren - das geht immer nur über eine neu definierte, angehängte Spalte.
Ist nach Design der DB so...

Re: Base Funktion Summe nach Datum ?

von astarothis » Mi, 21.09.2011 11:18

Wenn ich das als Abfrage in SQL Ansicht eingebe (entsprechend richtige Namens usw) dann kommt Syntax Fehler.
Irgendwas mache ich da falsch.

Aber als ich mir den Code genauer angesehen habe ist es doch logisch irgendwo.

Ich habe dann direkt dies in meiner alten Abfrage angepasst.

Also bei
Datum Funktion Gruppieren
Frü Sammeln
Spät Sammeln
Nacht Sammeln
die Zeiten als Summe


Funktioniert super. Manchmal sieht man den Wald vor Bäumen nicht. Danke schön.


Ich habe da noch ein generelles Problem.


Ich habe die einzelnen Zeiten als Dezimal Feldtyp in der Tabelle.
Da ich ja nun damit rechnen will wollte ich die Zeiten in der Tabelle in das Zeit Feldtyp ändern.
Wenn ich das geändert habe und dann auf speichern klicke kommt die Meldung:
zB:

Die Spalte ZeitA1 konnte nicht geändert werden soll sie statt dessen gelöscht und das neue Format angehängt werden ?



Warum macht er das ?
Ich dachte erst das die Änderung irgendwelche Sachen beeinflusst, oder ich andere Tabellen oder Formulare offen haben die darauf zugreifen. Dem ist aber nicht so.
Das passiert mir öfters wenn ich mal was nachträglich ändern will.

Verstehe die Logik nicht dahinter. Anscheinend muss man eine neue Tabelle anfertigen.

Re: Base Funktion Summe nach Datum ?

von komma4 » Di, 20.09.2011 17:43

Willkommen im Forum
astarothis hat geschrieben:Jetzt möchte ich aber die GesamtZeit von dem Gesamten Tag. Also Frü, Spät, und Nacht zusammen nach Datum sortiert.

Code: Alles auswählen

SELECT "Datum", "Früh", "Spät", "Nacht", SUM( "ZeitA1" + "ZeitA2" + "ZeitB1" + "ZeitB2" + "ZeitC1" + "ZeitC2" ) GROUP BY "Datum" FROM "Tabelle1"

Hilft das?

Base Funktion Summe nach Datum ?

von astarothis » Di, 20.09.2011 13:39

Hallo

Ich bin seit 2 Tagen am grübeln über folgendes Problem mit meiner Abfrage in Base...

Datum Früh Spät Nacht ZeitA1 ZeitA2 ZeitB1 ZeitB2 ZeitC1 ZeitC2
19.09.11 Ja Nein Nein 10 10 0 10 5 0

nun fasse ich die Zeiten A B und C zusammen : "ZeitA1" + "ZeitA2" ist dann ein neues Feld GesamtZeitA

also so:

Datum Früh Spät Nacht GesamtZeitA GesamtZeitB GesamtZeitC
19.09.11 Ja Nein Nein 20 10 5

Soweit so gut. Die Abfrage funtioniert gut.
Jetzt möchte ich aber die GesamtZeit von dem Gesamten Tag. Also Frü, Spät, und Nacht zusammen nach Datum sortiert.

Alles was ich probiere funktioniert nicht, bin echt am verzweifeln.
Ich kenne mich leider mit SQL Befehlen die man direkt ausführen kann nicht aus, aber ich denke das dort die Lösung ist.
Wer kann mir helfen ?

Nach oben