When you create a virtual catalog from one or more base/virtual catalogs, the data from base/virtual catalog is propagated into newly created virtual catalog.  In the newly created virtual catalog, you can override few of the properties such as display name, price, description, ranking etc. Whenever there is a change in any one of the property data in base catalog, the virtual catalog needs to get rebuild in order to get those modified data. So, when you click on any virtual catalog in catalog manager, you will see a dialog box asking whether to rebuild the catalog now.

image

You might be wondering, in some instances even though the data is changed in the base catalog, the virtual catalog will not ask for rebuild. This is because the data rows you have changed in the base catalogs are materialized in virtual catalogs( this virtual catalog data is modified from the catalog manager). In such instances, any data changes in the base catalog will not be propagated to the virtual catalogs.  Run below query to check the rows that got materialized in the virtual catalog.

select * from [ADVC_CatalogProducts] where [#MaterializationNeeded]=1
– Note: ADVC is the virtual catalog name.

Commerce server runtime has provided few methods by which we can rebuild all virtual catalogs (irrespective of any change / no change in the base catalog data). But these materialized rows will not get disturbed with that rebuild. If you want to get the base catalog data on rebuild, you need to set back the #MaterializationNeeded flag to 0. Note: if you change this bit flag, you may end up loosing materialized row data in the virtual catalog.

UPDATE [ADVC_CatalogProducts]  SET [#MaterializationNeeded]=0 where  [#MaterializationNeeded]=1  AND ProductID=’19393838′

Related Articles


If you like this post, please click on our sponsor advertisement.


Commerce server 2007 product which was released in the year 2006 grab bigger market with in ecommerce space Three weeks before, Microsoft has stopped mainstream support & provided only extended support till 2016 to this product. So, going forward you can’t
1. request to change the product design & features
2. Complimentary support included with license, licensing program & other no-charge support programs.
3. Other non-security hotfixes (available only with purchase of extended hotfix support agreement.

These are the services provided (as part of extended support) for next five years are
1. Security updates
2. Paid support (including pay-per-incident premier & essential support).

Free access to online content such as knowledge base articles, online product information, & online support webcasts, etc. will continue to have.

Product Released General Availability Date Mainstream Support End date Extended Support End date Service Pack Support End Date
Commerce Server 2007 Developer Edition 6/16/2006 7/12/2011 7/12/2016 7/8/2008
Commerce Server 2007 Enterprise Edition 6/16/2006 7/12/2011 7/12/2016 7/8/2008
Commerce Server 2007 Service Pack 1 6/22/2007 Not Applicable Not Applicable 7/14/2009
Commerce Server 2007 Service Pack 2 5/29/2008      
Commerce Server 2007 Standard Edition 6/16/2006 7/12/2011 7/12/2016 7/8/2008

Click here to go to product life cycle page.

Microsoft will continue its mainstream support to Commerce server 2009 till July 2014,

Related Articles


If you like this post, please click on our sponsor advertisement.


Today one of the person has posted a question in commerce server forums asking whether commerce server API model is best or Multi Channel Foundation (MCF). I am trying to explain my point of view between two models.  Hope this gives the readers an idea on advantages & disadvantages of each model.

Two years before, people are using commerce server API but they are not happy because of “X” reasons and MCF was bought to help them. Some of the reasons include

1. Reduce developer ramp-up time: Each sub-system has its own API model and developer has to learn in order to work on it. With MCF, CS DEV team has introduced  a consistent model which works same & consistent in all sub-systems.

2. Out of Box “Business Logic” layer: Old commerce server developers are excited/afraid to work on commerce server pipelines. I said excited because this is the place where they can show their innovation of injecting business logic into the application and I said afraid because this is the place where they end up spending more time in development, deployment and also they need to consider more about application performance. There pipelines are very specific to order system/limited to marketing system and for other sub-systems there is no framework to introduce new business features. With the introduction of Operation Sequence components (which works on dependency injection), MCF provides us the flexibility to introduce new features to any sub-system.

3. Clear separation of  Presentation & Business logic: Before we used to keep every business logic very close to presentation layer. For example, on the fly, I need to get price details from external system. So, we end up writing web service call in the presenter or a component after presenter. With introduction of operation sequence components, we can easily separate business logic from presentation layer.

4. Extensibility Model: MCF is on top of Entity model and this is totally extensible. Either the developer can create a new entity on top of existing entity or they can live with existing entity and all new properties can be added to the existing entity without modifying the entity (weakly typed properties).

5. Multiple operations in one call: This feature is awesome and I bet many of the developers are not using this. In a page you have to show three advertisements in the right hand of the page, categories in the left hand side of the page and mostly sold items in the middle. Generally we end up writing three calls to commerce server but with MCF, we can call single call to commerce server to fetch all these values.
6. Multiple presentation support: As MCF works on entities, it can interface with all new technologies such as LINQ, WCF, WPF & Silverlight thus making business to offer services on multiple channels (web, mobile, kiosk, etc.).

 

Good to know few of the advantages of MCF but as a developer if you really think, MCF has bought a confusion over developers.  Some of them includes

1. It’s simple in architecture but MSDN has made it complex. If you want to learn MCF on your own by going through MSDN then its difficult.

2. Microsoft suggest all new applications to move to MCF but they haven’t published the road map of this technology. I don’t know whether MCF exist tomorrow or they introduce another framework.

3. No much support to ASP.NET: Microsoft has provided out of box site on SharePoint but not on ASP.NET thus making new business people to onboard their applications in SharePoint. If you want to develop on ASP.NET then you may end up writing new operations sequence components or tweaking the existing ones.

4. More development time is required if you want to create your own entities or operations or operation sequence components.

5. Performance overhead: MCF is developed on top of commerce server runtime, so it ends up consuming more resources than CS API.

 

The trade off is on application development time + performance (CS API) Vs. application scalability, extensibility, maintainability (MCF). A good architect choose the MCF over CS API as this framework will return more results throughout the application.

Related Articles


If you like this post, please click on our sponsor advertisement.


I still remember the last commerce server road map released few years before and after that there is no official commerce server roadmap released. As published before, commerce server team has come up with CS2009 and also enhancement release (R2). With the delay in new roadmap, many of the existing commerce server customers & new customers who are willing to leverage commerce server are in jeopardy whether to continue to use this product or not. As usual, rumors are on the fly; they say commerce server as a product will be stopped or commerce server will be integrated & sold with other products, etc. These rumors are not official published by Microsoft rather the insecurity or not awareness of future CS product features have make these rumors to flow in the industry.

Just want to pass this to the community that existing Commerce Server customers started thinking to move to R2, which is a minor release.  3 Key areas are addressed:
•    Ease of installation and deployment
•    Improved business tools for managing product catalogues
•    N-Tier deployments for separating the logical functions of an e-commerce solution onto separate hardware

In R2, there are very limited changes/improvements concerning integration with SharePoint and as as usual there are no enhancements to the core commerce server subsystems.  Note: the licensing model is yet to published by the product team.

R2 release is currently in RC and will be released to market in 2nd half of 2011 (may be 1-3 months down the line). I received communication from Commerce Server product team that they will publish the road map after R2 release and they already started working on the roadmap items. They don’t want to disclose roadmap before R2 release keeping extreme caution in competitive situations.  So friends, urge you not to believe the rumors and just wait for couple of months to know how future CS product looks like.  If you still have questions & want to clarify before you opt this product then I would recommend you to directly work with Microsoft sales team and they can give you insight into roadmap (under  NDA)

Related Articles


If you like this post, please click on our sponsor advertisement.


Strange thing happened few days before and thought of sharing the same to the readers. First I thought it was issue with commerce server product and later I found that this is how it was developed (feature).

I got a new requirement; the requirement is to change the behavior of the page based on the DateModified column. I.e., based on this value, I have to show/hide few sections in the page. I developed a method which returns an entity & handed over to UI developers to consume. While integration, UI developers confirmed that all other entity properties are coming as exist in the database but date modified property is not (cs2007 last modified is mapped to DateModified entity property) and every time this property holds current date.

dataloss

Hmm.. looks very annoying to me when I found that the value is coming wrong from the foundation call. I checked CS2009 assemblies with the reflector but not able to find exactly place where datemodified column is getting changed. After some troubleshooting, I found out that this is read only property & gets updated whenever any of the entity property is updated. So, from CS2007 API lastmodified column is coming correctly and properly updated to datemodified property but after this assignment few more properties are updated to the entity which is triggering override of this value with the current date. 

So, it’s a feature of the application not a bug. Finally, I end up creating another property in the entity to fetch LastModified value.

Related Articles


If you like this post, please click on our sponsor advertisement.


Follow me on Google+
Couldn't get data from google+
Sign up for Newsletter