This is the fourth post in a series of blog posts about converting from CommunityServer to DotNetNuke.
A brief background: I had a number of websites running on CommunityServer 2.1, I decided it was finally time to ditch CommunityServer due to the change in their licensing model and pricing that made it not good for the small guy. This series of blog posts is about how to convert your CommunityServer based sites to DotNetNuke.
Series of Posts:
Part 1: An Introduction
Part 2: DotNetNuke Installation
Part 3: Converting users from CommunityServer to DotNetNuke
Part 4: Getting the conversion tables ready for CS to DNN
Part 5: Moving Forum threads from CommunityServer to DotNetNuke
Part 6, Community Server to DotNetNuke Moving Forum replies and attachments
Part 7: CommunityServer to DotNetNuke handling URLs
This is Part 4, Getting the conversion tables ready for CS to DNN
In the previous blog post we talked about our first conversion SQL Script. We skipped over a couple of sections in that SQL Script as we only focused on the User conversion that was going on in there. In this blog post we’re going to talk about the other things going on in the script.
First things first, you can find the scripts on the codeplex project http://cstodnn.codeplex.com/
This first script, besides bringing users over into DotNetNuke, configures a few tables that we are going to use in the latter scripts, and in our URL handling later on, to match up the data from CommunityServer Forums and Users to DotNetNuke Forums and Users.
The script starts off by deleting three tables
[TARGETDB].[dbo].[conversion_users] – mapping CS user ids to DotNetNuke user ids
[TARGETDB].[dbo].[conversion_forums] – mapping CS forum ids to DotNetNuke forum ids.
[TARGETDB].[dbo].[cs_forums_topics] – mapping CS forum post ids to DotNetNuke forum post ids.
It then creates those three tables. They are pretty basic tables, take a look at the script for more details on the columns in each one. From there the script deals mostly with users for a while (See post #3) until we get commented section for “Get Forum Groups.
This section of the script gets all of the Forum “Groups” from CommunityServer and pulls them over into the DotNetNuke Forum_Groups table. These are just for grouping forums, which we pull over next. The Forums themselves are pulled into Forum_Forums with their corresponding group IDs.
After that we start populating the Conversion tables, mapping user ids, and forum ids. We don’t use the cs_forum_topics table until the later SQL scripts. The very last thing done in this script is to create a stored procedure called Forum_Post_Add_Conversion. This script will get used in the later scripts as we go through and import forum posts. This PROC is slightly different than the standard Forum_Post_Add stored procedure, tweaked slightly to make it work with the import process.
Once the conversion itself is done you could delete the procedure. You won’t be deleting the Conversion tables though anytime soon, in a future blog post we’ll show you how we use those for handling all the old CommunityServer URLs and mapping them to DotNetNuke URLs.