Hallo zusammen,
ich habe eine Abfrage erstellt , ich möchte mir die Daten pro Kalenderwoche anzeigen lassen.
Die Tabelle wo ich die Daten abzapfe besteht aus 45 Felder.
Das Datum wird in 3 Felder anzegeigt ( 1.Feld=Tag, 2.Feld=Monat, 3.=Feld Jahr )
In der Abfrage habe ich diese 3 Felder wie folgt zusammengeführt DatSeriell([D3SSA];[D2SSA];[D1SSA]), das passt soweit.
Dann habe in der Abfrage noch eine Spalte hinzugefügt für die Kalenderwoche
"DatTeil("ww";DatSeriell([D3SSA];[D2SSA];[D1SSA]))", soweit auch ok.
Jetzt möchte ich in der Abfrage nur die Daten für eine bestimmte KW angezeigt bekommen.
Wenn ich den Parameter[KW] eingebe, werde mir alle Daten angezeigt ( 23.000 Datensätzen ).
Was mache ich nun falsch ??
Bitte um HILFE
Hallo,
zeig mal den kompletten SQL-Sting der Abfrage..
SELECT First([DOPDAUFV1_SPSSTLA Abfrage].SNDNR) AS [SNDNR Feld], First([DOPDAUFV1_SPSSTLA Abfrage].SSSTA) AS [SSSTA Feld], Count([DOPDAUFV1_SPSSTLA Abfrage].SNDNR) AS AnzahlVonDuplikaten, DateSerial([D3SSA],[D2SSA],[D1SSA]) AS Auftragsdatum, DatePart("ww",DateSerial([D3SSA],[D2SSA],[D1SSA])) AS Kalenderwoche
FROM [DOPDAUFV1_SPSSTLA Abfrage]
GROUP BY DateSerial([D3SSA],[D2SSA],[D1SSA]), DatePart("ww",DateSerial([D3SSA],[D2SSA],[D1SSA])), [DOPDAUFV1_SPSSTLA Abfrage].SNDNR, [DOPDAUFV1_SPSSTLA Abfrage].SSSTA, [DOPDAUFV1_SPSSTLA Abfrage].D1SSA, [DOPDAUFV1_SPSSTLA Abfrage].D2SSA, [DOPDAUFV1_SPSSTLA Abfrage].D3SSA
HAVING (((Count([DOPDAUFV1_SPSSTLA Abfrage].SNDNR))>1) AND (([DOPDAUFV1_SPSSTLA Abfrage].SSSTA)="R") AND ((Count([DOPDAUFV1_SPSSTLA Abfrage].SSSTA))>1)) OR (((DatePart("ww",DateSerial([D3SSA],[D2SSA],[D1SSA])))=[KW]))
ORDER BY DateSerial([D3SSA],[D2SSA],[D1SSA]);
Hallo,
vermutlich kommst Du mit der Klammerung in Konflikt.
Es gilt die Operatorrangfolge wie in der Mathematik:
Punkt (AND) vor Strich (OR) -Rechnung.
Zitat von: Spedi05 am Juni 07, 2020, 15:38:38
Dann habe in der Abfrage noch eine Spalte hinzugefügt für die Kalenderwoche
"DatTeil("ww";DatSeriell([D3SSA];[D2SSA];[D1SSA]))", soweit auch ok.
Kleiner Hinweis am Rande: Um den Jahreswechsel herum wird das obige u.U. nicht die richtige KW ermitteln.
Siehe: Kalenderwoche und Jahr ermitteln (https://codekabinett.com/rdumps.php?Lang=1&targetDoc=vba-kalenderwoche-jahr-datum-ermitteln)
Hallo
danke für die Info.
Wie kann ich diesen Konflikt lösen ?
Ich habe alles versucht und komme nicht weiter.
PROBLEM GELÖST DANKE !!
Dann zeige das auch für den nächsten mit ähnlichem Problem.
Forum ist wie Adventure-Game, - geben und nehmen.