I see that this is just another abandoned Blog in the ditch of the information super highway.
All together now... "I've been busy..."
I have a bunch of new stuff that I think could make interesting (and helpful) blog posts. So, if there is anyone out there... (static) either you will see some new stuff soon or maybe a similiar posting to this in 2012.
Saturday, February 20, 2010
Saturday, September 27, 2008
Consolidating Entity Data with Workflow
Its been a while since my last post, it has been hectic with the new office, new baby and having a new CRM consultant come on board.
I wanted to pass along a tip that may help you with consolidation of entity data.
CRM offers a rich rapid application development platform, which is great for quickly putting together line of business applications. The downside of this is the fact that is so quick, sometimes 2 consultants will build similiar applications in CRM for 2 different functional groups for a single customer. Months later the end users will realize that they aren't sure what group of entities to use because of the similiarities.
We had this at one of our customers, the situation wasn't as clear cut as that but we had 2 entities set up in CRM, one for "initiatives" and another for "projects". Over time with adding new features, fields and child entities, we found that the functionality of these 2 entities were converging and there was confusion by the end user of where to enter data and attach activities.
We decided to consolidate the data and retire one of the entities. Our first approach was to export all the data to excel, map the fields and re-import back into the other entity in CRM. There is nothing wrong with this approach, but it can potentially be tedious mapping the data and matching fields, etc.
A simplier and I think better solution came to mind. Why not use CRM 4.0 workflow engine to create a new record and populate it from the old record? This way we can run the workflow on a single or set of "initiatives" and let workflow create and populate the corresponding "project" record. We can even add a step to "deactivate" the old record as well.
This approach saved us a lot of time and we even were able (by adding a lookup on the old entity to the new entity) to move child records over as well. The only tricky part was activities, we had to some custom code for those but we would have to do that with the export/import routines as well.
I hope you find this tip useful!
I wanted to pass along a tip that may help you with consolidation of entity data.
CRM offers a rich rapid application development platform, which is great for quickly putting together line of business applications. The downside of this is the fact that is so quick, sometimes 2 consultants will build similiar applications in CRM for 2 different functional groups for a single customer. Months later the end users will realize that they aren't sure what group of entities to use because of the similiarities.
We had this at one of our customers, the situation wasn't as clear cut as that but we had 2 entities set up in CRM, one for "initiatives" and another for "projects". Over time with adding new features, fields and child entities, we found that the functionality of these 2 entities were converging and there was confusion by the end user of where to enter data and attach activities.
We decided to consolidate the data and retire one of the entities. Our first approach was to export all the data to excel, map the fields and re-import back into the other entity in CRM. There is nothing wrong with this approach, but it can potentially be tedious mapping the data and matching fields, etc.
A simplier and I think better solution came to mind. Why not use CRM 4.0 workflow engine to create a new record and populate it from the old record? This way we can run the workflow on a single or set of "initiatives" and let workflow create and populate the corresponding "project" record. We can even add a step to "deactivate" the old record as well.
This approach saved us a lot of time and we even were able (by adding a lookup on the old entity to the new entity) to move child records over as well. The only tricky part was activities, we had to some custom code for those but we would have to do that with the export/import routines as well.
I hope you find this tip useful!
Thursday, August 21, 2008
Retrieving User Language Settings via Jscript in Dynamics CRM.
I had a client need to run some code based on what language the user interface was in. In this particular client's setup, there are users that use both French and English user interfaces. The import/export labels tool works well but there were some cases where we needed to show different data on a CRM form based the language.
Good news is that this is a super easy jscript call, you just need to look at the system variables listed below:
//determine language
alert(USER_LANGUAGE_CODE);
alert(ORG_LANGUAGE_CODE);
The code will tell you what language code the user is using, so for english it is 1033, and for french it is 1036. You will need at least one other language pack installed for this to make any sense. So using these values in a "if" statement will allow you to do what you need to do for that particular user's language.
Good news is that this is a super easy jscript call, you just need to look at the system variables listed below:
//determine language
alert(USER_LANGUAGE_CODE);
alert(ORG_LANGUAGE_CODE);
The code will tell you what language code the user is using, so for english it is 1033, and for french it is 1036. You will need at least one other language pack installed for this to make any sense. So using these values in a "if" statement will allow you to do what you need to do for that particular user's language.
Friday, August 8, 2008
SQL 2005 provisioning tool for Vista (oh yeah, and Windows 2008)
I think that I have setup SQL Server (6.5, 7.0, 2000 and 2005) about a thousand times.
Asides from a few minor things here and there, this install works really well and usually there isn't a problem.
Today I installed on Windows 2008, and after a few setup things as outlined in http://support.microsoft.com/kb/920201 the install worked perfectly. I then install SQL 2005 SP2 and was prompted for the SQL 2005 Provisioning Tool for Vista users at the end. I thought, this particular customer are all using Windows XP and besides that, they will not be accessing SQL directly, on through CRM, so I opted out of that.
So, when I tried to log into SQL Management Studio to verify everything was A-OK, I was surprised to see that I was not allowed to login. I was logged in with a domain administrator, and I cannot log in? I couldn't even use 'sa' because I installed windows authenticated mode as opposed to mixed.
After some digging around, I realized that Windows 2008, is, in its own way "Vista Server" so by not running the provisioning tool, I ended up locking myself out of SQL Server. Running that that tool got me in, hopefully this note will save some folks a lot of headaches!
Asides from a few minor things here and there, this install works really well and usually there isn't a problem.
Today I installed on Windows 2008, and after a few setup things as outlined in http://support.microsoft.com/kb/920201 the install worked perfectly. I then install SQL 2005 SP2 and was prompted for the SQL 2005 Provisioning Tool for Vista users at the end. I thought, this particular customer are all using Windows XP and besides that, they will not be accessing SQL directly, on through CRM, so I opted out of that.
So, when I tried to log into SQL Management Studio to verify everything was A-OK, I was surprised to see that I was not allowed to login. I was logged in with a domain administrator, and I cannot log in? I couldn't even use 'sa' because I installed windows authenticated mode as opposed to mixed.
After some digging around, I realized that Windows 2008, is, in its own way "Vista Server" so by not running the provisioning tool, I ended up locking myself out of SQL Server. Running that that tool got me in, hopefully this note will save some folks a lot of headaches!
Wednesday, August 6, 2008
CRM Consultants Toolbox - Virtual Machines
Virtual machines are becoming more and more popular these days. I first ran into this about 8 years ago when a client suggested that we do a Great Plains test upgrade on a vmware machine. I was really skeptical when they explained the concept. I figured with SQL 7, windows NT server running in a machine that was already running windows NT workstation have disaster written all over it. They client had a dual processor machine with a full gig of RAM (that was a lot in those days) and the sample upgrade worked great.
Today I use VMWare Server for development and Virtual PC for demos. I use VPC because everything Microsoft puts out in terms of demo and training images is on VPC and it works great. VMWare server is free and has a good console and from my perspective, and it allows me to have a bunch of test machines running all the time.
A few of my customers are also using VMWare ESX to consolidate servers. Microsoft now supports virtual environments for Microsoft Dynamics CRM.
I haven't yet used Microsoft Virtual Server, so I cannot really comment at this point.
Another thing that I have started to use Virtual machines for is to setup a dedicated client for VPN setups.
Like most consultants, I have more than one customer (which may come as a dissappointment to some of my customers!) and because I work both locally and on international projects, I have a number of remote systems that I need to connect to. If you have ever attempted to install more than one VPN client on a single machine, most time you will realize that they do not play nice together. For example, installing a Cisco VPN on a machine that already has a Stonegate VPN installed generally will cause chaos for one or both VPN setups. Usually this is not an issue for most people as they only need the one to connect to the office.
However, I ran into this the other day and had to spend time uninstalling and reinstalling VPN setups, which takes time and also sometimes requires administrators to generate new keys, etc.
To get around this, I used VPC and setup a clean version of Windows XP for each VPN config I need. This will allow me to have multiple VPN setups without having to conflict with each other. You can even take this a step further and add these VMs to the customers domain for support and troubleshooting, without having to switch domains and screwing up your own setup.
Today I use VMWare Server for development and Virtual PC for demos. I use VPC because everything Microsoft puts out in terms of demo and training images is on VPC and it works great. VMWare server is free and has a good console and from my perspective, and it allows me to have a bunch of test machines running all the time.
A few of my customers are also using VMWare ESX to consolidate servers. Microsoft now supports virtual environments for Microsoft Dynamics CRM.
I haven't yet used Microsoft Virtual Server, so I cannot really comment at this point.
Another thing that I have started to use Virtual machines for is to setup a dedicated client for VPN setups.
Like most consultants, I have more than one customer (which may come as a dissappointment to some of my customers!) and because I work both locally and on international projects, I have a number of remote systems that I need to connect to. If you have ever attempted to install more than one VPN client on a single machine, most time you will realize that they do not play nice together. For example, installing a Cisco VPN on a machine that already has a Stonegate VPN installed generally will cause chaos for one or both VPN setups. Usually this is not an issue for most people as they only need the one to connect to the office.
However, I ran into this the other day and had to spend time uninstalling and reinstalling VPN setups, which takes time and also sometimes requires administrators to generate new keys, etc.
To get around this, I used VPC and setup a clean version of Windows XP for each VPN config I need. This will allow me to have multiple VPN setups without having to conflict with each other. You can even take this a step further and add these VMs to the customers domain for support and troubleshooting, without having to switch domains and screwing up your own setup.
Thursday, July 31, 2008
Inactive Contacts on Marketing Lists
I learned something new today about inactive contacts and marketing lists.
When implementing CRM, I generally setup security such that most general users cannot fully delete records but rather deactivate them. This protects from the accidental deletion, not that any of us have ever done that before... :)
Anyways, A client called up and said that they sent out their annual report, and used CRM marketing lists to generate the mailing labels. They sent out the Annual Report and got a few bounce backs from contacts who were retired or had moved on to other organizations. When they went to CRM to de-activate these contacts, they noticed that they had already been deactived some time ago!
Upon further investigation, these inactive contacts were still members of the various lists, including this particular customer's Annual Report marketing list.
I suppose this is by design in case you want to market to lost customers, or lost leads, etc. However maybe their should be an option in the system settings to set whether a marketing list can have inactive members.
Anyways, after going through the process of "managing marketing list" members we were able to clean up the list. However, after years of working with CRM, there are still things that you discover every day!
When implementing CRM, I generally setup security such that most general users cannot fully delete records but rather deactivate them. This protects from the accidental deletion, not that any of us have ever done that before... :)
Anyways, A client called up and said that they sent out their annual report, and used CRM marketing lists to generate the mailing labels. They sent out the Annual Report and got a few bounce backs from contacts who were retired or had moved on to other organizations. When they went to CRM to de-activate these contacts, they noticed that they had already been deactived some time ago!
Upon further investigation, these inactive contacts were still members of the various lists, including this particular customer's Annual Report marketing list.
I suppose this is by design in case you want to market to lost customers, or lost leads, etc. However maybe their should be an option in the system settings to set whether a marketing list can have inactive members.
Anyways, after going through the process of "managing marketing list" members we were able to clean up the list. However, after years of working with CRM, there are still things that you discover every day!
Tuesday, July 29, 2008
Changing the CRM Organization Name
A customer pointed out today that I made a slight error when entering thier company name while setting up Dynamics CRM 4.0 and asked if it could be changed. I thought that this would be a situation where I would have to go in and make changes to the database directly (which falls under "unsupported" territory).
However, after some investigation, I found that actually was an easy process.
These steps are handy for situations where you may have misspelled the organization name or if a company name changes.
1) Ask users to be out of CRM or do this during a maintenance window
2) Make a SQL backup (always good advice)
3) On the CRM server, launch deployment manager
4) Navigate to Deployment Manager -> Organizations
5) Highlight the organization, right click and choose disable (if you are using enterprise version there may be more than one organization)
6) Once disabled, you will be able to edit the friendly name, you cannot change the database name.
7) Save and apply changes, after a few minutes the name will be changed
8) Enable the organization!
That is all there is to it. Shouldn't take more than 10 minutes.
And again, my apologies to the good folks using CRM at Mother Tuckers Kitchen. I promise to fix the issue on the my keyboard with "T"'s mixing up with the "F"'s
However, after some investigation, I found that actually was an easy process.
These steps are handy for situations where you may have misspelled the organization name or if a company name changes.
1) Ask users to be out of CRM or do this during a maintenance window
2) Make a SQL backup (always good advice)
3) On the CRM server, launch deployment manager
4) Navigate to Deployment Manager -> Organizations
5) Highlight the organization, right click and choose disable (if you are using enterprise version there may be more than one organization)
6) Once disabled, you will be able to edit the friendly name, you cannot change the database name.
7) Save and apply changes, after a few minutes the name will be changed
8) Enable the organization!
That is all there is to it. Shouldn't take more than 10 minutes.
And again, my apologies to the good folks using CRM at Mother Tuckers Kitchen. I promise to fix the issue on the my keyboard with "T"'s mixing up with the "F"'s
Subscribe to:
Comments (Atom)