Thanks so much for the help Jono.
We came across a number of additional problems that made this even more complicated, so it's become a very manual task!
- Converting the table from the old version created unicode conversion problems - all members with international characters in their usernames were replaced with the '⃞' symbol (e.g. Björn Fältskog becomes Bj⃞rn F⃞ltskog)
- Our company standard is to 'anglify' international characters using the standard english alphabet, (e.g. Björn Fältskog becomes Bjorn Faltskog)
So... it's become simpler to manually check & amend all users before updating them to AD users.
We also realized that since it will be a lot of work, we should try purge all old users,and ignore all users that are no longer at the company - for historical purposes its good that all old posts have a 'real' owner (deleting the user would mean that all their posts becomes owned by the username 'Guests') but they don't need to become AD users, and this will save us some time in the manual editing.
So the goals are:
- Remove ALL users who have never posted - they can update their member profile in their new automatically created AD user.
- Leave all ex-employees with any posts as 'local' users
- Leave current employees with very low post counts as 'local users'
- Rename all current & active users using their AD name.
- Update all current & active users to AD users. (change the user_code field to 'DOMAIN\User name') with the now correct user name.
Since we need the old forum to stay in production and this is taking a long time, this is the process we are following:
- Back up the old 7.7 forum database
- Install a test version of 9.x forum in a new folder
- Create a new empty SQL database for 9.x
- Import all old database tables into new database
- Setup & Configure new 9.x forum
- Run 'Batch Delete Members' to remove ALL users who have never posted, irrespective of signup date
- Ask internal systems for an exported list that compares 'AD Name' to 'Real Name'
- Decide a 'break point' for manual user checking, of e.g. 25 posts.
- Go into Admin/Member Administration & Sort by # Posts (descenfing)
- Manually check every username against their AD user - rename to AD user as necessary.
- For renamed users with international characters, enter their 'plain english' AD name, and also enter their 'real name' in the real name field.
Remaining steps - not done yet.
Create the correct user_code field similar to in Jono's instructions above. (actually, we have done it with a query that takes into account employment, signup date & number of posts and excludes admin users, so we are using "where Author_ID" followed by a big lists of authors that are:
a) currently employed
b) have posted more than 'n' posts
c) not local admin users
I'm not sure of the value of Jono's 'CheckWebWizAgainstNT' vbscript, since we will have so many exceptions anyway, but i'll try it just to see.
Finally, merge the new amended users table with the other currently running 7.7 forum tables, import into the new forum, Pay Bruce some money (unbranded for our corporate intranet), and Go Live!