AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Berechnetes Feld in TQuery
Thema durchsuchen
Ansicht
Themen-Optionen

Berechnetes Feld in TQuery

Ein Thema von HolgerCW · begonnen am 25. Jul 2007 · letzter Beitrag vom 26. Jul 2007
Antwort Antwort
Seite 1 von 2  1 2      
HolgerCW

Registriert seit: 28. Nov 2006
Ort: Marl
1.207 Beiträge
 
Delphi XE7 Enterprise
 
#1

Berechnetes Feld in TQuery

  Alt 25. Jul 2007, 16:52
Datenbank: ORACLE • Version: 9 • Zugriff über: DATABASE
Hallo zusammen,

wie kann ich z.B. sowas:

Delphi-Quellcode:
if Query['DRUCKGERAETVORHANDEN'] = 1 then
begin
 Query['KEIN_DB'] := 'P';
end
else
begin
 Query['KEIN_DB'] := '';
end;
in eine Select - Abfrage umbauen und in einer TQuery implementieren ?

Gruss

Holger

P.S.: KEIN_DB -> zur Zeit ein berechnetes Feld
DRUCKGERAETVORHANDEN -> Spalte in der Datenbank
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Berechnetes Feld in TQuery

  Alt 25. Jul 2007, 17:08
Ungetestet:
SQL-Code:
SELECT Feld1,(CASE DRUCKGERATVORHANDEN WHEN 1 THEN 'PELSE 'END) AS KEIN_DB
FROM Tabelle
WHERE...
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
HolgerCW

Registriert seit: 28. Nov 2006
Ort: Marl
1.207 Beiträge
 
Delphi XE7 Enterprise
 
#3

Re: Berechnetes Feld in TQuery

  Alt 26. Jul 2007, 09:48
Funktioniert,

super ...

Danke ...

Gruss

Holger
  Mit Zitat antworten Zitat
HolgerCW

Registriert seit: 28. Nov 2006
Ort: Marl
1.207 Beiträge
 
Delphi XE7 Enterprise
 
#4

Re: Berechnetes Feld in TQuery

  Alt 26. Jul 2007, 10:17
Habe da jetzt mal was gebaut, das klappt aber nicht ganz. Er sagt mir fehlender Ausdruck:

(CASE SYSWVKISU.ZEITSCHEIBEN.LEIST WHEN > (SELECT SYSDBP.DBP_KATEGORIE.LEISTUNGSWERT FROM SYSDBP.DBP_KATEGORIE WHERE ID = 1) THEN 'PELSE 'END) AS LEI_PRUE Gruss

Holger
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Berechnetes Feld in TQuery

  Alt 26. Jul 2007, 10:21
Bei Oracle weiß ich es nicht genau, aber das SQL-Case arbeitet AFAIK ähnlich dem Delphi-Case, d.h. Du musst zum Vergleichen Konstanten verwenden. Deshalb geht das so nicht. Ich überlege aber gerade, wie man das umformulieren könnte, ist aber (zumindest für mich) nicht ganz einfach.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Berechnetes Feld in TQuery

  Alt 26. Jul 2007, 10:33
Versuch mal, ob das so geht:
SQL-Code:
(CASE SIGN(SYSWVKISU.ZEITSCHEIBEN.LEIST - (SELECT SYSDBP.DBP_KATEGORIE.LEISTUNGSWERT
FROM SYSDBP.DBP_KATEGORIE WHERE ID = 1)) WHEN 1 THEN 'PELSE 'END) AS LEI_PRUE
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
HolgerCW

Registriert seit: 28. Nov 2006
Ort: Marl
1.207 Beiträge
 
Delphi XE7 Enterprise
 
#7

Re: Berechnetes Feld in TQuery

  Alt 26. Jul 2007, 11:13
Hi,

das klappt. Super danke. Aber wie berechneest Du da die 1. Du ziehst die eine Leitung von der anderen ab. Und was macht das SIGN ?

Gruss

Holger
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Berechnetes Feld in TQuery

  Alt 26. Jul 2007, 11:25
SIGN ermittelt das Vorzeichen. Wenn das Ergebnis der Subtraktion positiv ist, kommt eben 1 heraus, d.h. erster Wert ist größer als 2 Wert.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
HolgerCW

Registriert seit: 28. Nov 2006
Ort: Marl
1.207 Beiträge
 
Delphi XE7 Enterprise
 
#9

Re: Berechnetes Feld in TQuery

  Alt 26. Jul 2007, 13:54
Clever,

kannst Du mir noch verraten, wie Du zwei Spalten multiplizieren würdest um dann das Ergebnis anzuzeigen ?

Gruss

Holger
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: Berechnetes Feld in TQuery

  Alt 26. Jul 2007, 13:56
Einfach ...<Spalte1> * <Spalte2> as Erg...
Markus Kinzler
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz