|
Home > Archive > Commerce Server General > December 2006 > Dynamic Pricing
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
|
|
| Joe Meilinger 2006-11-18, 1:25 am |
| Hello,
We are using CS2007 for our ecommerce site and I've run into an issue
while trying to implement a custom pricing scheme. We have a bulk product
that must be ordered in 10 piece increments (w/ a minimum of 20 pieces) and
the pricing works in a two tier fashion. If you order 20 pieces, the price
is $35.00. For every 10 extra pieces, the cost is $10 more. I've tried to
overwrite the LineItem list price before placing the item in the basket so
that the quantity*list price equals the correct price, but it doesn't appear
that the list price can be change dynamically (always comes back w/ the list
price from the catalog). Is there another way to implement this pricing
scheme?
Thank you,
Joe Meilinger
| |
| WenJun Zhang[msft] 2006-11-20, 7:24 am |
| Hi Joe,
I'm currently researching this issue and plan on updating you as soon as I
get more information on it. Please wait for my follow up.
Thanks.
Sincerely,
WenJun Zhang
Microsoft Online Community Support
========================================
==========
Get notification to my posts through email? Please refer to:
http://msdn.microsoft.com/subscript...ault.aspx#notif
ications.
Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at:
http://msdn.microsoft.com/subscript...t/default.aspx.
========================================
==========
This posting is provided "AS IS" with no warranties, and confers no rights.
| |
| WenJun Zhang[msft] 2006-11-22, 1:35 am |
| Hi Joe,
I discussed this issue with our Commerce team. The opinion of them is you
really aren't meant to mess with values that are populated from the
catalog. The only way to do tiered pricing is to simulate it with
discounts, setting the priority and exclusion rules appropriately within
the confines of the discount system.
This is not something that CS supports natively very well in all honesty,
so you may need to write your own pipeline component that can leverage
extended catalog attributes, etc. to do this.
In terms of advice this is pretty much all we have in the newsgroup, if you
need more specific assistance on the implementation, please consider to
open a support case to our Customer Support Service or contact our Advisory
Service. This will be the most effective way to help you get the solution.
Microsoft Customer Service and Support services(CSS)
http://support.microsoft.com/defaul...US;PHONENUMBERS
CSS Advisory Services
http://support.microsoft.com/defaul...AdvisoryService
Thanks.
Sincerely,
WenJun Zhang
Microsoft Online Community Support
========================================
==========
Get notification to my posts through email? Please refer to:
http://msdn.microsoft.com/subscript...ault.aspx#notif
ications.
Note: The MSDN Managed Newsgroup support offering is for non-urgent issues
where an initial response from the community or a Microsoft Support
Engineer within 1 business day is acceptable. Please note that each follow
up response may take approximately 2 business days as the support
professional working with you may need further investigation to reach the
most efficient resolution. The offering is not appropriate for situations
that require urgent, real-time or phone-based interactions or complex
project analysis and dump analysis issues. Issues of this nature are best
handled working with a dedicated Microsoft Support Engineer by contacting
Microsoft Customer Support Services (CSS) at:
http://msdn.microsoft.com/subscript...t/default.aspx.
========================================
==========
This posting is provided "AS IS" with no warranties, and confers no rights.
| |
| Martin 2006-11-30, 7:23 am |
| Hi,
I think this may be what we needed to do a while back.
All our prices have up to 6 volume pricing levels, which includes a
price, and the break quantity.
eg:
1+ =A30.720
100+ =A30.650
200+ =A30.620
500+ =A30.580
1000+ =A30.560
2500+ =A30.530
We got this to work in the shopping basket by writing a custom
scriptor, after giving up on the discount system as a method to do it.
We loop through each product, work out which break quantity the
customer is above, then read the new price and set it like this:
For Each Item In orderform.value("items")
'Work out break quantity, and new price
If TempPriceNew <> item.value("_product_cy_list_price") Then
item.value("_product_cy_list_price") =3D TempPriceNew
End If
Next
Stick the scriptor in the top of your pipeline somewhere after the
queryprodinfo component has read in all the product info. (You need to
put a field for ewach price and break into the cat format)
This does throw the 'prices have changed' message up in the basket, but
that's actually useful for the customer.
If this is what you are trying to do, I can give you more information.
Regards,
Martin
"WenJun Zhang[msft]" wrote:
> Hi Joe,
>
> I'm currently researching this issue and plan on updating you as soon as I
> get more information on it. Please wait for my follow up.
>
> Thanks.
>
> Sincerely,
>=20
> WenJun Zhang
>=20
> Microsoft Online Community Support
>
| |
| Joe Meilinger 2006-12-04, 7:18 pm |
| Martin,
We had tried to do the same thing as you describe, but ended up running
into rounding problems. We had a product that would sell for $34.99 for a
quantity of 20 and it'd cost $9.99 for every additional 10. So for example,
if someone ordered 40 items, the cost would be $54.97. We had tried to
divide this cost by the quantity ordered ($1.37425/item) and then CS would
need the value rounded to 2 decimal places (otherwise it'd throw a
conversion exception), and the per item cost would become $1.37 ($1.37 * 40
= $54.80). Eventaully, we decided to adjust the quantity to 1, have an
additional "display quantity" field w/ the real quantity and adjust the list
price to the correctly-calculated price. Quantity adjustments after this
point are a little clunky now, but at least the pricing model now works
correctly.
Thanks,
Joe
"Martin" <bigmarts@hotmail.com> wrote in message
news:1164884856.852213.225810@j44g2000cwa.googlegroups.com...
Hi,
I think this may be what we needed to do a while back.
All our prices have up to 6 volume pricing levels, which includes a
price, and the break quantity.
eg:
1+ £0.720
100+ £0.650
200+ £0.620
500+ £0.580
1000+ £0.560
2500+ £0.530
We got this to work in the shopping basket by writing a custom
scriptor, after giving up on the discount system as a method to do it.
We loop through each product, work out which break quantity the
customer is above, then read the new price and set it like this:
For Each Item In orderform.value("items")
'Work out break quantity, and new price
If TempPriceNew <> item.value("_product_cy_list_price") Then
item.value("_product_cy_list_price") = TempPriceNew
End If
Next
Stick the scriptor in the top of your pipeline somewhere after the
queryprodinfo component has read in all the product info. (You need to
put a field for ewach price and break into the cat format)
This does throw the 'prices have changed' message up in the basket, but
that's actually useful for the customer.
If this is what you are trying to do, I can give you more information.
Regards,
Martin
"WenJun Zhang[msft]" wrote:
> Hi Joe,
>
> I'm currently researching this issue and plan on updating you as soon as I
> get more information on it. Please wait for my follow up.
>
> Thanks.
>
> Sincerely,
>
> WenJun Zhang
>
> Microsoft Online Community Support
>
| |
| Martin 2006-12-19, 1:19 pm |
| Ok.
You can change the decimal places that CS works to in the pipline
somewhere.
Try putting this in the scriptor at the top.
OrderForm.value("_currency_decimal_places") =3D 4
We have prices to 4 dp, so needed to use this.
Don't know if that helps? Sounds like you managed to get it working
anyway.
Regards,
Martin
Joe Meilinger wrote:
> Martin,
>
> We had tried to do the same thing as you describe, but ended up running
> into rounding problems. We had a product that would sell for $34.99 for a
> quantity of 20 and it'd cost $9.99 for every additional 10. So for examp=
le,
> if someone ordered 40 items, the cost would be $54.97. We had tried to
> divide this cost by the quantity ordered ($1.37425/item) and then CS would
> need the value rounded to 2 decimal places (otherwise it'd throw a
> conversion exception), and the per item cost would become $1.37 ($1.37 * =
40
> =3D $54.80). Eventaully, we decided to adjust the quantity to 1, have an
> additional "display quantity" field w/ the real quantity and adjust the l=
ist[vbcol=seagreen]
> price to the correctly-calculated price. Quantity adjustments after this
> point are a little clunky now, but at least the pricing model now works
> correctly.
>
> Thanks,
>
> Joe
>
>
>
> "Martin" <bigmarts@hotmail.com> wrote in message
> news:1164884856.852213.225810@j44g2000cwa.googlegroups.com...
> Hi,
>
> I think this may be what we needed to do a while back.
>
> All our prices have up to 6 volume pricing levels, which includes a
> price, and the break quantity.
>
> eg:
> 1+ =A30.720
> 100+ =A30.650
> 200+ =A30.620
> 500+ =A30.580
> 1000+ =A30.560
> 2500+ =A30.530
>
> We got this to work in the shopping basket by writing a custom
> scriptor, after giving up on the discount system as a method to do it.
>
> We loop through each product, work out which break quantity the
> customer is above, then read the new price and set it like this:
>
>
> For Each Item In orderform.value("items")
>
> 'Work out break quantity, and new price
>
> If TempPriceNew <> item.value("_product_cy_list_price") Then
> item.value("_product_cy_list_price") =3D TempPriceNew
>
> End If
>
> Next
>
> Stick the scriptor in the top of your pipeline somewhere after the
> queryprodinfo component has read in all the product info. (You need to
> put a field for ewach price and break into the cat format)
>
> This does throw the 'prices have changed' message up in the basket, but
> that's actually useful for the customer.
>
> If this is what you are trying to do, I can give you more information.
>
> Regards,
>
> Martin
>
>
>
> "WenJun Zhang[msft]" wrote:
s I[vbcol=seagreen]
|
|
|
|
|