Quantcast
Channel: Microsoft Dynamics CRM
Viewing all articles
Browse latest Browse all 123975

Blog Post: Introducing Sonoma Partners Dynamic Forms for MSCRM 2011

$
0
0

Microsoft continues to improve their product and the configurability of it meaning that more and more pieces of the application are surfacing to administrators to be able to configure the application, versus requiring a developer to write custom code.  An easy to configure application adds greater flexibility and increased options for end users to extend the application to meet their needs.

However, there are still some places that we find most of our customers want to easily extend, and also be able to control the configurability themselves.  And that’s the ability to have their CRM Forms dynamically change based on specific conditions (value of a field, users security role, etc.).  The great news is that Sonoma Partners has built something specifically for this that we call Dynamic Forms!

Sonoma Partners’ clients get the ability to use Dynamic Forms for free if their specific requirements warrant the need for it.  However, Sonoma Partners is now also making this powerful tool for controlling CRM Form behavior available to everyone!  The Sonoma Partners Dynamic Forms Community Edition will allow you to use this powerful too and create up to 10 rules for your organization.  You can request the Dynamic Forms Community Edition download from the Sonoma Partners downloads site.

  • Pricing:
    • Sonoma Partners Dynamic Forms Community Edition:
      • Free to all customers through a download on the Sonoma Partners website.
      • Allows for the creation of up to 10 rules.
    • Sonoma Partners Dynamic Forms Full Edition:
      • Free to Sonoma Partners clients.
      • Allows for unlimited creation of rules.
  • Easy Install / Fully Supported Design
    • Dynamic Forms is a CRM 2011 Managed Solution that you can simply import into CRM
    • The User Interface is built on Microsoft Silverlight that generates Web Resources that are transportable between organizations using CRM Solutions.
    • All of the script that’s generated in the Web Resources are fully supported using the native CRM JavaScript API

  • Easy to use Configuration User Interface
    • Easy to create rules using IF/THEN logic
    • Ability to filter list of entities to configure rules for by Native Entities, Custom Entities, or Entities that have Dynamic Form Rules
    • Users can add rules, save rules, and publish rules all in one place
      *UI created using Silverlight
  • Available Conditions (IF):
    • All conditions are AND conditions where every condition has to hold true for the rule to fire
    • Entity Field:
      • Contains Data
      • Does Not Contain Data
      • Equals
      • Does Not Equal
      • Begins With
      • Ends With
      • Contains
      • Does Not Contain
    • Form Type:
      • is Create/Update/Read Only/Disabled
      • is not Create/Update/Read Only/Disabled
      • is a specific Form
      • is not a specific Form
    • Related N:1 Entity:  Same options as “Entity Field” above
    • Current User:
      • Has a specific Security Role
      • Does not have a specific Security Role
      • Has values for a specific attribute on the User entity
  • Available Actions (THEN)
    • Disable the Form
    • Hide left Navigation Elements
    • Entity Field
      • Calculate the value based on two other fields (+,-,*,/)
      • Set Required
      • Hide
      • Hide and Clear Contents
      • Clear Contents
      • Show
      • Disable
      • Set the value
      • Set the value if currently NULL
      • Filter Values (for Option Sets)
      • Format values (ex: phone #)
    • JavaScript
      • Execute a JavaScript Function
      • Present a JavaScript Alert
    • Hide/Show/Disable Form Sections
    • Hide/Show/Disable/Collapse Form Tabs
  • Dynamic Forms In Action
    • Our business requirement for this example is the scenario where the client wants to require either the E-mail or the Main Phone number field for Accounts.  They don’t need both, but they need at least one.  The good news is this is a VERY SIMPLE scenario to accomplish with Dynamic Forms.  This won’t require a developer, and will take less than 15 minutes to complete.
    • To use Sonoma Partners Dynamic Forms, navigate to Settings –> Solutions and open up the “Dynamic Forms – Community Edition” Solution.  From the Configuration link off of the Solution, you can configure your rules.
    • You can filter the list of entities by typing in the “Filter Entities” drop down, or using the pick list of predefined options.   I notice that Account already has a rule configured to it via the arrow indicator to the left of the entity name.  I’ll select "Entities with DF Rules” to filter out the rest of the entities.

       image

    • From here we can see the details of the rule for the Account entity already which is to format the Main Phone Number once populated.

      image 

    • Click on Add Rule above the Account entity name on the left to create a new rule.  Fill in all the details of your new rule.
      • Condition:  Main Phone - Does Not Contain Data
      • Action:  E-mail - Require
      • Name:  Require either Main Phone or Email Part 1
    • Your rule should look as follows:

      image

    • The red exclamation point indicates the rule is not saved.  You can save it by clicking the Save button in the top right corner.
    • As you noticed I gave the rule a name “Part 1” as this requirement will require two rules.  One to require the Email field, and one to require the Main Phone Number field.  Conditions within a Rule act as AND conditions, where as Conditions between multiple rules act as OR conditions.
    • Luckily there’s a Copy button in the top right corner next to Save which will reduce the amount of work you need to do for “Part 2” of this requirement.
    • After you click Copy, set your rule up similar to what you did for the first part:
      • Condition:  E-mail - Does Not Contain Data
      • Action:  Main Phone - Require
      • Name:  Require either Main Phone or Email Part 2
    • Your rule should look as follows:

      image

    • Now all you have to do is Save the rule as you did for the first rule, and once that’s done, you can click on the “All” on the left underneath the Publish: text.  You can choose to publish just the current selected rule you’re on, or all rules.  This will create / update the web resources that are attached to the entities and actually perform the Dynamic Forms magic.
    • Open up an Account record to see your newly published rules in action and to test them out. 
    • Here you can see an Account that was previously created before this rule was added and neither Main Phone or E-mail are populated.  Therefore both are appearing up as required on the form.  So far so good!

      image

    • Now let’s populated the Main Phone number.  You’ll notice two things after stepping off the field. 
        1. First, the Main Phone number field is automatically formatted based on our format ###-###-####
        2. Second, you’ll see that E-mail is no longer is required

          image

    • Now remove the value in Main Phone number, and instead type the same unformatted number into the Other Phone number field.  Also enter in an E-mail address.  You’ll notice two things:
      • First, the Other Phone number field IS NOT formatted based on our format ###-###-#### since this field didn’t have any formatting applied to it
      • Second, you’ll see that Main Phone is no longer is required

        image 

    • It’s just that easy!  Now you’ve simply satisfied the requirement of having either the Main Phone or E-mail populated for your accounts with a few simple clicks!

    If you’re intending to use Sonoma Partners Dynamic Forms, there are some considerations you need to remember:

    • This solution is designed to work in unison with native CRM Field Level Security and Role Based forms (Dynamic Forms is not intended to hide sensitive data alone)
    • If you have multiple environments (e.g., Development / Test / Prod), you should consider where to manage the rules
      • In Dev (best practice and recommended): create and edit rules and deploy to other environments using Web Resources via a CRM Solution
      • In Production:  you’ll need to also deploy the entity records (Form Action, Form Condition, Form Rule, and Form Setting).  The Web Resources that the solution creates are needed to use Dynamic Forms, but the records stored in these 5 entities are needed to configure Dynamic Forms.

    I hope you find this powerful tool as useful as we do and as our clients do.  You can find more information about Sonoma Partners Dynamic Forms for MSCRM 2011 including Help Documentation on the Sonoma Partners website.   Thanks to my colleagues Stephen Habegger, Matt Weiler, Brad Bosak, Kristie Reid, Pam Powell, Rachel Sullivan, Jeff Meister and Cherish Orozco for their contributions to making Dynamic Forms where it is today!


    Viewing all articles
    Browse latest Browse all 123975

    Trending Articles



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