daveym
Guest
|
Posted:
Fri Sep 16, 2005 12:51 am Post subject:
Extending the Orderform |
|
|
Hi all,
Could you tell me the easiest way to do the following?
1) Get the line item detail from the marshalled data and store it in the
normal orderform table? Is it a case of naming columns in this table that
match the ordeform headings? We need to get the built in stuff unmarshalled,
i.e. orderitemid, etc I know that I can put my own stuff in here but does the
same method (named columns) apply for unmarshalling built in data?
2) Add bespoke products to the cart at runtime. A user will create a product
on the fly and we need to add this product to the cart with its own custom
price. My problem is that a lot of additional data needs to be added, so we
have a site-name_extended database with a number of tables used to store this
info. What is the best way to ensure that this information gets stored in the
tables in this database?
I had thought of using a common datalayer that sits above the basket and
extended database tables; is there a better way? what about insuring
transactions are commited to boths destinations?
Thanks
Help would be very much appreciated! |
|
Zoe Hart [MVP]
Guest
|
Posted:
Fri Sep 16, 2005 4:52 pm Post subject:
Re: Extending the Orderform |
|
|
1) Get the line item detail from the marshalled data and store it in the
normal orderform table? Is it a case of naming columns in this table that
match the ordeform headings? We need to get the built in stuff
unmarshalled,
i.e. orderitemid, etc I know that I can put my own stuff in here but does
the
same method (named columns) apply for unmarshalling built in data?
Yes, the same method applies. If you want to see the line item data, you'll
need to add the columns with the matching names to the OrderFormLineItems
table. If the dictionary key starts with an underscore (e.g. _cy_list_price)
you'll need to have a pipeline component copy it to a different key like
saved_cy_list_price. Dictionary elementst starting with an underscore will
not persist even if a field of that name exists in the table.
2) Add bespoke products to the cart at runtime. A user will create a product
on the fly and we need to add this product to the cart with its own custom
price. My problem is that a lot of additional data needs to be added, so we
have a site-name_extended database with a number of tables used to store
this
info. What is the best way to ensure that this information gets stored in
the
tables in this database?
I'm not sure what you mean by creating a product on the fly. To add a
product to an order the product ID must exist in the product catalog. The
additional data shouldn't be a problem. You just need to customize the code
that adds items to the order, having it look up the data in your tables and
add the data to the line item dictionary.
--
Zoe Hart
Commerce Server MVP
"daveym" <daveym@discussions.microsoft.com> wrote in message
news:F2F244F8-336D-491E-A25A-0A441362434D@microsoft.com...
| Quote: | Hi all,
Could you tell me the easiest way to do the following?
1) Get the line item detail from the marshalled data and store it in the
normal orderform table? Is it a case of naming columns in this table that
match the ordeform headings? We need to get the built in stuff
unmarshalled,
i.e. orderitemid, etc I know that I can put my own stuff in here but does
the
same method (named columns) apply for unmarshalling built in data?
2) Add bespoke products to the cart at runtime. A user will create a
product
on the fly and we need to add this product to the cart with its own custom
price. My problem is that a lot of additional data needs to be added, so
we
have a site-name_extended database with a number of tables used to store
this
info. What is the best way to ensure that this information gets stored in
the
tables in this database?
I had thought of using a common datalayer that sits above the basket and
extended database tables; is there a better way? what about insuring
transactions are commited to boths destinations?
Thanks
Help would be very much appreciated! |
|
|