Free Commerce Server 2007, SQL 2005, Visual Studio Web, and C# Express
Did you know that Commerce Server 2007 Developer Edition can run using SQL Express as the data store and Visual Studio Web Express to edit your Starter Site and that's not all you can download the Visual C# Express to create application with Commerce Server 2007.
Of course this is not tested by the product group but I took it upon myself to do the work.
Here is what you need to do:
- Make sure you have a clean system running Windows 2003 SP1 or R2 with latest updates.
- Download the Microsoft® SQL Server® 2005 Express Edition making sure to download the SQL Server 2005 Express Edition with Advanced Services SP1 and install it. Be sure to check the Full Text option during the installation.
- Next download the Visual Web Developer 2005 Express Edition and install accepting all defaults.
- Then download the Visual C# 2005 Express Edition and install accepting all defaults.
- Now we are ready for Commerce Server download the Commerce Server 2007 Developer Edition for free and install accepting all defaults then configure Commerce Server.
- Download the Commerce Server 2007 Starter Site and follow the instructions in the readme for installation and configuration.
- Download the Commerce Server 2007 Partner Software Development Kit and install to the SDK folder of Commerce Server.
That's it now you have a full functional starter site that you can review and modify as well as view the new Management Applications and if you want to know how they were designed or you want to modify them you can do that using Visual C# Express, and it's all free. Another scenario that this fits is that you maybe training folks and you never have to worry about reinstalling software :).
Caveats
- No BizTalk 2006 it's not free but you can download the evaluation bits.
- No Data Warehouse and Analytics but you can download the evaluation bits.
- No support form PSS at least not yet :).
Summary
So what does this mean? If you are developer, a hobbyist or someone who is curious about Commerce Server 2007 and want to know what all the BUZ is about you can do that free.
Comments
Anonymous
November 03, 2006
Is posible use Commerce Server 2007 Developer Edition with Visual Studio 2005 Standard?, or running only in the Express Versions of Visual Studio. ByeAnonymous
November 03, 2006
Yes you can use Visual Studio 2005 Standard Edition with Commerce Server 2007. -MaxAnonymous
November 07, 2006
The comment has been removedAnonymous
November 07, 2006
The comment has been removedAnonymous
November 08, 2006
The comment has been removedAnonymous
November 08, 2006
The Profiles subsystem does not support the UnionClauses method. You may have to resolve to using the OLEDB of profiles. [Updated] I just confirmed with the Product Group that Profile’s CS OLEDB provider does not support Union clauses. So you can do what I suggested sorry. Good luck, -MaxAnonymous
November 21, 2006
Hi Max, I have a scrnario wher I have a Profile called customer and an Address Profile. This Address profile is also used to save addresses for Billing Agent and frieght forwarder. Customer stores the Addresses in multivalued semicolon seperated list. Now i need to Search for customer based on customer properties or address for a customer. How can i implement this as I am not very sure if commerce Server supports this.or is it ok if we directly query commerce server DB usin SQL queriesAnonymous
November 26, 2006
Have you looked at using the CSOLEDB for profiles http://msdn2.microsoft.com/en-us/library/ms960054.aspx? Use CSOLEDB where possible instead of direct SQL access. Note: that joins are not supported with CSOLEDB. If you want to search an address and having to find the customer based on the address. Then I would suggest extending the Address database and class by adding a UserID column. Whenever a user creates an address you store their UserID in this column. When searching for addresses it will make it simple to track back to the customer. Good luck, -MaxAnonymous
December 03, 2006
Hi Max, Following is some code snippet that i have worked out object recordsAffected; int options = 0; Connection csoledb = CommerceContext.Current.ProfileSystem.CommerceOleDbProvider; //.Current.ProfileSystem.CommerceOleDbProvider oledbconn = new OleDbConnection("Provider=Commerce.DSO;Data Source=mscop://InProcConnect/Server=siddharths:Database=SiddSite_profiles:Catalog=Profile Definitions:Trusted_Connection=Yes"); Recordset queryResults = csoledb.Execute("Select GeneralInfo.address_line1 from Address where (GeneralInfo.address_line1 = 'Kothrud' and GeneralInfo.address_name='WS Address')", out recordsAffected, options); try { using (OleDbDataAdapter adapter = new OleDbDataAdapter()) using (DataSet ds = new DataSet()) { ds.Locale = CultureInfo.CurrentCulture; adapter.Fill(ds, queryResults, "table"); List<string> currencyCodeList = new List<string>(); foreach (DataRow dr in ds.Tables[0].Rows) { this.Response.Write(dr[0].ToString() + Environment.NewLine); currencyCodeList.Add((string)dr[0]); } return currencyCodeList; } } finally { Marshal.ReleaseComObject(queryResults); } Now above querry works fine till the condition is “and “but when I say “or “it fails It gives a parser error. Please let us know why. Also we cannot have joins to do multiprofile search please let us know an alternative else we will have to use direct SQL calls to DB. Approach for searching in Dataset doesn’t work. Scondly :----- Can we have joins in CSOLEDB because we want to get something like Customer name="Tom" and address="India" I do not see any alternative but to have our own DAL implement this.Anonymous
December 04, 2006
The CSOLEDB does not support "or" condition and no support for SQL joins. Sorry, -MaxAnonymous
December 04, 2006
i have two profiles customer address and i know when these tbales and profiles would change. So is it ok like i write my own DAL to implement the search based on joins and the "OR" condiiton. Thanks a lot for all the inputs that you have been giving.Anonymous
December 05, 2006
Yes nothing is stopping you from doing that although direct access is frowned upon by the Product Group and Product Support so don't tell them about this comment :). -MaxAnonymous
December 19, 2006
i am running into simliar issues with the profile system - been using it for a number of years - and the the new version - is better? how? I am disappointed with CS 2007. Two different api's one for the runtime - one for the web services - who designed this?Anonymous
December 21, 2006
Not much has been done with the Profile System except bug fixes and the most notable change is the .NET profile membership provider for Commerce Server 2007.Anonymous
March 27, 2007
Retrieving profiles from the database We are creating a profile system whereby each UserObject profile...Anonymous
March 27, 2007
The comment has been removedAnonymous
March 27, 2007
You will need to mark the org_id as searchable. Open the Commerce Server Manager then navigate to the global resources and find the profile node for your site. Then navigate to the UserObject and find the org_id and mark it searchable. Next you will need to do an iisreset. Good luck, -MaxAnonymous
April 01, 2007
The comment has been removedAnonymous
April 03, 2007
After you set the org_id to searchable you will need to modify your code (just search for org_id not AccountInfo.org_id): SearchClauseFactory factory = profile.GetSearchClauseFactory(searchableEntities, "UserObject"); searchClause = factory.CreateClause(ExplicitComparisonOperator.Equal, "org_id", organisationID);Anonymous
April 03, 2007
Excellent, thanks Max. I was sure I had tried that before, but it must have been when something else was wrong. That now works and I can successfully get the userObjects back by their OrganisationId. Thanks SimonAnonymous
September 16, 2007
Hi Max, Is there a way to deploy a commerce server site without using the Pack and Unpack option? If yes what all things need to be taken care of while doing so. What script do i need to provide at the step where it asks for UPM_SQLSource Thanks, Siddharth SatheAnonymous
September 19, 2007
Yes, you can publish sites without pup. This was under the SDK folder for CS2002 but the sql files exists in C2007 but not the vb script for the site creation. For more info read Colin's blog http://rockstarguys.com/blogs/colin/archive/2006/11/05/deploying-commerce-server-2007-sites-without-site-packager.aspx. The UPM stuff uses the files under the root of CS folder so you can replace those files with your stuff and the pup will work or after you do the pup you can run a sql statement to createalter your sql objects then import the xml profile schema. Good luck, -MaxAnonymous
September 29, 2007
Hi, Whenever we are creating catalog in commerce server a folder with CatalogName appended by number and the _FullTextCatalog is getting created at following location C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLFTData eg name: - Catalog1_FullTextCatalog Thanks, Siddharth Sathe When we take backup of the catalog database and then try to restore this we get to see lot of files corresponding to the folders created above. Can you please explain little more about this folder creation and importance of files under this folder.Anonymous
September 29, 2007
Hi, I am trying to unpack basic CSharp site or creating new commercer server site then i am getting following error Error importing object data for Transaction Config from file C:Documents and Settingsuser1Local SettingsTempTransaction Config 8004E024:COM+ activation failed because the activation could not be completed in the specified amount of time. (Exception from HRESULT: 0x8004E024) We tried deleting the temp folder which was already existing but didnt work. Also restarting the machine has not worked. Can you please tell us some suggestion?Anonymous
September 29, 2007
Hi, I applying Service Pack1 solve the above issue.Anonymous
October 01, 2007
Hi, we are using Commerce Server 2007. We want to know least permission for commerce server databases. Currently we are following one Microsoft link for giving database permissions http://download.microsoft.com/download/3/a/4/3a46267f-9640-4623-86a1-c63bbfea9e1d/Installation%20and%20Configuration%20Guide%20for%20Microsoft%20Commerce%20Server%202007.html#Auth_Roles (SQL Database Account, Database, and Database Role User Mapping) we were apply all required permission/databse roles to all databses. but we will not able to connect to commerce server database. When we chnage these permission to db_owner it works fine. But we want to run application in lease privileges. Can you help us to solve this problem? AmolAnonymous
October 03, 2007
I think this link should help http://msdn2.microsoft.com/en-us/library/ms942152.aspx. Good luck, -MaxAnonymous
October 04, 2007
Thanks for reply I have same document like this. But it will not works. It gives access denied to CSharpSite_transactions. Whenerver I gives db_owner to that database it works fine. What to do?Anonymous
October 30, 2007
If you setup the roles correctly then you should not be getting any errors. I would seup a sql trace to see as what user you are comming and debugg that way. -MaxAnonymous
December 10, 2007
Hi, I am having a property in Product catalog which is of Datatype Bigint which i want to change to Decimal. But through the Schema manager (it does not allow) to change datatype.I tried changing it directly through database but after that it gives an error " Column 'SalePrice' does not belong to table CatalogItems " Is there any way in which i can change the datatype? Also once it is changed how do i promote it to our testing server?Anonymous
December 11, 2007
Check this post http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2530243&SiteID=1. -MaxAnonymous
December 12, 2007
Hi, If i try to delete the plde propert then it is giving following error at the time of removing the property from product definition. Any suggestions? Microsoft.CommerceServer.ServerFaultException at Microsoft.CommerceServer.ServiceAgent.TryHandleWebMethodException(Exception ex, SoapHttpClientProtocol serviceProxy) at Microsoft.CommerceServer.Catalog.WebService.Proxies.CatalogWebService.AuthorizedInvoke(String methodName, Object[] parameters) at Microsoft.CommerceServer.Catalog.WebService.Proxies.CatalogWebService.SaveDefinition(CatalogDefinition updatedDefinition) at Microsoft.CommerceServer.Catalog.CatalogAgentContext.SaveDefinition(CatalogDefinition updatedDefinition) at Microsoft.CommerceServer.Catalog.CatalogDefinition.Save(Boolean bypassConcurrencyCheck) at Microsoft.CommerceServer.Catalog.CatalogObject.Save() at Microsoft.CommerceServer.UI.CatalogSchemaEditor.DefinitionProperties.UpdateDefinition(CatalogDefinition definition) at Microsoft.CommerceServer.UI.CatalogSchemaEditor.CatalogDefinitionObject.Save() For more information, see Help and Support Center at Also it would be great if you could point to the bulk APIs to move your data into new property.Anonymous
December 13, 2007
You need to remove it from the product defintion first then delete it. If you try to delete any property that is being used then you will get an error. Here is the doc help link for bulk api http://msdn2.microsoft.com/en-us/library/aa545729.aspx. -MaxAnonymous
July 08, 2008
I find a problem in the profiles. When i mark a field Not active from Commercer server manager, then i cannot find the column appearing in the search results. Is there a way we can have a column not active and also make it visible in the search results in BUI (Customers and Orders Manager)?Anonymous
August 11, 2008
No you cannot. You can however download the partner SDK and modify the code to produce the desired requirement. -Max