Dynamics CRM Technical

Microsoft strengthens position in Gartners Magic Quadrant for Sales Automation

According to Gartner, Microsoft is “Moving on Up to the Top” of their Magic Quadrant for Sales Force Automation.

In their recent article they speak of how Microsoft has joined the other 800 pound Gorillas in the sales automation space.  See chart:

Figure 1. Magic Quadrant for Sales Force Automation

Source: Gartner (July 2010)
To be included in this Magic Quadrant, a vendor must demonstrate that it:
  • Has at least 100 customers that have deployed opportunity management systems in its last two versions of the software
  • Has at least five new named customers that have actively deployed opportunity management functionality during the past 12 months
  • Is actively selling or marketing to multiple industries and geographies an SFA solution with opportunity management as the primary application
  • Has proved that it can be deployed in sales organizations of more than 100 user

A successful vendor selection strategy will assess providers that support data requirements, access modes and functionality for each sales role. The sales processes will dictate the functional components that best satisfy organizational and individual sales requirements.

  • Consultative solution selling will require rich-content process support to tie proposals, bids, configurations and quotes together with authorizations and order-capture systems.

Market Definition/Description

SFA applications enable B2B organizations to automate sales activities, processes and administrative responsibilities for sales professionals. Core functionalities include account, contact and opportunity management. Additional add-on capabilities focus on improving the sales effectiveness of salespeople, such as sales configuration, sales coaching, guided selling, proposal generation and content management; and sales performance management support, including incentive compensation, quota and territory management.

http://www.gartner.com/technology/media-products/reprints/microsoft/vol10/article18/article18.html

“Cloud CRM for Less” Microsoft Pays you to Switch to Dynamics CRM 2011

Are you currently using Salesforce.com or Oracle and paying more than $34/user per month? Switch to the award-winning Microsoft Dynamics CRM Online for $34/month and save up to 50% or more – our customers are!  

Microsoft just released its newest version of Dynamics CRM 2011 and we are so excited about it capabilities that we are paying customers of some our competitors $200 for each seat they switch under the exciting new promotion, “Cloud CRM for Less”. 

Microsoft Dynamics CRM has garnered recognition as a Leader from two leading independent research firms, Gartner Inc. and Forrester Research Inc. Forrester acknowledged Microsoft Dynamics CRM for offering a flexible customer service solution, earning a Leader position in The Forrester Wave™: CRM Suites Customer Service Solutions, Q3, 2010 (July 2010) report, while Gartner placed it as a Leader in the Magic Quadrant for Sales Force Automation (July 2010) report. (Click on the links above to review the reports)

The best part of this offer is that we are giving qualified customers cash, so you can decide what to do with the money.  

Please call us to speak further about this Microsoft Dynamics CRM 2011!

Jodi Herman – 949-579-9522 ext 105

or

Scott Duke -  959-679-6795

DM Convergence 2010 has finally arrived

The day you all have been waiting for, DM Convergence 2010 is finally here. Tomorrow Wednesday Oct 13th from 8-4:30 at the local Microsoft Office. A day filled with fun learning activities, interacting with the people that care deeply about your success and an opportunity for you to hear about “Whats Next with Technology and Social Networking” by GoldenComms CEO, Jason Lavin and also food, we wouldn’t want you to go hungry so we will feed you as well.

If you are like me and forget to RSVP to events,  it is not to late to join this once a year “Hyped Up” event with one of Microsoft’s Premier Partners in the Dynamics GP and CRM space. Please find the final invitation below, you can just show up, the door will be open with smiling faces to greet you……

 

DM CONVERGENCE 2010“Growing Together”How is your organization leading the way with Microsoft Business
Management Solutions tools Dynamics GP and CRM.?  Are you adjusting your strategies, improving your processes, and taking advantage of what these solutions have to offer? At DM CONVERGENCE 2010 you will learn how to maximize these tools now and in the future.Gain a stronger sense of community Today, Tomorrow, Together
interacting with industry leaders.Event agenda:
 ü Keynote speaker: Jason Lavin

ü Educational Break Out Sessions

ü Network with Other Professionals

ü Breakfast and Lunch will be Provided

ü Meet the Team

ü Swag and Cool Giveaways

We look forward to seeing you at DM CONVERGENCE 2010!

 

 
Date:   October 13, 2010
Arrival:   8:00 am
Time:   9:00 am – 4:00 pm
Location:   Microsoft (Irvine Offices)
  3 Park Plaza Suite 1600
  Irvine, CA 92614
Cost:   $49.00 per seat 
 
Dynamic Methods | 9070 Irvine Center Drive, Suite 260 | Irvine, CA 92618 | 949-579-9522

Scribe 7.0 Released!

Scribe 7.0 has release today, check out the details here from Scribe’s blog/website. Some of the highlights for the data migration/integration application are:

1. Multi-Target solutions. Integrations/Imports can now have steps that point to different targets. If your ERP system needs to pass along inventory data to all of your other systems, you can now do it in one integration file, rather than one file for each system to push to.
2. Take advantage of outside webservices during the integration to improve data integrity and business rules.
3. DBLookups no longer limited to Source, Target, or Internal. They can now be run against outside systems to check, validate, etc against that system’s date for the integration.

