The process of upgrading to BV Commerce 2017 is nearly identical to past release upgrades. The system requirements listed below, however, have changed.
Read on for the specific upgrade instructions for your version of BV Commerce or click one of the jump links below:
If you would like to create a fresh installation please refer to the respective documentation.
New System Requirements
Pay particular attention to these requirements as they have changed since the 2015 releases. If you're unsure whether your server meets these requirements please contact your hosting company.
- Windows Server 2008 R2 SP1 or above (i.e. IIS 7.5 or above)
- .NET Framework 4.6.2 with Full Trust
- SQL Server 2008 or above with Full Text Search installed
Upgrading from BV Commerce 2013-2015 SP2
These installation steps assume that you already have a functioning BV Commerce 2013-2015 SP2 website. Note: if your website has any custom code outside of your theme folder (\www\BVModules\Themes\YOUR_THEME_FOLDER) you may need to use a file comparison tool like Beyond Compare to merge your changes.
- Create a backup of your website files and database.
- Download "BV Commerce 2017.0.0.1575" from the Downloads page of your account.
- Unzip the file on your computer to a location of your choosing.
- Copy only the contents of the \www folder to the server; the other folders contain the source code for developer use. You will need to merge the Web.config file in the root of your site; use the Web.config file from 2017 and merge only the SQL connection string and any custom configuration changes from your old config file.
- Open your web browser and go to the address of your BV Commerce store. Provided that the above steps were done correctly you should be redirected to the /SQLPatch.aspx page and see the installation screen below. If you don't, please re-check the steps above.
- Click the "Start" button to complete the upgrade. This can take a few minutes. Once the upgrade is complete you will be redirected to the store homepage.
- If your site uses a theme that was created from the "Foundation4 Responsive" theme in BVC 2015 please read the additional instructions below.
- Congratulations! You've successfully upgraded to BV Commerce 2017.
Updating Foundation4 Responsive-derived Themes
BV Commerce 2017 contains a number of enhancements and bug fixes to the Foundation4 Responsive theme. If you created a theme derived from this theme (i.e. you started by duplicating the Foundation4 Responsive theme and then modified it) you will need to compare the updated Foundation4 Responsive theme files to your theme and merge the differences. This is where a file comparison tool like Beyond Compare is indispensable as it will allow you to easily compare the theme folders and locate the differences in each file. This is a critical step since themes now contain a significant amount of functional (not just design) code with the new theme architecture of BVC 2015.
Upgrading from BV Commerce 5.7 or 5.8
These installation steps assume that you already have a functioning BV Commerce 5.7 or 5.8 website. Note: if your website has any custom code outside of your theme folder (\www\BVModules\Themes\YOUR_THEME_FOLDER) you may need to use a file comparison tool like Beyond Compare to merge your changes.
- Create a backup of your website files and database.
- Download BV Commerce 2017 from the Downloads page of your account.
- Unzip the file on your computer to a location of your choosing.
- Copy only the contents of the \www folder to the server; the other folders contain the source code for developer use. You will need to merge the Web.config file in the root of your site; use the Web.config file from 2017 and merge only the SQL connection string and any custom configuration changes from your old config file. BV Commerce 2017 uses ASP.NET 4.6.2 so the Web.config file will be substantially different.
- In IIS set your application pool to .NET Framework 4.0 and integrated managed pipeline mode. If you're using a hosting company you may need to contact them to make this change.
- Open your web browser and go to the address of your BV Commerce store. Provided that the above steps were done correctly you should be redirected to the /SQLPatch.aspx page and see the installation screen below. If you don't, please re-check the steps above.
- Click the "Start" button to complete the upgrade. This can take a few minutes. Once the upgrade is complete you will be redirected to the store homepage.
- For your theme, you will likely need to add the style block below for the breadcrumb so it displays horizontally instead of stacking. If you enable the shipping calculation on the cart, you will want to grab the chunk of styles at the bottom of the Bvc2013 theme style sheet below the comment heading: /*CART SHIPPING CALCULATOR*/.
.breadcrumbs div {display:inline;}
- Congratulations! You've successfully upgraded to BV Commerce 2017.
Upgrading from BV Commerce 5.0-5.6
Follow the same steps above for upgrading from 5.7 or 5.8. Note that when you first log in using an administrator account you will be prompted to change your password. If you are using the username "admin" you will also be asked to change your username. This behavior was part of the PCI Compliance changes in 5.7.
If you've created any custom code for your website, even something as simple as a new category or product template, be sure to test it after the upgrade. With 5.7 there were some performance changes to the URL rewriting functions in the Core. Specifically the BuildUrlForCategory function in the BVSoftware.Bvc5.Core.Utilities.UrlRewriter class takes an additional parameter called allCats which is a collection of Category objects containing all of the store categories. A typical line of code from 5.6 or below looks like this:
Dim destinationLink As String = Utilities.UrlRewriter.BuildUrlForCategory(c, Me.Page)
And it must be changed to look like this:
Dim destinationLink As String = Utilities.UrlRewriter.BuildUrlForCategory(c, Me.Page, Catalog.Category.FindAllLight())
Keep in mind that if this code appears inside a loop of some kind, repeatedly calling Catalog.Category.FindAllLight() will likely slow down the site. Instead you should create a variable to store this data and then pass the variable around rather than querying the database every time.
Upgrading from BV Commerce 2004
A direct upgrade from BV Commerce 2004 to 2017 is not possible. You must first migrate from 2004 to 5.6 (5.4. or 5.5 should work as well) and then upgrade to 2017. This sounds complicated, but it's really not that difficult. The final 2017 site will be a separate copy from the 2004 site; your 2004 website files and database will not be modified. Here's what the process looks like. As always, be sure to backup your database and website files before proceeding.
- Create a new database in SQL Server that will become your BV Commerce 2017 database when this process is complete.
- Download BV Commerce 5.6 from the Downloads page of your account.
- Unzip the file and browse to \src\www\BVAdmin\BVSql\Full\
- Run the following SQL scripts in this order on the new, empty database to create a 5.6 database:
- CreateTables.sql
- CreateProcedures.sql
- CreateFunctions.sql
- PopulateData.sql
- Download the migration tool from the forum.
- Unzip the file and run MigrationTool.exe.
- Click the "Next >>" button.
- Set the SQL connection strings for both databases and set the items that you wish to import.
- Click the "Start Migration >>" button to perform the migration.
- Create a fresh installation of BV Commerce 2017 but set the connection string to your newly migrated database. When the 2017 website runs for the first time it will automatically upgrade the database from 5.6 to 2017.