Deutsch
Forum

Variable in SQL-Befehl funktioniert nicht

 

Christof
Neuß
Hallo,

ich stolpere wahrscheinlich mal wieder über meine eigenen Füße

Wollte mir die Arbeit erleichtern und haben folgendes gemacht (Ausschnitt):
KompilierenMarkierenSeparieren
Var Aktivvolumen$=  "(T_Volumina.VOL_Aktivvolumen+T_Volumina.VOL_Aktivvolumen_WL+T_Volumina.VOL_Aktivvolumen_BSH+T_Volumina.VOL_Aktivvolumen_DGHYP+T_Volumina.VOL_Aktivvolumen_MHB+T_Volumina.VOL_Aktivvolumen_RuV+T_Volumina.VOL_Volumen_Teambank+T_Volumina.VOL_Luxcredit)"
Var Anlagevolumen$= "(T_Volumina.VOL_Passivvolumen+T_Volumina.VOL_Passivvolumen_BSH+T_Volumina.VOL_Passivvolumen_RuV+T_Volumina.VOL_Volumen_Union+T_Volumina.VOL_Volumen_Union_Lux+T_Volumina.VOL_Swiss_Rubinum+T_Volumina.VOL_Starplan)"
SQL_Befehl$="SELECT Count(T_Kunden.KDU_KDNR) \
FROM T_Kunden LEFT JOIN T_Volumina ON T_Kunden.KDU_KDNR = T_Volumina.VOL_KDNR \
WHERE T_Kunden.KDU_Art='P' \
AND T_Kunden.KDU_Gemeinschaftskunde<>'J' \
AND T_Kunden.KDU_Mitglied='J' \
AND (:Aktivvolumen$>=20000000000  OR :Anlagevolumen$>=500000)"
SqlExec SQL_Befehl$,1

Das funktioniert aber leider nicht. Mache ich es so (ist ja klar...), dann geht's natürlich:
KompilierenMarkierenSeparieren
Var Aktivvolumen$=  "(T_Volumina.VOL_Aktivvolumen+T_Volumina.VOL_Aktivvolumen_WL+T_Volumina.VOL_Aktivvolumen_BSH+T_Volumina.VOL_Aktivvolumen_DGHYP+T_Volumina.VOL_Aktivvolumen_MHB+T_Volumina.VOL_Aktivvolumen_RuV+T_Volumina.VOL_Volumen_Teambank+T_Volumina.VOL_Luxcredit)"
Var Anlagevolumen$= "(T_Volumina.VOL_Passivvolumen+T_Volumina.VOL_Passivvolumen_BSH+T_Volumina.VOL_Passivvolumen_RuV+T_Volumina.VOL_Volumen_Union+T_Volumina.VOL_Volumen_Union_Lux+T_Volumina.VOL_Swiss_Rubinum+T_Volumina.VOL_Starplan)"
SQL_Befehl$="SELECT Count(T_Kunden.KDU_KDNR) \
FROM T_Kunden LEFT JOIN T_Volumina ON T_Kunden.KDU_KDNR = T_Volumina.VOL_KDNR \
WHERE T_Kunden.KDU_Art='P' \
AND T_Kunden.KDU_Gemeinschaftskunde<>'J' \
AND T_Kunden.KDU_Mitglied='J' \
AND ("+Aktivvolumen$+">=20000000000  OR "+Anlagevolumen$+">=500000)"
SqlExec SQL_Befehl$,1

Weiß einer Rat? Die Langversion ist zwar machbar, aber die Version mit den : wäre übersichtlicher, finde ich.

DANKE
 
Win10 16 GB RAM
18.09.2012  
 



Schau mal:
XProfan-Hilfedatei
Bei SQLExec können ab XProfan 9 direkt Variablen, wie in embedded SQL bei C++ bzw. Java, eingesetzt werden. Einfach einen Doppelpunkt vor den Variablennamen setzen:
KompilierenMarkierenSeparieren
db("SQLExec", "SELECT * FROM tabelle WHERE name = :Name$ AND gehalt > :Gehalt%", 1)

 
18.09.2012  
 




Christof
Neuß
Ähem, sorry, aber genau das habe ich ja im ersten Fall gemacht. Allerdings bestimme ich mit der Variablen nicht den Wert, sondern das Feld bzw. eine Summe über mehrere Felder was geprüft werden soll. Vielleicht geht das nicht.

Ist eigentlich auch klar. Wenn XProfan aus "KDU_A1+KDU_A2+KDU_A3" im SQL-Befehl sowas macht

Select 'KDU_A1+KDU_A2+KDU_A3' From XXX

anstatt

Select KDU_A1+KDU_A2+KDU_A3 From XXX

dann kann das ja auch nicht funktionieren.

Hätte ich drauf kommen können....

Nichtsdestotrotz hat Deine kurze Antwort mich wieder auf die Spur gebracht. Danke
 
Win10 16 GB RAM
18.09.2012  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

3.231 Betrachtungen

Unbenanntvor 0 min.
H.Brill20.04.2023
rquindt27.06.2021
Ernst23.04.2016
Tommy25.12.2014
Mehr...

Themeninformationen

Dieses Thema hat 2 Teilnehmer:

Christof Neuß (2x)
iF (1x)


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie