Quantcast
Channel: Sonoma Partners Microsoft Dynamics CRM Blog
Viewing all 206 articles
Browse latest View live

CRM Online Spring Release ‘15 – Navigation Enhancements

$
0
0

Microsoft recently announced the CRM Online Spring Release ‘15 and subsequently lifted the NDA around the release so we can now blog about all the great new features coming!

This post will cover the feature we’re most excited for in the Spring Release – Navigation enhancements.

New Navigation Bar Shelf

One of the biggest complaints about CRM 2013 / 2015 is that the main navigation was much worse than its predecessors.  Users weren’t able to see many entries at once which required them to scroll horizontally for a long time to find the area of the site map they’re trying to navigate to.  While this was a pain for all users, it was even more painful for those users who had hundreds of sitemap entries, and trust us, we have customers who fall in that camp. 

Countless partners and customers started creating their own custom solutions to be able to see more entries at once.  Here at Sonoma Partners, we just released a solution of our own titled QuickNav that solves this very problem.  It can be downloaded here:  https://www.sonomapartners.com/Downloads/QuickNav

If you’re familiar with the navigation in Dynamics Marketing then you will recognize the new navigation bar that is coming with the Spring Release ‘15. We’re very excited for the new navigation bar as it now provides the ability to see a lot more sub areas on a single screen instead of having to scroll for days if your organization has a lot of entities. Now when you hover over a main tile like Sales, a new shelf will drop down to display a lot more sub sections and links as shown below.

Navigation

MRU

Microsoft is once again listening to the community and adding back features that were in past CRM’s but removed from 2013 (similar to Advanced Find in the global navigation bar). Now Microsoft is adding back the MRU (most recently used) functionality.  An MRU icon was added to the navigation bar to the left of the Quick Create icon that will show you a list of your most recent views and recent records as shown below.

MRU

Pinning

Once inside the MRU pane, you can hover over a recent record and click the pin icon to pin that record to the top of the list so it is always visible and easily accessible.

pinning

Quick Create

The Quick Create pane was also updated to be a consistent look and feel. It now has the same pane as the new navigation and lists the entities in a vertical manner to be able to show more entities on a single screen without having to scroll horizontally.

quick create

Form Navigation

A new icon was added to the right of the record name which displays a list of tabs on the form. Clicking a tab name will navigate directly to that tab on the form. This makes it easier to navigate taller forms.  It’s also a great way to quickly navigate back to a tab of the main form if you’re currently viewing a related Associated Grid of the main record.  Previously in 2013 and 2015, once you navigate to a related Associated Grid, you’d have to go back to the top tab of the form, then scroll down to the tab you’re interested in.

form navigation

As stated earlier, we are super excited for these enhancements as they have been highly requested for awhile! The one downside is you can only get your hands on it this Spring if you are on CRM Online.  On-premise customers will unfortunately have to wait a bit longer until Fall 2015.


CRM Online Spring 2015 – USD and Parature KM

$
0
0

Microsoft recently announced the CRM Online Spring Release ‘15 and subsequently lifted the NDA around the release and therefore it’s time to start posting about all the great new features coming!

This post will cover the changes coming to Unified Service Desk around Parature Knowledge Management.

USD and Parature KM

First off are the changes that are coming to USD regarding Parature Knowledge Management. 

Users can now perform actions / automations around the Knowledge Base such as Copy Link, Send Email, Link/Unlink KB Article, Browse web pages, etc. within USD sessions.

Also, the KB Search Panel is now independent, and not tied to an entity form.  Previously you could only perform a KB search when on a specific record / form.  The KB Search Panel can be displayed in different layouts / areas of USD (right panel, pop out, etc.).  This provides a much richer experience with multiple applications and session management for the USD Agents.

image

USD Technical Updates

There were also a bunch of technical updates applied to USD and what actions/controls are available for use. 

  • A new type of Hosted Control was added for the KM integration (KM Control)
    • Inbuilt Actions:  Search, SetArticleContext, Associate, Disassociate, SetSearchProps
    • Associated Events:  ResultOpen, SelectionChange, SearchComplete
  • Navigate() action now supports Post-Method for Web applications
  • New Actions:
    • SetVisualProperty (automate visual properties such as height, width, color, and background)
    • CopytoClipboard (allow copy/append text data to the system clipboard)
  • New Panel RightPopUpPanel gives an option to display article previews

USD and Parature KM Setup and Install

To install and setup the new functionality for USD and Parature KM, the Package Deployer can be used to deploy all the components needed for the core User Interface Integration (UII) and USD solutions along with sample data to CRM.

image

Then when in CRM, navigate to Settings –> Service Management –> Setup Knowledge Base Management to setup the record types you want KB management on.  You can also configure your Parature connection details from this location as well.

image

Finally, you need to configure your Parature KM Hosted Control and you should be set to go!

image

CRM Online Spring Release ‘15 - Theming

$
0
0

Theming is a brand new feature coming in the Spring Release ‘15 which has been requested by many organizations for many years now. Themes can be created to change the colors of certain UI elements as well as add a logo to the navigation bar. Multiple themes can be created which is managed through a view in Settings –> Customizations as shown below.

theme grid

When opening a theme record, you will see a variety of options for UI elements as well as the navigation logo and colors. The logo is a Lookup to a web resource image and can have a custom tooltip for when a user hovers over the logo.

Theme form

Below is a custom theme in action with a custom Excel logo. As you can see the navigation bar, grid row selection and even the Command Bar buttons can all be customized.

ribbon theme

Here is what a record form can look like with a custom theme. Header fields and Business Process Flow links can be customized as well.

Process Flow theme

Themes can be built brand new or there is an ability to clone an existing theme and make changes. They can also be previewed before publishing to all users. Unfortunately themes are not solution aware at this time but can be exported and imported into a new environment using native record export / import.

Besides branding your CRM system, theming can also come in handy when trying to distinguish your many different environments from DEV to QA to PROD by creating unique themes for each environment.

Happy Theming!

CRM Online Spring 2015 – Office Groups Integration

$
0
0

Microsoft recently announced the CRM Online Spring Release ‘15 and subsequently lifted the NDA around the release and therefore it’s time to start posting about all the great new features coming!

This post will cover the new Office Groups Integration feature that Microsoft is rolling out.

Office Groups

First off let’s discuss what Office Groups are.   Office Groups are a new space to collaborate with a group of O365 users.  These don’t have to be CRM Users, but instead just users of O365.

With Office Groups, you easily indicate what content from different Office products should be shared with other O365 users.  This can be content from Outlook, OneNote, OneDrive. 

To be more specific, the following content can be shared from these Office products:

  • Outlook:
    • Calendar (Outlook Appointments)
    • Conversations (Outlook Emails)
  • OneNote:  Notebooks
  • OneDrive:  Documents

CRM Integration

Now that we know the basics of what Office Groups are, how does it integrate with Dynamics CRM? 

For each CRM record identified to have an Office Group created, an Office Group will be created behind the scenes for that record.  The CRM Record Name will become the Office Group Name.

Then, on the CRM record form itself, there will be a tab “Items Shared with Group”

image

This tab will allow you to collaborate with non-CRM users who are O365 users.  On this tab you’ll be able to:

  • See across the various office products (Outlook, OneNote, etc.) items shared to the specific office group
  • See Yammer like conversations for emails
  • For Opps Only, adding people to the Sales Team will automatically add the person to the O365 group

Setup

Currently this is a solution that’s available on the O365 Admin portal. In order to take advantage of this functionality, you’ll need to download and import this solution to your CRM organization.

Once the solution is imported, it’s as simple as typing in the entity name that you want to enable Office Groups for, and then also indicate if you want an Office Group automatically created for new records that are created of that entity type.

A new Security Role is provided in the solution that you’ll have to assign out to your users to take part in this new functionality.  This role provides access to create/view the Office Group entities that are provided in the solution.

image

vNext

Currently this functionality is only available on CRM Online and Office Online.  I can see down the road this being applied to CRM On Prem, and Office On Prem so that users could have a hybrid of CRM and Office solutions and still take advantage of this functionality.

Also, the functionality of Office Group emails on the record form are very similar to Yammer.  There may be an opportunity here for the Yammer and Office Group teams to talk and consolidate products.

Finally, the functionality to have people automatically added to the O365 group from the Opportunity Sales Team, would be beneficial to have extended to other entities and not just Opportunities

So when would you use this new Office Group functionality?  When you need widespread collaboration for people that are internal that don’t have access to CRM with those that do have access to CRM

CRM Online Spring 2015 – OneNote Integration

$
0
0

Microsoft recently announced the CRM Online Spring Release ‘15 and subsequently lifted the NDA around the release and therefore it’s time to start posting about all the great new features coming!

This post will cover the new OneNote Integration feature that Microsoft is rolling out.

How it Works

Now with the new release, there will be a new OneNote tab that’s part of the activity Social Pane (posts / activities / notes / OneNote).  This functionality isn’t limited to only the web, but is also available on the Phone and Tablet clients as well.

SNAGHTML13848c45 

A few key features and benefits of the OneNote integrate with CRM are:

  • You can take photos, record voice, manage to-dos, preserve HTML & hyperlinks, use handwriting, have tables, embedded Excel docs, etc.
  • Uses the native CRM Security Model for access
  • Allows version history
  • When performing a search, it actually searches the content of the note, and not just the title like traditional notes
  • Stores notes in SharePoint not in CRM Database
  • Each record in CRM has a dedicated notebook in SharePoint
  • SharePoint Notebook name = CRM Record name
  • Each notebook can have multiple sections with multiple pages
  • All users share the same notebook
  • Web Client: opens OneNote Online in a separate tab
  • Tablet Client in Windows: opens OneNote app in the side-by-side experience with CRM
  • Phone Client: opens OneNote App
  • Notebook can be auto created when OneNote tab clicked (in the Web Client only)
  • Navigate to OneNote to add new notes

Best Practices

There are some best practices that you should be aware of if you’re interested in using the OneNote integration with CRM.

  • Pin notes on your device.
  • Use side-by-side experience for windows
  • Take notes quickly using Quick Notes and move to page later
  • Close notebook when not using it to save OneNote performance and search results

Setup and Requirements

The OneNote integration currently is only available for CRM Online.  Also, you must have the SharePoint integration enabled as the OneNote notebooks are stored in SharePoint.

You need to enable the SharePoint integration (Document Management) for the specific entities that you’re interested in storing OneNote documents for.  Once you enable this on the entity definition, you then have to go into the OneNote Integration settings area, and enable OneNote for those entities.  The list of entities that appear in the OneNote Integration settings are those entities which have SharePoint enabled.

Note that the OneNote integration can also be enabled from the entity itself once Document Management is enabled.  So you can go to a global area to see all the entities where OneNote is enabled, or you can do it from a single specific entity.

image

SNAGHTML1383cc9f

CRM Online Spring 2015 – Immersive Excel

$
0
0

Microsoft recently announced the CRM Online Spring Release ‘15 and subsequently lifted the NDA around the release and therefore it’s time to start posting about all the great new features coming!

This post will cover the new Immersive Excel feature that Microsoft is rolling out.

What is it?

Immersive Excel is Microsoft’s new way to have a richer Microsoft Excel experience directly in Dynamics CRM.  You’re no longer required to export your data to Excel to be able to perform more complex analysis on it (though this functionality still remains).  You can now perform this analysis directly within Dynamics CRM.

image

What can it do?:

So what can the new Immersive Excel feature within Dynamics CRM do?  How close to actual Excel do I get when I use it?  Well the answer is that Immersive Excel is actually using Excel Online from within the CRM browser window.  Therefore anything you can do with Excel Online,  you can do with Immersive Excel.

This includes the ability to work with Excel Formulas directly from your list of CRM data, without leaving CRM.  You can calculate what the Commission you could make for your Opportunities, by multiplying the revenue by 10%, if the probability is at least 90%.

 image image  

You can make updates to records which honor field validation (e.g., you cannot enter a string into a date field, you can only select from the available option set values, min and max values, etc.), and then click on Save Changes to CRM.  Or you can simply return back to the CRM list without saving your changes.  Immersive Excel allows you to change multiple records quickly acting like an editable grid.  However, you must click the button to save the changes before the records are updated.

You currently cannot do perform a Save As to save an Excel Doc (due to technical limitations) but you can copy/paste from the embedded Immersive Excel page to another Excel document. Hopefully this will be fixed in a future release.

Requirements

In order to make use of this new functionality, the following requirements must be met:

  • CRM Online (currently we are unaware of any plans to bring this to OnPrem)
  • Separate O365 License required (Online version of Office)
  • Export to Excel Security Role Privilege
  • Available in the Web Client only (not available for the phone, tablet, or Outlook clients yet)

Miscellaneous and Summary:

Immersive Excel is a neat new tool that will provide CRM users with an additional option to perform some more ad-hoc quick queries, reports, dashboards to analyze data on the fly.

Note that this functionality is recommended purely for “on the fly” analytics, and not for someone to save the Excel file locally.  Use Export to Excel for that functionality.

After 5 minutes, the file is regenerated per view per user. There is an indicator in the top right of the page shows when the file was generated.  Take note of this time as Microsoft doesn’t want to bombard the servers with constant regeneration, but they also don’t want the data to become stale.  Therefore if you’re using this functionality to make changes to records, remember to save early and often to make sure none of your changes are lost.

image

Also note that the import of the data from Excel Online will take time.  A data import async job is kicked off to perform this functionality that you can monitor to see when it completes.

I hope you’re as excited about this functionality as we are, and hope you’re able to get your hands on it soon!

CRM Online Spring 2015 – Folder Level Tracking

$
0
0

Microsoft recently announced the General Availability of the CRM Online Spring Release ‘15 and we wanted to share yet another one of the new features that has been rolled out to CRM Online.  This post will cover the new Folder Level Tracking feature that CRM Online users should start seeing, and CRM On Prem users should hopefully see in the near future.

What is it?

Folder Level Tracking is another way for users to track emails in Dynamics CRM from Exchange.  With Folder Level Tracking, you don’t need to have the CRM Outlook Client installed.  This means that Folder Level Tracking will work with native mobile apps.  For example, if you use a Windows Phone, you can move emails from Exchange to CRM by directly using your Windows phone and we’ll describe how below.

How does it work?  Well there are two main scenarios that Folder Level Tracking supports:

  • Quick Track:
    • This is the scenario where you want emails to quickly be tracked in CRM without setting a regarding.
    • This is equivalent of clicking the “Track” button alone in the current CRM Outlook Client
    • Users can move emails to a specific folder (e.g., “Track in CRM”) and all emails moved to that folder will be tracked in CRM automatically
  • Set Regarding:
    • This scenario is where your emails will be tracked in CRM, and be regarding a specific record in CRM
    • This is equivalent of clicking the “Set Regarding” button in the current CRM Outlook Client

How do you set it up?

Folder Level Tracking has a few requirements for it to work.  First there are system level settings that need to be enabled.

  • First off, Server Side Synchronization needs to be enabled and configured within CRM System Settings
  • Also, Folder Level Tracking needs to be enabled within CRM System Settings
  • The User’s Mailbox in CRM also needs to be setup and enabled

image

Now the users themselves also have to go within their Personal Options –> Emails –> Configure Folder Tracking Rules.  From here they can select the Exchange Folder, and then the CRM Record (optional) they want to track the emails against. 

imageimage

As you can see from above and as stated earlier, these are user specific configuration rules so each user can have their own synchronization setup.  That’s it!  Pretty simple right?

 

What does this mean for me:

This is a new powerful option to track emails.  The beauty of this is that you don’t need to have a separate client installed, but it’ll work with any native client you’ve been using for emails.  This is available for ALL mail apps on ALL devices.

There are a few tips we recommend when using this option.

  • You can setup Exchange rules to move emails to specific folders (including the generic “Track in CRM”) to have the emails automatically track in CRM based on your Folder Level Tracking configuration rules
  • As stated above, you can move emails using your native mail clients (Windows Phone, iPhone, iPad, etc.) and have the Folder Level Tracking rules apply and create the email in CRM

A few notes that you should be aware of:

  • The mapping between the Exchange Folder and CRM Record are using their respective ID’s, so you can change the name of the Folder or Record, and the tracking will still work.
  • If an email is already tracked, and you remove it from the Exchange folder, it WILL NOT be removed from CRM.  It will remain to be tracked.
  • Removing a rule WILL NOT remove / delete the emails from CRM that were tracked because of it
  • There is SDK support to manage the configuration rules (create, retrieve, modify)
  • You can always specify a regarding for your rule at a later time if you don’t set it up upon create
  • The Folder list in the Rule UI is updated periodically when the mailbox is synced via Server Side Sync and the last sync displayed on the mapping dialog

I hope you’re as excited for this new feature as I am.  I’ve been a part of many mobile projects where the CRM Outlook Client isn’t installed (can’t be installed), yet the client wants to send an email from the device and have it tracked in CRM.  To date there’s been no simple way to use the native mail client, and have those emails tracked, but Folder Level Tracking should solve that problem.  Enjoy!

CRM Online Spring 2015 – Plug-In Trace Log

$
0
0

With the release of CRM Online Spring 2015 Update, Microsoft provided a long awaited feature for developers that we are really excited about.  That feature is a built-in Plug-In Trace Log that allows developers to utilize the existing ITracingService and provide a way to see any traces without requiring an error to occur to see the trace.

Here’s how it works:

  • First we need to enable the Plug-In Trace Log within the System Settings under the Customization tab.  You can choose to log only Exceptions or both Exceptions and Traces.

image

  • Next, utilize the ITracingService to write out a trace and/or throw an Exception within a plug-in

image

  • Next, register your plug-in on the desired step as normal.  In my example I am registering it on Create of an Account
  • When I attempt to Create an Account record then I receive an error message with the exception that I wrote in the plug-in

image

  • Now Navigate to the new link in Settings –> Plug-In Trace Log

image

  • You should see a grid of all the Plug-In Trace Logs per plug-in execution

image

  • Open up the trace record and you will see the details of any traces and exceptions that occurred with the plug-in.  It also provides the duration of the plug-in execution which will definitely come in handy for performance testing.

image

As you can see, this feature will come in handy and should eliminate the need to use a custom entity to store any log entries.  It also eliminates the need to require users to click the “Download Log” button on the error dialog in order to send the log file when an error occurs.


Avoid Form Script Errors with CRM Online 2015 Update 1

$
0
0

As many are aware, the Dynamics CRM Online 2015 Update 1 has been live for a bit of time now.  With it come a lot of shiny brand new features for everyone to play with, of which we’ve been blogging about on our site for a bit of time now.

However, with all great new toys, there are usually some pitfalls to be aware of and avoid.  And this release doesn’t fall short of that classification, as there is a potential headache that most customers and partners should be aware of and plan for.

Microsoft posted on their blog some good detail about some performance improvements that were made to form load times.  This is great as I’ve heard from multiple customers (and experienced) the slow loading forms that seem to have popped up when CRM 2013 released with its new UI scheme.

As seen in the image below, the new rendering forms of Dynamics CRM Online 2015 Update 1 drastically improve load times of forms.

SNAGHTMLc046f23

From Microsoft’s blog post, you can see details of what they changed to get this improved performance.  However, with those changes comes the risk of unsupported scripts now failing.  Some examples of where scripts could fail are:

  • DOM manipulations
  • Accessing internal iFrame URLs
  • Accessing unsupported APIs
  • Other windows related assumptions

However, the good news is that there’s a plan in place that you should follow to resolve these issues.

  • First off, make sure that you test your environment thoroughly in a sandbox instance before updating your production instance to identify any potential issues.
  • If you find something that is broken, you can temporarily turn off the new form rendering by going to your System Settings, and setting the “Use legacy form rendering” option to Yes.  Note:  This option to use the legacy settings is most likely going away with the next major release, so please plan on fixing your broken scripts immediately to avoid issues in the near future.

    image
  • You can also download the CRM 2015 Custom Code Validation Tool from this link, and run it on your environment to identify the usage of any deprecated API’s as well as any usage of unsupported API’s.

Moral of the story, be aware, be prepared, and have a plan.  You definitely don’t want to be caught by surprise in production when you’re getting random errors loading forms.  Good luck!

Always Look on the Bright Side of Your Data

$
0
0

Today’s post is courtesy of Ross Talbot, a Development Principal at Sonoma Partners.

In our continuing coverage of new features included in the CRM Online Spring 2015 Update, today we will be talking about optimistic concurrency.

First, a little review of data quality and minimizing data loss. Just as in life, there are two basic models for minimizing loss when updating data in your database: optimistic concurrency and pessimistic concurrency. Pessimistic concurrency uses row locks to prevent others from making changes while you are performing an update. This prevents a conflict by calling “dibs” and then releasing the lock when you are done. Optimistic concurrency involves an attempt to update and then a rollback if there is a conflict. This prevents a conflict by stopping the second update and letting the user know via an error message. Optimistic data tries first before stopping, and pessimistic data fights others off until its update is complete.

What does this mean for Dynamics CRM today? The lifeblood of your business starts with your customers, so from a CRM system perspective your customer data is vital. With integrations, mobile applications, and multiple users accessing and updating this data, you want to be sure that a situation that could potentially result in data loss is handled in a way that minimizes that potential issue. So let’s dive into an example of how these updates can be used in your code.

Before we start, optimistic concurrency is supported with this update on all out of the box entities enabled for offline sync as well as all custom entities. This is found as a metadata setting “IsOptimisticConcurrencyEnabled” and is set to true if the entity supports it. I have also set up a console app with some basic logging and an organization service to create a contact and test optimistic concurrency via an update and a delete.

Inside the app, I create Bob Brightside and then retrieve the record again so I can obtain the Row Version needed to check during our Update attempt.

clip_image002

From our log file, I see that Bob was created and that the current Row Version is 459773:
INFO "Contact Bob Brightside created with id: 24496e99-470a-e511-80d9-c4346bac7dac"
INFO "Row Version before update attempt: 459773"

Next, I use a breakpoint in my console app to simulate the timing of two updates. One will be made in my console app and the other in the browser. In my code, I will change the First Name field on the contact to Robert. I use the new ConcurrencyBehavior property to check the row version on my update. If the Row Version in CRM matches the Row Version of the contact record I am updating, the update will succeed. If these versions do not match, or if no Row Version is specified, the update will fail. I pause at the breakpoint in order to update the contact via the CRM web interface, changing the First Name field to Mr. replacing Bob.

clip_image004

When I resume my console app, the update request is executed and the update fails.

clip_image005

From our log file, we see that the concurrency check noticed another change had occurred and prevented our update:
ERROR "Concurrency Check Failed: The version of the existing record doesn't match the RowVersion property provided."

Next, I retrieve the record again to ensure I have the latest Row Version. Our log shows this has been updated: INFO "Row Version after update attempt: 459780"
I now execute a Delete Request with the updated contact and the ConcurrencyBehavior property set to IfRowVersionMatches, and since no other updates have been made this request succeeds.

clip_image007

Here is a link to the MSDN article detailing this new feature for more information about the supported entities, fault codes when concurrency checks throw an exception, and additional sample code.

Are you having any issues with your CRM deployment? Concerned that you aren’t doing enough to prevent data loss? Don’t grumble, give a whistle. We can help things turn out for the best.

INFOGRAPHIC: 2015 State of Knowledge for Customer Service

$
0
0

Note: The following is a guest post from Parature, from Microsoft Sr. Product Marketing Manager Tricia Morris. Tricia promotes Parature's focus on customer service thought leadership and best practices through Parature's customer service blog. 

Customers’ expectations for brands and organizations delivering the right answer at the right time, whether through assisted or self-service, continue to grow. In the The Real Self-Service Economy Report, 70% of consumers surveyed now expect a company website to include a self-service application.

In the most recent American Express Customer Service Barometer, 99% of consumers say that getting a satisfactory answer or being connected to someone knowledgeable are important prerequisites to a great customer service experience. But while customers are expecting more, many brands and organizations are struggling with providing the knowledge agents and employees need to consistently deliver the right answers at the right time across all major service and engagement channels.

This infographic presents a snapshot view of the current state of knowledge delivery when it comes to customer service, showing that we should never be content with our customer service content:

StateofCustomerServiceKnowledge

Empowering Employees, Engaging Customers with
Parature Knowledge within Microsoft Dynamics CRM

Knowledge and knowledge management serve as the basis for productive, proactive and consistent assisted and self-service customer care. When both employees and customers can find the right answers at the right time, delivered on the channel of their choice or convenience, satisfaction is sure to rise.

Knowledge on every desktop is the foundation for Parature and Microsoft Dynamics CRM’s powerful and growing integration success story. Teamed with Microsoft Dynamics CRM’s case management, this easy access to and delivery of knowledge empowers employees and engages customers for greater service success. Click here to download the feature sheet or contact Sonoma Partners to make this powerful integration work for your brand or organization.

VIDEO: Sonoma Partners Relationship Mapper

$
0
0

The Sonoma Partners Relationship Mapper for Microsoft Dynamics CRM allows you to see who knows who and how.

It's an easy, drop-in solution that you can just add into your Dynamics CRM instance. It leverages connections to see visually which relationships exist in your system.

Watch the demo below to learn more about Relationship Mapper:

 

Contact us learn more about Relationship Mapper for Dynamics CRM.

How to Mass Update Business Process Stages

$
0
0

Today's guest blogger is Rachel Sullivan, a Senior Consultant at Sonoma Partners

CRM allows you to easily update fields on records using their bulk edit functionality.  Records that you can query and return back in a list/grid can all be edited using this functionality.

However, since it’s currently not a field on the Opportunity form, there is no way to update the Business Process stage using this native bulk edit feature.  However, fear not, as Sonoma is here to provide a workaround on how to edit this field using native export/import. 

In order to update the Business Process Stage using this workaround, follow these steps below.

1. You’ll first need to find the unique identifier of each process stage (the GUID).   To accomplish this, use Advanced Find to identify the opportunities that you would like to update.

3. Edit the columns and include Process Stage

4. Click Results and from this view, you can see all of the unique Process Stages and their GUIDS

Image

You will need to match each unique GUID with the Process Stage Name.  The easiest way to do this is to open a record of each unique Process Stage value, view the Process Stage name.  Do this for each unique Process Stage.

For Example:

  • d3ca8878-8d7b-47b9-852d-fcd838790cfd = Propose
  • 650e06b4-789b-46c1-822b-0da76bedb1ed = Develop

Image

Image

5. Once all GUIDS are gathered, you’ll need to export the records that you’d like to update.  When doing this, make sure to check the box that makes the file available for re-import (note that with CRM 2015 Online Update 1, all records are automatically exported for reimport and this step isn’t necessary.  This should come to CRM 2015 On Prem in the fall).  Save the file locally and open it with Excel.

Image

6. Once in Excel, copy and paste the GUID of the business process stage (that you’d like to change each record to) into the Process Stage column.  Save the file and import back into CRM.

CRM Online Spring 2015 – Alternate Keys

$
0
0

With the release of CRM Online Spring 2015 Update, Microsoft delivered the ability to define alternate keys for an entity.  Alternate keys can be one or many attributes that are a unique combination of columns to uniquely identify a record instead of using the typical primary key.  Alternate keys can be made up from a combination of decimal, integer or string attributes.

Lets dig into how the new alternate keys can work in CRM based on a real-world scenario.

In my example we have an entity for States and our Contact entity has a Lookup to the State entity.  The State entity has an attribute called Code where it will store the unique two character abbreviation for the State such as IL for Illinois.  There is an integration with another system where Contacts will be passed to Dynamics along with the two character abbreviation for State.  Alternate keys work perfectly in this scenario as we can just associate the State record to the Contact record by using the State’s Code instead of needing to query to find it’s GUID.

In order to accomplish this, we first need to go to the customizations for the State entity.  Underneath the entity is a new link for Keys.

keys

Click New which will open a dialog and let you pick one or more keys that will make up a unique combination to identify a record.  We will select Code as a Key for our State entity.

newkey

Now with the SDK when updating a Contact record, in order the set a Lookup value we would need to use the EntityReference object and provide a GUID to a State record but with the latest Spring Update and the latest SDK, we can instead pass in a value for the Code attribute like shown in the snippet below.


Therefore if our integration sends us a Code for the Contact’s State such as “IL”, we can just update our Contact record using the “IL” value and avoid needing to do a query against the State entity to find the GUID for the IL State record.

One last thing to point out about alternate keys is that CRM will put a constraint on the entity to make sure the new alternate keys make up a unique identifier for the entity.  If you try creating a record with a duplicate set of alternate keys, you will see an error similar to the one shown below.

duplicate

You Too Can Snoop… But Not In A Creepy Way

$
0
0

Today’s guest blogger is Stephen Habegger, a Senior Developer at Sonoma Partners.

Awhile back, we showcased an application called CRM Snoop on our website. Snoop is a tool that allows developers to listen to Dynamics CRM plugin messages and peer into the darkest depths of an IPluginExecutionContext object. It’s a tool that can be extremely useful for plugin debugging and development and was only available for use internally at Sonoma Partners… until now.

We’ve recently revamped the application completely, moving away from its former incarnation as a WPF application and creating a new managed solution that can be installed in both on-premise and online Dynamics CRM 2015 environments. And now we’re making the solution publicly available here.

What’s In the Solution?

The Snoop solution will create two new entities in your Dynamics CRM organization, Snoop Session and Snoop Session Results. A Snoop Session represents a configuration for snooping on plugin messages (i.e. what entities and what messages you want to listen to). When you start recording a set of messages, a plugin is registered on those messages, and they are saved as Snoop Session Results records.

How Do I Use It?

After installing the CRMSnoop managed solution, navigate to Settings > Solutions. Click the new Snoop Sessions button in the command bar.

image

A new window will launch with a list of Snoop Session records. Open one or create a new one. When the form has loaded, select the entities and messages you wish to record. Optionally, select Include Available Images to register Pre and Post Entity Images where applicable. You can also select Only Record My Actions to ensure actions performed by other users don’t show up in your results. Then, just click Start Recording.

image

After you begin recording, the Results section of the Snoop Session form will display an animated timeline of messages as they happen. You can click on the message icons in the timeline or in the table below to display the detailed properties of the IPluginExecutionContext passed to the plugin message. When you are finished recording, click the Pause Recording button.

image

image

You can also navigate to the list of related Snoop Session Results in the header of the Snoop Session form. The form for an individual Snoop Session Results record also displays the results for that particular message.

image

It is important to note that the recording process relies on the Snoop Session record status. That means recording does not end automatically when the Snoop Session form is closed. The recording must be stopped by clicking the Pause Recording button. The recording may be resumed at any time with the same or altered configuration. In some scenarios it may make sense to let a recording continue over a period of time. However, we do not recommend this in a production environment as there may be a performance impact.

What Is It Good For?

Snoop is an excellent tool for developing and debugging plugins in a variety of scenarios. It allows the developer to see the input a plugin may receive without profiling or attaching a debugger. Use it to check out what fields are changing during an Update operation. Keep a link handy to a specific Snoop Session Results record for when you don’t remember what’s in that pesky Opportunity Won message. Record in a User Acceptance Testing environment to collect a log and figure out what those crazy users are doing to break your plugin.

Will you find another use for Snoop? Let us know what your favorite features are and how you use it.

Enjoy!


Refreshed Dynamics CRM Phone App Available

$
0
0

A few months back, Microsoft announced the new and improved version of their Phone Client would be available with the Spring 2015 release.  However, with releasing any app to the various app stores, they’re not released immediately.

However, recently the app did show up in the Apple app store and we were able to get our hands on it to take a look and compare it to the previous version.  The previous version is still available in the app store, and has been rebranded “Dynamics CRM for phones express.”  A couple years ago we blogged about it’s release and the functionality it provided back then.  I linked to that post so you could compare and contrast the look and feel of the previous express version, to the new and improved version.

The new version, branded “Dynamics CRM for phones”, is now available in the Apple store, Windows store, and Android store.  You can tell the difference in the apps based on the icon and name.

imageimage

Microsoft is moving to a “configure once, deploy everywhere model.”  What does that mean?  That means the life of a configurator is going to be that much better.  More specifically, the form customizations you make in the CRM web client, will now not only be what you see on the CRM Tablet client (as they have been since it’s release), but will also be what you see on the new CRM Phone client.  Therefore instead of having to update the main forms AND the mobile express forms, you’ll just need to update the main form for any changes you make to be applied across the board.

Now to the details.  What does the new Phone Client look like?  Well if you’ve used the Tablet Client before, it’ll look very similar to that.

When you initially log in (requiring only your IFD URL to your organization, user id and password), you’ll see your home page.  This home page is the Sales Dashboard.  However, in the Web Client, you can create additional dashboards that can be selected when you’re on the home page on the Phone Client, and you can also make that dashboard your default dashboard.

image  image

As you can see, from here you’re able to view records that you’ve pinned to your home page.  You can also resize tiles that are on your home page and this makes it super convenient for records with contact information like the Patrick Sands sample contact record above.  You can easily email and call this contact now directly from your home page without having to click into his record.

You can also see at the top of the page the global menu bar which has the following commands from left to right:

  • Back – takes you to previous pages
  • Home – takes you to your home page
  • Search – initiates a multi-entity search
  • Site Map – displays the entities you can navigate to

Also on all pages at the bottom right is an ellipses.  Clicking on this presents more options for the area you’re working in, as well as allows you to create a new record from anywhere you’re at within the application.

image

When you navigate to an entity from the site map, you can create a new record of that entity type by clicking the plus button at the top of the page.

imageimage

When on a record, you can view the data about the record and related data very easily.  The Phone Client now uses the same exact forms that the Tablet Client and Web Client use (configure once, deploy everywhere).  If you’re going in to talk to a customer, you can navigate to their account and view any open cases or opportunities immediately from the Phone Client.  You can click into an Opportunity to then see the process based form, and where you’re at within the sales process.

imageimageimage

The phone app also allows you to easily create emails and make phone calls by clicking on email address and phone number fields.  The email fields will automatically open your native email client, and the phone fields will automatically initiate your phone client.  The good thing is after you hang up the call, you’re returned to CRM with a new phone form initiated so you can just punch in the details and click save.

imageimage

imageimage

The integration between the Phone Client and the native mobile phone doesn’t end there.  Any address field on the application is clickable, and when doing so, you’ll open up the native map application.

The Phone Client also has a disconnected mode just like the Tablet Client.  While the offline mode is better that previous versions, this is still lacking in that it’s not showing you all records that you have access to, but instead, recently accessed records.  You can create new records while offline (called offline drafts), but unfortunately you cannot modify records while offline unless it was one that you just created while offline.  You can view your offline draft records by navigating to them via the Site Map (you’ll see a new “Draft Records” entry with a count of drafts).  Then when you’re back online, you can go into this list of drafts, and re-save them for them to save to the CRM database.  Not ideal, but is much better than nothing, and I’m really looking forward to what Microsoft has in store for vNext.

