Hallo,
wenn man bei Staffelpreisen im Preisfeld ein "ab" schreibt, gibt es bei bestimmten Abfragen Probleme, da hier nur Zahlen erwartet werden.
ich mache daher die Preisausgabe mit ssp
Staffelpreisfelder abfragen, sortieren und den kleinsten Wert ausgeben
Das funktioniert soweit - aber meine Lösung, nicht benutzte Staffelpreisfelder aus dem Hash zu entfernen gefällt mir nicht
<!--spmacro:module(check)
use strict;
sub preis {
my $minpreis;
my $out;
my $index = $_[0];
my $anzahl = $_[1];
my $item = ssp::get_var_article("itemid", $index);
if (length($item)) {
my $price = ssp::get_var_article('preis',$index);
my $stprice1 = ssp::get_var_article('stafp1',$index);
my $stprice2 = ssp::get_var_article('stafp2',$index);
my $stprice3 = ssp::get_var_article('stafp3',$index);
my $stprice4 = ssp::get_var_article('stafp4',$index);
my @staffelp = ($stprice1,$stprice2,$stprice3,$stprice4);
if (!length($stprice4)) {@staffelp = ($stprice1,$stprice2,$stprice3);}
if (!length($stprice3)) {@staffelp = ($stprice1,$stprice2);}
if (!length($stprice2)) {@staffelp = ($stprice1);}
$minpreis = main::fp((sort @staffelp)[0]);
if (length($minpreis)) { $out = "ab $minpreis";}
else { $out = main::fp($price); }
main::mprint ($out);
}
}
-->
Da gibt's doch bestimmt eine bessere Lösung als für jedes Feld extra abzufragen, ob hier etwas eingetragen ist ...
Linkback: https://www.shoppilot.net/pf/index.php?topic=1257.0