Selection von Preisgruppen mit Währungsaufschlag
am 23.09.2006 18:09:05 von Michael KostmannHallo,
in der folgenden Abfrage werden Preisaufschläge je Preisgruppe auf den
VK-Preis addiert. Das hat auch die ganze Zeit wunderbar funktioniert.
Jetzt kommt aber noch ein Währungsaufschlag für eine nicht Euro
Währung hinzu. Dieser ist in "$shop_waehr_u" enthalten.
Es funktioniert auch alles, nur das die Preisgruppen in "von_preis"
und "bis_preis" noch in Euro Werten selectiert werden. Es müsste aber
mit dem Währungsaufschlag selectiert werden. Also den
Währungsaufschlag vor der Selection nach von_preis und bis_preis
berechnen.
Ich dachte eigentlich, das in dieser Zeile
***
if (proz_aufschlag>0,($vk2*$shop_waehr_u)+($vk2*(proz_aufschlag /100)),
0),$vk2) AS vkpreis
***
in $vk2 der VK mit Währungsaufschlag enthalten wäre und dann damit die
Selection durchgeführt wird. Dem ist aber nicht so.
Es wird in der darauffolgenden Zeile:
***
where ((".$vk2." > von_preis) and (".$vk2." <= bis_preis)
and (".$shop_kdnr." = ".$shop_dbname.".rs_preis_calc.shop_id)
and (".$kd_preis_gruppe." =
".$shop_dbname.".rs_preis_calc.preisgruppe))"; $w=1;
***
ohne den Währungsaufschlag abgefragt. Warum ist das so? Was habe ich
da übersehen? Irgendwie sehe ich vor lauter Bäumen den Wald nicht
mehr.
Zum besseren Verständnis habe ich hier noch den wesentlichen,
kompletten und unveränderten Teil der bisher einwandfrei
funktionierenden Abfrage ohne den Währungsaufschlag:
***
$query.=$shop_dbname.".rs_preis_calc.von_preis, ".
$shop_dbname.".rs_preis_calc.bis_preis, ".
$shop_dbname.".rs_preis_calc.euro_aufschlag, ".
$shop_dbname.".rs_preis_calc.proz_aufschlag,
GREATEST(if (euro_aufschlag>0, ($vk2) + euro_aufschlag, 0),
if (proz_aufschlag>0,($vk2)+($vk2*(proz_aufschlag/100)), 0),$vk2) AS
vkpreis
from ".$dbname.".hsp_reifen, ".$shop_dbname.".rs_preis_calc
where ((".$vk2." > von_preis) and (".$vk2." <= bis_preis)
and (".$shop_kdnr." = ".$shop_dbname.".rs_preis_calc.shop_id)
and (".$kd_preis_gruppe." =
".$shop_dbname.".rs_preis_calc.preisgruppe))"; $w=1;
***
Bin für jeden Tipp dankbar.
Gruß
Michael