Here’s a link to Scribe’s whitepaper of listed enhancements for their 7.0 product.

Download here.

Good stuff from Scribe, check it out.

David Fronk
Dynamic Methods Inc.

Managing the MSCRM Asynchronous Service

Workflows are a wonderful thing.  They make it so that power users, non-developers, can get a lot done with Microsoft CRM without having to know a lick of code and can get a lot of business processes built into their company’s application relatively easy.

I have, however, seen some administrators and power users get a little liberal in how they use and implement their workflows without thinking about the repercussions to their system as a whole.  I’ve seen servers where the Asynchronous Service (CRMAsyncService.exe)was using on average 90-95% of the CPU constantly.

Any guess as to the cause?  Workflows.  But not just any workflows, workflows with WAIT’s in them.  Workflows that fire from their given trigger, run their course and then complete are great and just fine.  They don’t take up much memory or CPU usage because they run for such a short time.  It’s the WAIT states that eat up all your memory and CPU usage on your server.

WAIT states have their place and sometimes cannot be avoided.  But a system administrator should look to have as few WAIT’s as possible in his/her system.

Here are some good alternatives for WAIT’s:

1. Use the UPDATE trigger on another workflow to check for a given attribute and condition and fire the WAIT logic when that criteria is met.

2. Don’t wait to create activities, create them immediately and just set the dates on the activity accordingly.  If you are waiting X number of days to send an email as a follow up, you could just create the email and have it sit in a users “To Do” list and when that user looks at his/her list for the day, would see that the email needs to be sent out.  Otherwise, you could even create the emails and write a nightly process (or use a third party tool) to check the system for emails that haven’t been sent and have the tool send them after hours.

3. Change to batch processes.  Using a custom tool or third party product, have the tool check the system at intervals to escalate incidents (cases), send emails, remind users about opportunities or past due activities, etc.  Sure it’s a little extra work but if you have a lot of things that need to be waited on, then it’ll be worth the effort.

Protect yourself, your server and your company from WAIT’s in workflows by just avoiding them.  Keep your eye on that Asynchronous Process!

David Fronk
Dynamic Methods Inc.

Populate CRM Fields from Parent Window

There are a number of people who have posted about copying a record via JScript button in CRM, and this post isn’t far off from that concept. My coworker found a great way to implement the concept of opening a record and populating fields on the newly opened window, based on data from the originating window. And that is quickly opening an activity.

This customization cuts down the number of clicks to open a new Activity from 4, down to 1. 4 being click on the record you wish to create an activity for, click “Activities”, click “New”, click the activity type, click Ok. You can double click on the activity type to open it, but that’s still 4 clicks technically. With this customization, users just click the button of the activity type. Done.

In a piece of software where users already feel like there are a lot of clicks and windows, this helps significantly.

Ok, now the good part. How do we do it?

Add a button to the entity you want to apply this customization to within the ISV.config file (in this example I use the contact):

