Microsoft CRM 4.0

We have a CRM database we use for sale staff, I inhertied it as part of a network when we took over.

yesterday the domain controlled crashed so to get everyone up and running we setup a new DC, new domain and joined everyone too it.

Now when we go to the CRm website http://SERVERNAME:5555 we get user not recognised, but ofcourse the users are now NEWDOMAIN\username instead of OLDDOMAIN\username

I have regained access to the SQL database but cannot get into the CRM deployment manager as it says "only the deployment administrators are able to use the deployment manager"

Is there anyway I can make the CRM available to anyone on the network or alternatively how I can add the new users through SQL?
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

clivingIOSAuthor Commented:
I canow get into the deployment administrator as I followed the guide to add another using this: 

Now i just need to rather create some new users or somehow get in through the database and change their usernames from OLDDOMAIN\username to NEWDOMAIN\username
Feridun KadirPrincipal ConsultantCommented:
Hmm, that is a tricky one. There are a lot of tables in the MSCRM_CONFIG (the deployment wide database) and the main database (yourorg_MSCRM) that reference user accounts, not to mention the AD groups as well.

Given that you setup a new domain, the security groups for CRM will also be missing.  I think trying to retrofit security in this scenario will be tricky and take a long while and you might not catch everything.

My suggestion is to reinstall CRM 4.0 (assuming that you have the media).  Youl will need to delete the MSCRM_CONFIG database first (take a backup) and then run the CRM 4.0 installation.

The install will force you to create a new organization database, use a name such as Temp. After the installation is complete, you can delete this organization.

After installation finished, in Deployment Manager, import your existing CRM database. This will sort out all the user mappings to the new Active Directory accounts.

Good luck and feel free to post again if you need more help.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
clivingIOSAuthor Commented:
I have also managed to find the user through the database using the following:

select FullName, * from SystemUserBase where SystemUserId = '05BF47FE-9D8C-DE11-9406-001CC4395D5F'

That is his SystemUserID, I can see his username says OLDDOMAIN\username - just need to know the command to change that now I guess?
Active Protection takes the fight to cryptojacking

While there were several headline-grabbing ransomware attacks during in 2017, another big threat started appearing at the same time that didn’t get the same coverage – illicit cryptomining.

clivingIOSAuthor Commented:
I am thinking If I can alter his username to the correct one I can login into CRM and change everyones, or evern change them all through the database if needed?

As long as they can see the records once logged in i'm not to bothered as we are moving away from crm shortly anyway.
Feridun KadirPrincipal ConsultantCommented:
I advise you against making changes to the database. Yes although you will see references in various places, IMHO your deployment is broken and should be reinstalled as per earlier post.
Feridun KadirPrincipal ConsultantCommented:
I see.

Well you can try updating one record and see what happens.

In SQL Deployment Manager, connect to your CRM database and run the following SQL:

update systemuserbase
set DomainName='newdomain\loginname',
set ActiveDirectoryGuid='new AD GUID'
where SystemUserId = '05BF47FE-9D8C-DE11-9406-001CC4395D5F'

You'll need to get the Active Directory guid for the user from Active Directory Users and Computers or some other tool.
clivingIOSAuthor Commented:
That didn't work, I updated the user and it still didn't let me in, I am reinstalling CRM now - Is everything stored in the database or is there some other folders I need to restore? Will it reconfigure IIS itself?


Feridun KadirPrincipal ConsultantCommented:
Yes it is all in the database. There is nothing else you need to restore.

With regard to IIS, you can either delete the website that was configured for CRM and get the install to recreate it or specify to use an existing website. I don't think it makes a lot of difference when installing CRM again over an existing deployment. I'd probably go with use an existing website (make sure you select the one already in IIS for CRM).
clivingIOSAuthor Commented:
Ok so i reinstalled crm and removed the database, I had it create a new IIS website since the other disappeared during the reinstallation - now when i go to http://server/crm it shows my the favicon for crm but nothing shows.

I imported the database as you said, I think now the problem may lie with IIS?

Is everything actually stored in the database, the layout of our crm etc? how do it know what to show us on the front end, I have full server backups so can restore the iis program files or even restore websites if they need restoring and link them back in iis
Feridun KadirPrincipal ConsultantCommented:
Yes, everything is stored in the database.  I would advise against restoring the IIS folders or websites. Installing CRM should have recreated the website in IIS and the relevant folders.

Which database did you remove?  And by remove, do you mean delete it from SQL Server?  There are two databases relevant to CRM; MSCRM _CONFIG (this is the one you should have deleted before the reinstall of CRM) and one with _MSCRM at the end of the name. This one you should have kept and then used the Deployment Manager to import it into the deployment. Did the import in deployment manager work ok?

Also check the port number of the website. The default port used by the installation is 5555 unless you specified something else.
clivingIOSAuthor Commented:
so I have got a CRM in place at the moment so everything is up and working with an empty CRM, i can access it by going to http://crmserver:5555 which redirects me to http://crmserver:5555/TestCRM/loader.aspx