imageimageimage

It’s great to see Microsoft continue this “mobile first’ mode and add more products to it’s repertoire.  Enhancing the Mobile Express app and making a true mobile phone app now rounds out their suite of products (web, tablet, phone) to all be first class.  Next steps are to add more features to these apps so that functionality that’s available on the web, is also available on these apps (e.g., custom web resources).  I’m also looking forward to seeing how they further improve on their offline story, and hopeful they provide a true offline solution where users can work with existing records while offline, and not only new records they create while offline.

However, as you can see, the application is pretty robust as it stands.  And the best part is the cost:  FREE!  Go ahead and download your copy now and start playing around.

Announcing CRM DevTools for CRM 2015 and Update 1!

$
0
0

Last January we released a brand new tool called CRM DevTools for CRM 2013 and 2011 UR12+.  Today we’re happy to announce a new update that supports CRM 2015 and CRM 2015 Update 1.  If you missed the original release, head here for usage information or here for the latest release.

Along with CRM 2015 and Update 1 support, we added a few more handy features.

Note:  Most of these new features will open a new window so be sure enable pop-ups

Form Tab – Record Properties

The Record Properties button on the Form tab brings back the old Properties page from CRM 2011 that still exists but isn’t surfaced anywhere in the UI.  The page displays the permissions on the record and the Created By, Created On, Last Modified By, and Last Modified On.

image

image

Form Tab – Performance Center

The Performance Center button on the Form tab displays the native Performance Center on top of the record form.  The Performance Center is used to debug any performance issues with a record form to see where it can be optimized.

image

image

Debug Tab

The new Debug tab replaces the old DB & Server tab.  The information from the old tab is now within the Environment Info button.  The Debug tab has 5 buttons to provide easy access to native debug pages within your CRM environment.

image

Debug Tab – Diagnostics Page

The Diagnostics Page button opens the native Diagnostics page for your environment.  This page helps debug any network issues and admins can use it to run a latency and bandwidth test.

image

Debug Tab – Environment Info

The Environment Info button opens the native Debug Information page for the CRM environment.  It contains version information for the CRM server and database, along with other settings. 

image

Debug Tab – Default Solution

The Default Solution button is pretty straight-forward and will open up the default solution for the organization.
 

Debug Tab – CRM For Tablets

The CRM For Tablets button will open up the CRM For Tablets app within your browser.  This is very handy to help debug any JavaScript issues with the app.  The native browser developer tools can be used to see any JavaScript errors that might occur within the app.  It can also be used to just see how the app will look with your organization.

image 

We hope you enjoy the latest release of CRM DevTools as much as we do!  Hit us up in the comments with any feedback or suggestions for future releases.

Sonoma Partners Named the Microsoft Dynamics CRM US Service Industries FY15 Partner of the Year

$
0
0

Last month, Microsoft proudly announced the United States Microsoft Dynamics Partner Award winners during the US Microsoft Dynamics Annual Conference. 

“The US Partner Awards gives Microsoft Dynamics the opportunity to recognize its top partners at a global event.  We are honored to acknowledge the extraordinary contributions and success driven by our Microsoft partners serving a strategic group of customers and driving strong business impact throughout the past fiscal year.” said Marietta Davis, Vice President, US Dynamics.

Sonoma Partners was recognized with the Microsoft Dynamics CRM US Service Industries
FY15 Partner of the Year Award. The company was honored among the top Microsoft partners for demonstrating sales excellence in innovation and implementation of customer solutions based on Microsoft technology.  

Awards were presented in multiple categories, with winners chosen based on their Microsoft Fiscal Year 2015 industry and product sales performance in the United States. Sonoma Partners was recognized for providing outstanding solutions and services, as well as demonstrating excellent engagement in the in the Professional Services Industry.

“Sonoma Partners is seen as an industry leader in the area of Service Industries. They have built their organization by embracing the need to have unique specializations for success.” said Lindsay Zwart, US Partner Lead – Microsoft Dynamics.

Microsoft Dynamics Day 3 Awards-0062

Microsoft Dynamics Day 3 Awards-0147

Our Microsoft Dynamics CRM Sales Team accepting our award in Nashville, Tennessee. 

Upgrading to Microsoft Dynamics CRM 2015? Here's What You Should Consider

$
0
0

image

Are you currently working with a version of Dynamics CRM pre-2015?  Have you not yet experienced the new flattened “single window” UI?  Do you not know what a CRM Solution is?  Or even worse, do you still use call-outs and deploy custom web resources to the physical CRM Servers (yikes!)?  If so, it may be time to start thinking of an upgrade to Microsoft Dynamics CRM 2015.

Upgrading any software can be a frightening thought and something you’d rather just put on the back burner.  However, delaying the upgrade has some negative impacts as well:  you obviously miss out on the latest and greatest features, and delaying the current pain of an upgrade may mean more pain down the road if you’re not on top of the latest software. Upgrading from 2011 to 2015 is much easier than 3.0 to 2015.  In other words, your current self can rest easy, but the pain you’re causing your future self is growing by the day. 

How configured are you?

A good consideration to take when you do decide to upgrade is, how much of a beast has your CRM system become?  You may have had multiple vendors, multiple deployments, multiple internal project sponsors with different priorities of a CRM system, and years of band-aiding a system you don’t even want to think about upgrading.

In this scenario, it may be best to take a step back.  Look at the Dynamics CRM upgrade as an opportunity to clean up all the noise that has accumulated in your deployment and revalidate the work that has been done over the years.  Use this as your opportunity to deploy 2015 in a “clean slate” and interview the key business groups as if they don’t have a CRM system at all.  Just because something was built and functionality was added to your deployment, doesn’t mean it’s needed.  Ask the question “why?” and if nobody can provide an answer, seriously consider leaving it behind.

