Delphi-PRAXiS
Seite 2 von 7     12 34     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Abfrage aus 2 Tabellen in Access funktioniert nicht (https://www.delphipraxis.net/62041-abfrage-aus-2-tabellen-access-funktioniert-nicht.html)

mkinzler 30. Jan 2006 11:57

Re: Abfrage aus 2 Tabellen in Access funktioniert nicht
 
Je nach Einstellungen in Delphi, werden auch abgefangene Exceptions angezeigt. Versuch mal das Programm aßerhalb der IDE zu starten.

StoRmtec 30. Jan 2006 12:01

Re: Abfrage aus 2 Tabellen in Access funktioniert nicht
 
Kommt auch der Fehler.
Bei der Wartung kommt nichts und beim Verbrauch steht von dem Datum was drinnen.

Mfg
StoRmtec

mkinzler 30. Jan 2006 12:27

Re: Abfrage aus 2 Tabellen in Access funktioniert nicht
 
Wenn 5n der Wart4ngstabelle kein Datum erfasst ist und du filterst nur bestimmte Datumswerte kann er nichts finden. Also where entfernen oder auf Datensätze ohne Datum erweitern ( marabu)

StoRmtec 30. Jan 2006 12:49

Re: Abfrage aus 2 Tabellen in Access funktioniert nicht
 
Liste der Anhänge anzeigen (Anzahl: 1)
Wenn ich nur Marabu Code nehme ohne deinen dann bekomme ich auch einen Fehler.
Siehe anhang.

Wie kann man das machen das er mir die einträge vom 01.09.2005 - 30.09.2005 ausliest
bei der wartung ist kein Datensatz mit dem Datum und beim verbrauch sind 2 datensätze vorhanden.

Danke

StoRmtec

mkinzler 30. Jan 2006 13:00

Re: Abfrage aus 2 Tabellen in Access funktioniert nicht
 
Dieses Problem scheint jetzt in einem anderen Programmteil aufzutreten!
Wenn du den 2. Query durch
SQL-Code:
select sum(kosten) as Gesamtkosten from wartung
ersetzt zeigt er dier alle Wartungsdatensätze an.

StoRmtec 30. Jan 2006 13:15

Re: Abfrage aus 2 Tabellen in Access funktioniert nicht
 
Also wenn ich das drinnen habe dann fragt er mir alle eintrage von allen 2 Tabellen ab.

Delphi-Quellcode:
procedure TForm2.gesamtbuttonClick(Sender: TObject);
var gesamtall1, kostenverbrauchall1, kostenwartungall1 : extended;
begin
wartungall.Close;
wartungall.sql.clear;
wartungall.SQL.text := 'select sum(tonerkostengesamt) as Gesamtsumme from verbrauch';
wartungall.open;
gesverbrauchall.text := wartungall.FieldByName('Gesamtsumme').Value;
verbrauchall.Close;
verbrauchall.sql.clear;
verbrauchall.SQL.text := 'select sum(kosten) as Gesamtkosten from wartung';
verbrauchall.open;
geswartungall.Text := verbrauchall.FieldByName('Gesamtkosten').Value;
kostenwartungall1 := strtofloat(geswartungall.Text);
kostenverbrauchall1 := strtofloat(gesverbrauchall.Text);
gesamtall1 := kostenwartungall1 + kostenverbrauchall1;
gesall.Text := floattostr(gesamtall1);
end;
Und dann stimmt das Ergebniss auch. Nur wenn ich es mit Datum machen will dann gehts nicht.

mkinzler 30. Jan 2006 13:28

Re: Abfrage aus 2 Tabellen in Access funktioniert nicht
 
Vielleicht würde es mir helfen, wenn du Struktur der datenbank und vielleich ausschnittsweise die Daten zu posten.

Beim ersten Query kannst du die where-Clause lassen

StoRmtec 30. Jan 2006 13:41

Re: Abfrage aus 2 Tabellen in Access funktioniert nicht
 
Okay also Tabelle

Verbrauch:

ID | Datumv | geholt | anzahl | kosteneinkauf | druckernameid | tonerkostengesamt
---------------------------------------------------------------------------------------------
7 |12.09.2005| kum | 1 | 21 | 1 | 21
8 |24.09.2005| kum | 2 | 21 | 1 | 42


Tabelle Wartung:

ID | Datum | Repbez | Firma | Kosten | druckernameid
--------------------------------------------------------------
2 |01.08.2005| blablabla| bla | 43 | 1

und jetzt wenn ich dann ausführe bekomme ich den fehler wenn ich beim datum von bis eingebe weil
bei der druckerwartung nichts mit 09.2005 drinnen steht.

StoRmtec 31. Jan 2006 06:56

Re: Abfrage aus 2 Tabellen in Access funktioniert nicht
 
Hat keiner eine Hilfe für mich

Mfg
StoRmtec

mkinzler 31. Jan 2006 07:11

Re: Abfrage aus 2 Tabellen in Access funktioniert nicht
 
Vielleicht solltest du auch diese Zeilen noch absichern
Delphi-Quellcode:
kostenwartungall1 := strtofloat(geswartungall.Text);
kostenverbrauchall1 := strtofloat(gesverbrauchall.Text);
so:
Delphi-Quellcode:
try
    kostenwartungall1 := strtofloat(geswartungall.Text);
except
    kostenwartungall1  := 0;
end;
und analog für 2. Term


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:17 Uhr.
Seite 2 von 7     12 34     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz