Commerce Server General - Summary Page - Confirmation page

This is Interesting: Free IT Magazines  
Home > Archive > Commerce Server General > February 2004 > Summary Page - Confirmation page





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]

Author Summary Page - Confirmation page
Mark

2004-02-12, 7:38 am

It looks like there is no solution but to re-run both the
basket and total pipeline a second time - I reviewed the
Retail site solution -Summary.asp runs basket/total then
calls crdtcard.asp which runs checkout() which re-runs
both basket and total pipelines.

I just dont understand why it is necessary to re-run these
pipelines.

Mark

>-----Original Message-----
>I agree that both basket and total must be called prior

to
>calling Checkout. Question is if after I call basket and
>total, I save the basket as an order; then Call
>mscsOrderGrpMgr.DeleteOrderGroupFromDisk(m_UserID) to
>completely delete from disk. On the Confirmation page -

I
>load the order using the following prior to calling the
>Checkout.pcf:
>
>Set mscsOrderGrp = GetOrderGroup(m_UserID)
>Call mscsOrderGrp.LoadOrder(sOrderID)
>
>Then I call the Checkout.pcf - where it fails on the
>RequiredPayment component.
>
>component[0x5] about to be called ProgID:
>Commerce.RequiredPayment.1
>RootObject: ReadValue _payment_auth_code VT_NULL
>RootObject: ReadValue _Purchase_ErrorsPV=[0xc4eb338
>_Purchase_Errors: AddItem 1 VT_EMPTY
> __empty__ VT_BSTR There was a problem
>authorizing your credit. Please verify your payment
>information or use a different card.
>PIPELINE:-- component [0x5] returned hr: 0x0,
>IErrorLevel=2 in 0 milliseconds
>
>
>So, I am wondering if it is really neccessary to re-run
>basket and total pipelines on the Confirmation page?
>
>Thanks
>
>Mark
the[color=blue]
>runs
and[color=blue]
>checkout.pcf
>.
>

Erik Mavrinac [MSFT]

2004-02-12, 8:40 am

If your tax component is not designed to successfully re-run in the Basket or Total pipelines, then making a separate pipeline for it may make more sense
here. Basket and Total, as noted, are primarily for filling in underscore keys, for instance QueryCatalogInfo adds column entries out of the catalog, parts of
the Total pipeline recalculate for totals for each order form from source information, etc.

However, another approach you might try is to not run the total and basket pipelines on your post-checkout confirmation page - instead, save any
underscore information yuou might need for later reference as part of the completed order from checkout, by copying underscore keys to non-underscore
keys. For instance, if you know that later you want to show catalog information for each line item in your confirmation, copy the _product_xxx keys you need
into something like my_product_xxx prior to saving the checked-out order. This makes the completed order stable, without recalculations.

Approaches to where to place the code for this are several - you could do this on site code, using a Scriptor component entry (not the best solution despite
ease of implementation - Scriptor does not scale well for multiple executing pipelines at the same time for different orders), or in a custom pipeline
component.

Erik


--------------------
From: "Mark" <anonymous@discussions.microsoft.com>
Sender: "Mark" <anonymous@discussions.microsoft.com>
Subject: Summary Page - Confirmation page
Date: Thu, 12 Feb 2004 12:39:39 -0800

It looks like there is no solution but to re-run both the
basket and total pipeline a second time - I reviewed the
Retail site solution -Summary.asp runs basket/total then
calls crdtcard.asp which runs checkout() which re-runs
both basket and total pipelines.

I just dont understand why it is necessary to re-run these
pipelines.

Mark

>-----Original Message-----
>I agree that both basket and total must be called prior

to
>calling Checkout. Question is if after I call basket and
>total, I save the basket as an order; then Call
>mscsOrderGrpMgr.DeleteOrderGroupFromDisk(m_UserID) to
>completely delete from disk. On the Confirmation page -

I
>load the order using the following prior to calling the
>Checkout.pcf:
>
>Set mscsOrderGrp = GetOrderGroup(m_UserID)
>Call mscsOrderGrp.LoadOrder(sOrderID)
>
>Then I call the Checkout.pcf - where it fails on the
>RequiredPayment component.
>
>component[0x5] about to be called ProgID:
>Commerce.RequiredPayment.1
>RootObject: ReadValue _payment_auth_code VT_NULL
>RootObject: ReadValue _Purchase_ErrorsPV=[0xc4eb338
>_Purchase_Errors: AddItem 1 VT_EMPTY
> __empty__ VT_BSTR There was a problem
>authorizing your credit. Please verify your payment
>information or use a different card.
>PIPELINE:-- component [0x5] returned hr: 0x0,
>IErrorLevel=2 in 0 milliseconds
>
>
>So, I am wondering if it is really neccessary to re-run
>basket and total pipelines on the Confirmation page?
>
>Thanks
>
>Mark
the[color=blue]
>runs
and[color=blue]
>checkout.pcf
>.
>




--

This posting is provided "AS IS" with no warranties, and confers no rights. Use of included script samples are subject to the terms specified at
http://www.microsoft.com/info/cpyright.htm

Note: For the benefit of the community-at-large, all responses to this message are best directed to the newsgroup/thread from which they originated.
Sponsored Links






Free braindumps | Software forum | Database administration forum

Copyright 2003 - 2008 webservertalk.com