I went in deployment manager and selected import organisation - selected the database i restored ourcrm_MSCRM - manually selected the users (since some of the ones in their don't exist anymore)

It pops up in the list of organisation saying pending then after a few minutes disapeers
clivingIOSAuthor Commented:
In the event log I got error code 19726 saying "import Organisation" failed to complete
Feridun KadirPrincipal ConsultantCommented:
OK, that is progress. At least you have a working CRM. We just need to get the import to to work.  Something I forgot, after the install, you will need to install the latest update rollup for CRM. I don't suppose you remember which rollups were installed before you did the reinstall?

It doesn't especially matter. On the assumption that your previous install was up to date you will need to install Update 21 from this location Make sure you select the correct architecture (32 bit or 64 bit) depending on your server OS.  I'm hoping that installing this Update Rollup will allow the import of the organization. If not, we'll have another think.
clivingIOSAuthor Commented:
The last CRM was version number 4.0.7333.3822 which seems to be version 21, I have updated it to that version now and still failing to import with the same error although i dont get a "warning" about the version number anymore.

Thanks for your help this far.
Feridun KadirPrincipal ConsultantCommented:
Yes 3822 is the latest (and last) version number.  

Please try once more to do the import but this time make sure DEployment manager is not running and then start it and do the import. When it fails, close Deployment Manager.

Then look for the newest Deployment manager log file in your user account on the server. The log files on more recent server operating systems are in C:\users\yourusername\AppData\Roaming\Microsoft\MSCRM\Logs.

But if you are using an older OS they are probably somewhere different but still under your user account.

Then either post or send me the log file. I'll see if that yields anything useful. If it doesn't I'm not sure that there is much more I can do via comments - I could have a quick look via a remote session if you are up for that - but not today.
clivingIOSAuthor Commented:
here is the part of the latest log fiel where it failed, since i t was after a restart anyway I shouldn't need to do another one I assume - although I can if you think it would help?

11:53:01|  Error| Import Organization (Name=ERMLTD, Id=9b22e988-6d14-e711-99db-90b11c101ded) failed with Exception:
System.InvalidOperationException: ExecuteNonQuery requires an open and available Connection. The connection's current state is closed.
   at System.Data.SqlClient.SqlConnection.GetOpenConnection(String method)
   at System.Data.SqlClient.SqlConnection.ValidateConnectionForExecute(String method, SqlCommand command)
   at System.Data.SqlClient.SqlCommand.ValidateCommand(String method, Boolean async)
   at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
   at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
   at Microsoft.Crm.CrmDbConnection.InternalExecuteNonQuery(IDbCommand command)
   at Microsoft.Crm.CrmDbConnection.ExecuteNonQuery(IDbCommand command, Boolean impersonate)
   at Microsoft.Crm.CrmDbConnection.SetTransactionIsolationLevel(IsolationLevel il)
   at Microsoft.Crm.CrmDbConnection.Dispose(Boolean disposing)
   at Microsoft.Crm.SqlExecutionContext.Dispose(Boolean disposing)
   at Microsoft.Crm.SqlExecutionContext.Dispose()
   at Microsoft.Crm.Tools.Admin.ImportOrganizationInstaller.Import(Guid organizationId, String organizationUniqueName, String organizationFriendlyName, String sqlServerName, String databaseName, Uri reportServerUrl, String privilegedUserGroupName, String sqlAccessGroupName, String userGroupName, String reportingGroupName, String privilegedReportingGroupName, ICollection`1 users, MultipleTenancy multipleTenancy)
11:53:01|Warning| Attempting to cancel a long running process: ProgressWizard. This might leave the data in an invalid state and the application might not function correctly.
11:53:05|Warning| Attempting to cancel a long running process: FinishWizard. This might leave the data in an invalid state and the application might not function correctly.
11:54:15|   Info| Deployment Manager Exit
Feridun KadirPrincipal ConsultantCommented:
Interesting. Is your database especially large?
clivingIOSAuthor Commented:
15GB - the log file is 65GB
clivingIOSAuthor Commented:
OK I have added those changes and the server is restarting now, hopefully in about 5 minutes I'll be giving some good news!
Feridun KadirPrincipal ConsultantCommented:
Hmm, not particularly huge but not small either. It also depends on the hardware spec of the SQL server.  The log file size shouldn't matter but it does sound as if it needs backing up to reduce its size.
clivingIOSAuthor Commented:
It took a lot longer than 5 minutes but I can now access our CRM on the server - but not the local machines, is their usually something else needed?
Feridun KadirPrincipal ConsultantCommented:
Excellent,  You probably need to allowing incoming connections on port 5555 in Windows firewall (if enabled). If this isn't the issue let me know what users see when they to connect to CRM.
clivingIOSAuthor Commented:
OK the port allowed people to see it, I ended up doing a full backup restore from last week as some of the data was messed up, all working fantastic now - thankyou very much for your help!
clivingIOSAuthor Commented:
Excellent solution and walkthrough
Feridun KadirPrincipal ConsultantCommented:
Great, glad you got there.
clivingIOSAuthor Commented:
I have a further issue with this and was wondering if you can help, the CRM after 30 days has just shut down and is telling us it needs registering, however the registration wizard says it cannot connect to the internet.

We have no proxies and the server has full internet access so my guess in the online registration has been shut down by MS and I cant find any phone numbers for them either since the help links it tells you to use dont work either.

I found a command to run on the database which marks it as registered below - but it comes up with the error below - any ideas?

Thanks in advance?

UPDATE ConfigSettings SET IsRegistered = TRUE

Msg 207, Level 16, State 1, Line 2
Invalid column name 'TRUE'.

Feridun KadirPrincipal ConsultantCommented:
I think you need single quote marks around the word true

set isregistered = 'true'
clivingIOSAuthor Commented:
Scratch that - I went into the "edit top 200 rows" of dbo.ConfigSettings and changed it to TRUE and it is now working.
clivingIOSAuthor Commented:
I tried it with and without quotation marks also, got the same error - thanks for taking the time to respond, I posted my fix in the last message.
Feridun KadirPrincipal ConsultantCommented:
Great that you got there.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft Dynamics

From novice to tech pro — start learning today.