Going through this process means you’ll most likely need to write a process to migrate data from your current version, to 2015.  You don’t want to go through the upgrade process which would automatically take all your current customizations and migrate them to 2015.  Instead, you’ll want to start with a fresh install and reconfigure your environment based on the requirements you obtained during the “revalidation discovery” process.  E.g., there may be fields that drop from your schema going forward.

On the other hand, if your system is small, relatively new, and hasn’t had many deployments to it since go-live, you may want to have the upgrade process perform most of the heavy lifting for you.  This means you won’t have to write a migration process – the upgrade process will automatically perform any data conversion needed for 2015.

If your current system hasn’t been too configured, chances are that the changes you’ve made have been supported.  Therefore, they should automatically upgrade through the upgrade process with not much falling out for you to manually clean up.

Budget is a big driver of this conversation as well.  If you have a massive implementation, it may be quicker for you to start fresh and implement just those features you want to carry forward versus trying to upgrade an old archaic system with a lot of deprecated code.  However, if your implementation isn’t complex, and all your code was supported via the API and nothing is deprecated, an actual upgrade may be quicker versus redeveloping.

Pre 2011 vs. Post 2011

There are a lot of clients out there that aren’t on Dynamics CRM 2011 or greater.  If this is you, you’ll want to definitely consider adding more time to your upgrade process as 2011 introduced some pretty groundbreaking changes to the deployment model.

With 2011, all customizations and configurations are packaged up in a Solution.  This includes any custom web pages, JavaScript files, etc.  With versions prior to 2011, these files were manually deployed to the server which means that they would have to be converted to 2011 format prior to upgrading to 2015.  If you’re on 2011 or later, then that work has been done already for you.  If you’re on a pre-2011 version, then you’ll need to factor that time into your upgrade decision.

Continued Investments into Mobile

Microsoft officially entered the mobile space with Dynamics CRM 2013, and they continue to improve upon that story.  With the release of 2015 they made enhancements to the Tablet Client by introducing an offline story, and making the dashboards more configurable.

Now with 2015 Online Update 1, they have introduced a refreshed phone app that has the same rich functionality that the tablet app has.  There’s still a lot of room for improvement in these apps, and during our time at Convergence 2015, the mobile roadmap looked feature rich.  If mobility is something you’re looking to get into, upgrading to the latest version of CRM could go a long way as you’d get a free mobile app in the process.

Features, features, features

Of course, the main driver for upgrading usually is the features that the new product comes with, and Dynamics CRM 2015 doesn’t fall short in this category.  With 2015, and 2015 Online Update 1 (Carina), Microsoft has continued to add to its already feature-heavy product.  Key notable features rolled out in these latest versions are:

Multi Entity Search

Business Rules

Business Processes

Continued Mobile Improvements

Hierarchical Security

Hierarchy Visualizations

Outlook Sync Improvements

Folder Level Tracking – Outlook Email Sync

Refreshed UI with cleaner Site Map

Theming

Date Only Fields

Office Groups Integration

OneNote Integration

Immersive Excel

Export to Excel Improvements

If any of these features are something you’ve been waiting for in the product, an upgrade now may be a no-brainer.

If your organization is considering a Microsoft Dynamics CRM 2015 upgrade, please let us help you decide the best way to approach the project.

Deploy Dynamics CRM with PowerShell Part 1: Duplicate Detection Rules

$
0
0

Today's post is written by Ian Moore, a Developer at Sonoma Partners.

The Dynamics CRM PFE team recently released Microsoft.Xrm.Data.PowerShell, which is a PowerShell module with cmdlets for interacting with data in a CRM Organization. It includes cmdlets that allow automation of solution exports and imports, changing system settings, and administration tasks. In this series of blogs, we will look at how these cmdlets can be used to automate common tasks that are encountered in deploying solutions for Dynamics CRM. The first part will be how to enable duplicate detection rules from PowerShell.

When importing a solution that contains an entity, it is not uncommon for CRM to unpublish any duplicate detection rules for the entity.

clip_image002

This requires any affected rules to be published manually after the solution is imported. We can automate this process in a few lines of PowerShell.

First, create the following function:

This function takes in the CrmServiceClient created by the Get-CrmConnection cmdlet, and an array of guids for duplicate rules. Each guid is piped to the small “Create-PublishRuleRequest” function to create an SDK request, and the piped to the code block that executes the request and returns the response as a PublishDuplicateRuleResponse.

Now for the script, we need to make sure the module is imported and can create a connection to Dynamics CRM with Get-CrmConnection.

if (-Not (Get-Module-NameMicrosoft.Xrm.Data.Powershell)) {
     Import-ModuleMicrosoft.Xrm.Data.Powershell
}

$crmOrg = Get-CrmConnection–InteractiveMode

Before importing the solution, we can query for the duplicate rules that are currently published with Get-CrmRecords. By filtering for only active rules, we can make sure we don’t unintentionally publish a rule that wasn’t active prior to importing the solution.

$duplicaterules=Get-CrmRecords-conn$crmOrg'duplicaterule'-FilterAttributestatecode-FilterOperator -eq -FilterValue Active

$duplicateruleIds=$duplicaterules['CrmRecords'] |select-ExpandPropertyduplicateruleid

Now we have the guids we need for publishing, so we can import our solution to the organization with Import-CrmSolution, and call our publish function.

Import-CrmSolution-conn$crmOrg-SolutionFilePathC:\Path\To\Solutions\DevSolution_1_0_0.zip-PublishChanges

Publish-CrmDuplicateRules-conn$crmOrg-RuleIds$duplicateruleIds

Here is a sample script that shows the whole process.

Make sure to download the Microsoft.Xrm.Data.PowerShell module from GitHub at https://github.com/seanmcne/Microsoft.Xrm.Data.PowerShell and follow https://blogs.msdn.microsoft.com/crminthefield/ for updates to the module!

Viewing all 206 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>