&ltEntity name=”contact” >
&ltToolBar ValidForCreate=”0″ ValidForUpdate=”1″>
&ltButton Icon=”/_imgs/ico_16_142.gif”
JavaScript=”window.open(‘http://crmserver/CompanyName/activities/appointment/edit.aspx?’);” PassParams=”1″
WinParams=”" WinMode=”0″>
&ltTitles>
&ltTitle LCID=”1033″ Text=”New Activity” />
</Titles>
&ltToolTips>
&ltToolTip LCID=”1033″ Text=”Create new appointment activity” />
</ToolTips>
</Button>
</ToolBar>
</Entity>

Now, on the OnLoad script of the given activity (in this case the Appointment), add the following code:

//appointment onload script
if (window.opener.crmForm) {
var rgid = window.opener.crmForm.ObjectId;
var rgtype = window.opener.crmForm.ObjectTypeCode;
}
if (rgtype == 1) {
var rgname = window.opener.crmForm.all.name.DataValue;
}
if (rgtype == 2) {
var rgname = window.opener.crmForm.all.fullname.DataValue;
}

if (rgid != null) {
var oItems = new Array();
oItems[0] = new LookupControlItem(rgid, rgtype, rgname);

crmForm.all.regardingobjectid.DataValue = oItems;
}

Done. Not too difficult and end users will love it.

David Fronk
Dynamic Methods Inc.

Integrations: In-line versus Queue/Batch Based

I love web services. They make it so that one system can send and receive data from some completely different system from anywhere over the web. Data gets updated, end users can see the latest and greatest data essentially instantaneously. With CRM plugins you can have in-line integrations that just push data from CRM to whatever system you want on a save, reassignment, deletion, etc. Or, you could pull data from another system whenever a page loaded, all through plugins. That’s awesome.

Queue, or batch, integrations take note of everything that changes and then runs a process at a given time interval and pushes all of the data that has been queued up into the other system. Web services can be used to push/pull data in this data from the queue in batch fashion and keep systems in sync. But typically when these batches are run they put a load on the server and could be rather resource intensive. And data isn’t updated instaneously, it gets updated shortly after the predetermined time interval. If this is nightly that might be too stale for some people. Depending on the data though, that may be more than sufficient.

However, when those web services don’t work (when either server goes down, gets overloaded, etc) it’s REALLY bad. Things either get out of sync, or else your integration just got a whole new level of complexity; waiting, or holding the data, until the other system comes back online. In the debate of in-line versus queue based integrations, queue based gets a point here. If the server is down, the queue based system gracefully errors, noting that the remote server is down, and the next time it runs it picks up where it left off and tries again. In-line dies and doesn’t get the data transimitted across. The best it can do is error and put its data into a record to get queued up and processed at a later time…via a queue based integration.

I have recently worked with a system that went down at least twice a day. Originally it was thought that an in-line integration would work just fine. But since the receiving server has been down I now have to include or move to a queue based integration in case the in-line goes down.

Each has their use, and I want the in-line to work because in my mind it’s the best. But in reality, the queue based, though “slower”, is the most reliable.

If any one has any thoughts or input, we’d love to hear it.

David Fronk
Dynamic Methods Inc.

Pictures inside CRM Emails

One of my biggest issues with CRM emails, versus an Outlook email, is how difficult it can be to tailor up your emails that you want to send out. Getting a good looking email sent out of CRM is about as complex as writing a static web page. And since CRM emails are rendered in HTML, that’s actually exactly what it takes to get a good looking email out.

Now, not everyone wants to send out an amazing document all the time, sometimes a picture or logo at the end of the email would suffice. Theoretically this would be simple, only CRM doesn’t let you copy and paste images from your local machine into an email.

But there is a solution, it doesn’t require too much effort, but it does require whatever image you want to be sent in your email to be public available to anyone. Just like a webpage cannot show an image from your local machine (unless it’s hosted there) a CRM email cannot show an image that you copy from your local machine into the body of the email.

Here’s how to work around this. You need to use pictures/logos that are publicly available. For instance, if you want to put your company logo in an email, go to your company web page, right click on the company logo and choose to copy the image. Then go to your CRM email and paste it in. The image will appear and when you send it out the image will carry through. The reason it will go through is because the reference you copy and paste points to a URL that all computers can reference and see.

If you can have a public folder that you store you images in and that can be accessed via a URL path from anywhere, then you are all set to put whatever images you want into your CRM emails. All this would take would be to add a folder to where your company website resides (maybe call it “CRMPictures”) then you can manually browse to that location and copy and paste whatever pictures you want.

A little cludge of a work around but it works and it could give you a centralized place to place pictures/images to be used for your CRM Marketing needs.

David Fronk
Dynamic Methods Inc.

Teams in CRM

I’ve been asked a handful of times what Teams are in CRM and when it would be appropriate to use them. I couldn’t find all that much documentation around when a Team should be used, just how to set up and reference Teams. So, this is my take on the usefulness of Teams.

According to the CRM Help files, teams are “a group of users who share and collaborate on business records. A team can consist of members who all report to one business unit or members who report to different business units”.

In essence teams are an easy way to share records. And sharing within CRM are ways to make exceptions to security roles. Security roles limit what users can and cannot do within or outside of their business unit. However, sharing creates exceptions by allowing specific privileges to specific records.

As an example, two sales reps cannot see each other’s contacts within CRM. But for a joint deal that they are working on one rep may need to see some of the other rep’s contacts in order help get the deal closed. The necessary records are then shared and the deal can advance more efficiently as both reps can now use the necessary data to get their jobs done.

Teams are groups of users that can have records shared with them, to facilitate sharing records in mass with groups of people. That is the primary role of Teams within CRM. Please note that Teams cannot be deleted in CRM (why I don’t know, that’s just what they chose to do when they programed the system) and in order to “deactivate” them you need only to remove all of the members from the Team.

Teams may also be used when setting up “Resources” for a given “Service”, within the Scheduling Calendar. There may be a repair team that makes up people qualified to repair bikes. By adding users to that Team, the Users are seen as available Resources through the Team to perform a given Service. Depending on availability and other Resources, the Scheduling Calendar can then find available times for repairs to be made by certain individuals. A very powerful tool, but also a lot of set up and a lot of linking that has to be understood to make it all work.

David Fronk
Dynamic Methods Inc.

Alternative Option to Disabled Field

November 23rd, 2009

Disabling fields has been a great way to lock down information within MSCRM. The one issue that I run into with it is that users comment that a disabled field is so “washed out” that it becomes difficult to read.

Another option to use instead of the out of the box disabled, is to make the field read only. It’s a very simple script:

crmForm.all.fieldname.readOnly = true;

It leaves the field looking like other fields so that it’s not washed out but it cannot be edited from the form. This customization is technically unsupported, but it has been around since the MSCRM 3.0 days and so far Microsoft hasn’t locked this script down. We’ll find out next version whether or not the script gets carried over or not. But worst case scenario for your scripts would be that they need to be modified to use the disabled option rather than the read only option.

David Fronk
Dynamic Methods Inc.