Velocity Reviews > shopping cart

# shopping cart

John Smith
Guest
Posts: n/a

 07-10-2003
Hi,

I'm trying to work out the postage rate for products in a shopping cart.
Predictably there is no formula for working out the postage rate (ie. 0.20 *
weight). The problem i'm having is with the statement for working this out

There are different 'bands' for the weight (i.e. between 150g and 200g the
price is 0.50). What's the best way to write a statement for this ? I have
tried different ways of writing an If statement but they all end up in
chaos.

John

Aaron Bertrand - MVP
Guest
Posts: n/a

 07-10-2003
Use a database table. Assuming SQL Server:

CREATE TABLE postageRates
(
weightlowerbound INT,
weightupperbound INT,
rate DECIMAL(19,2)
)

INSERT postageRates VALUES(0, 149, 0.25)
INSERT postageRates VALUES(150, 200, 0.50)
INSERT postageRates VALUES(201, 500, 0.85)
-- ...

DECLARE @weight INT
SET @weight = 172
SELECT rate FROM postageRates
WHERE @weight
BETWEEN weightlowerbound AND weightupperbound

DROP TABLE postageRates

You could also do this within an array in ASP...

"John Smith" <(E-Mail Removed)> wrote in message
news:beken4\$pi4\$(E-Mail Removed)...
> Hi,
>
> I'm trying to work out the postage rate for products in a shopping cart.
> Predictably there is no formula for working out the postage rate (ie. 0.20

*
> weight). The problem i'm having is with the statement for working this out
>
> There are different 'bands' for the weight (i.e. between 150g and 200g the
> price is 0.50). What's the best way to write a statement for this ? I have
> tried different ways of writing an If statement but they all end up in
> chaos.
>
> John
>
>

John Smith
Guest
Posts: n/a

 07-10-2003
works great, thanks !

"Aaron Bertrand - MVP" <(E-Mail Removed)> wrote in message
news:%(E-Mail Removed)...
> Use a database table. Assuming SQL Server:
>
>
>
> CREATE TABLE postageRates
> (
> weightlowerbound INT,
> weightupperbound INT,
> rate DECIMAL(19,2)
> )
>
> INSERT postageRates VALUES(0, 149, 0.25)
> INSERT postageRates VALUES(150, 200, 0.50)
> INSERT postageRates VALUES(201, 500, 0.85)
> -- ...
>
> DECLARE @weight INT
> SET @weight = 172
> SELECT rate FROM postageRates
> WHERE @weight
> BETWEEN weightlowerbound AND weightupperbound
>
> DROP TABLE postageRates
>
>
>
> You could also do this within an array in ASP...
>
>
>
> "John Smith" <(E-Mail Removed)> wrote in message
> news:beken4\$pi4\$(E-Mail Removed)...
> > Hi,
> >
> > I'm trying to work out the postage rate for products in a shopping cart.
> > Predictably there is no formula for working out the postage rate (ie.

0.20
> *
> > weight). The problem i'm having is with the statement for working this

out
> >
> > There are different 'bands' for the weight (i.e. between 150g and 200g

the
> > price is 0.50). What's the best way to write a statement for this ? I

have
> > tried different ways of writing an If statement but they all end up in
> > chaos.
> >
> > John
> >
> >

>
>