Showing posts with label CRMUG Summit 2013. Show all posts
Showing posts with label CRMUG Summit 2013. Show all posts

Friday, November 22, 2013

CRMUG Summit 2013 Main Takeaways

Here is a summary of my main takeaways from CRMUG Summit 2013. You can checkout the full review of each day if you like as well.


  • Use CRM 2013 as an opportunity to "re-launch" and set up CRM's position in the organization. Make it exciting!
  • Do not over-customize
  • 2011 endpoints will be supported at least through v7 (2011=v5, 2013=v6)
  • Custom Mobile apps do not require an IFD
  • Change in how scripts load in UR 12-14. Upgrade to UR 15 where this is fixed
  • Use Outlook Critical Update with UR 11 for best performance

Best Practices

Top 7 Server Optimizations

1.      If UR < 10, adjust the EnableRetrieveMultipleOptimization setting for your organization

2.      Enable SOAP and XML Compress for Faster Outlook CRM Client

3.      Tune Threads (if you have a dedicated machine) to use all the available resources, this is dependent on the number of CPUs.

4.      Follow SQL Server best practices – Set Max Degree of Parallelism to 1, look at Microsoft White papers, separate OS/Data/Log/Temp TB drives, and watch performance metrics.

5.      Create custom indexes

6.      Run the recommended scripts to clean up the POA table (every 6 months) and AsyncOperationBase Table (Workflows, monthly).

7.      Adjust the Email Router settings if you have a large number of emails (by default it grabs up to 1000 waiting emails every 60 seconds)

 

CRM for Outlook

1.      Minimum requirements = minimum performance

2.      Offline Client = Mini CRM System. This requires more power and more planning. Also keep Data Security in mind and consider encryption.

3.      Antivirus software can drastically slow down your performance if it has a URL scanner. To fix, whitelist your URL.

4.      Update the System Synchronization Settings. Change Address Book from 1 hour to 24 hours; change the other settings to an hour or greater.

5.      Turn off MapiCaching on low power machines.

6.      Keep up to date on your patches.

7.      Keep your inbox small. There are some ways to improve performance if you must have a large inbox such as some registry changes and keeping an eye on your OST Fragmentation.

8.      Update the Outlook Filters, Sync Rules.

9.      Use the Diagnostic cool to clear temp files and create log files when the issue can be reproduced.

10.   Download the Trace File Viewer from CodePlex to make reviewing issue log files easier.


Internet Explorer Best Practices

1.      Use AD Group policy to roll out changes

2.      Add CRM to local or trusted sites

3.      Want to make use of the temporary internet cache for images and Java Script. Adjust the SSL settings to cache files such as icons.

4.      Keep in mind common issues: different default browsers, multiple toolbars, etc.

5.      Use the CRM Network/Browser Diagnostic tool to just Latency, Bandwidth, JavaScript load time, etc.

 


Moving Workflows that have team/user references - create a configuration entity with one record, link this record at the beginning of the workflow and use it to get the records you need. When creating this, import it with the GUID to force it to be the same between environments.

Long running workflows - instead of a wait create a different type of record. Set up a bulk delete job to delete records that meet the wait condition. Start the rest of the workflow (child) off the delete. (Scheduling Recurring Workflows)

CRM 2013 Actions are the opposite of custom workflows.

Custom workflows are written in code and instantiated through the UI.

Actions are written in the UI and instantiated through code.

Auto Save probably will not cause many issues in real life. Create is still explicit. Generally people will work on record for a while and then leave and possibly come back to do more work. Workflow should be going off of actual field change.

CRM 2011 UR 15 or UR 15v2 for Outlook will work with CRM 2013.


Snapshot Chart - Use custom entity to manually capture month-end stats, use this to build charts

When moving to CRM 2013 - make sure all reports are going off the filtered views. This is the supported method and will ensure that they do not break with the table structure changes (no more extension base table)

In CRM 2013, dashboards can support security roles (similar to role-based forms)

 

Reporting Tools and Resources

  • For help with editing XML a good blog is CRM Chart Guy. These are business charts, not 3D or flashy.
  • Scribe Online Replicate – easy to use tool to mirror the database
  • Metadata document generator (CRM toolbox) – view all entities, attributes, options
  • Metadata entity viewer – Generate Visio diagram for specific entities; do not include the User entity due to the number of connections it has
  • SQL2Fetch – converts SQL to FetchXML

Recommended BI Tools

Summit Day 3 Takeaways


Reporting 201: Dashboards

Mike Hammons

 

Why?

“If you can’t measure it, you can’t manage it”

 

Executives want analytics and business intelligence. Dashboards can assist with adoption and get executives to begin using the system.

 

Other Options

  • Power BI for Office 365
  • Excel
  • SharePoint
  • SQL Server (many good features in SQL server 2012)

 

Dashboards in 2013

In CRM 2013, Dashboards now can have Security Roles associated with them. There is also a new color palette.

 

Advanced Find has been improved to include an outer join (not in, does not have), which can improve our dashboards.

 

Snapshot Data

Often we want to show data as it was at a specific point in time. This can be done with a plugin if you have developer resources.

 

Smaller companies can create this by creating a separate custom dashboard entity with fields such as number of open cases, number of new accounts, etc. Whatever you want to show in the chart will be a field on the entity. On the first of each month, use a view to gather the information then manually enter it. You can even add fields from another system if you need. Then display a chart of this custom dashboard entity records. You can later build a plugin or use scribe to auto-fill this data.

 

iFrame Report

You can include an iFrame on your dashboard and point it to a URL already in SharePoint. You may need to uncheck the cross domain checkbox, but you can only do this if it is a system dashboard. You can also use an iFrame to display a CRM report, it is more usable if it is a report that does not require a parameter to be selected.

 

Web Resources

Web resources allow you to display things such as websites and maps. If you display a map you can even overlay this with CRM data. To do this you will need code to grab the data and display, you can support drill down with more code. There are some managed solution examples online.

 

Reporting Panel

Mike Hammons

Brad Freeman

Andrea Lange

 

Changes in CRM 2013

There should not be many changes to reports in CRM 2013 as long as you are using the filtered views. This is the supported method and respects security.

 

Consider using SQL 2012, you can auto-replicate to create a reporting database.

 

Dashboards are changed to support Security Roles. There is no more right-click to get dashboard link. The default dashboards have been changed. There have also been design improvements – responsive design, simplified/cleaner layout, individual pieces can be expanded.

 

Other Notes

System Jobs cannot be reported on within CRM, you will need to use a SSRS/Fetch XML report. You could also create a custom “Audit” type entity that would track workflow progress.

 

To schedule a report, follow these steps: (1) Create RDL, (2) Schedule in CRM, (3) Find snapshot and set up that to send automatically. Make sure you are grabbing the most recent snapshot to send.

 

The Report Wizard is good for basic reports. You cannot get count, only sum of number fields. This is not really improved in CRM 2013; the idea is it should be simple for end users.

 

Reporting Tools and Resources

For help with editing XML a good blog is CRM Chart Guy. These are business charts, not 3D or flashy.

Scribe Online Replicate – easy to use tool to mirror the database

Metadata document generator (CRM toolbox) – view all entities, attributes, options

Metadata entity viewer – Generate Visio diagram for specific entities; do not include the User entity due to the number of connections it has

SQL2Fetch – converts SQL to FetchXML

 

Recommended BI Tools


 

Microsoft Q & A

Jamie Fiorda

Larry Resshen

Aaron Donat

 

In this session they discussed the announcement of Business Process templates for CRM 2013. They also mentioned that the Business Process engine will be improved in the future to include branching and workflow-like functionality.

 

Top Issues with Upgrading to CRM 2013

Main issue has been unsupported customizations such as the version 4 endpoints. Also CRM for Outlook issues where the client cannot connect, this is just a configuration issue. 2400 organizations had been updated successfully at that time (10/24/2013).

Summit Day 2 Takeaways


Ask the MVP’s: System Administration

A Panel of MVPS’s

 

This was another great session. It is impossible to record, retail and pass on all the information. Good news – they are working on a CRM 2013 Field Guide so that may contain a lot of this information.

 

How can I encrypt a field in the database?

You can use TDE Disk encryption on the full database if on premise with SQL enterprise. If online, you can use a plugin to encrypt and decrypt. This can be field specific, but keep in mind you will need it to translate anytime the field is shown including Reports and Advanced Find.

 

Auditing

Auditing user login was hot topic. The issue with the out of the box auditing is that it captures the login when Outlook is opened even if they do not access CRM data. Some other options are IIS logging if you are not using ADFS, Sonoma Control Tour (User adoption tool, does not track reads), Zero2Ten tool, etc. There is also a new SDK function available for this (getCRMAccessAudit) or you can build a start page with a Click here and audit that.

 

There is no way to report on Auditing with CRM online. On Premise it can be done by reading SQL. Better option is to create custom entity to track specific fields for auditing.

 

Upgrading 2011 to 2013

Use the Legacy compatibility tool to find scripts/code that needs to be updated. Make sure you test everything! Take time to look at the new functionality and take advantage of the new features.

 

This is a major navigational change even if everything else is kept the same. Training is very important – users need to know how it is useful and why they should use it. Build excitement for the new product. Show it as a tool to help them be more efficient. Simplify as much as possible. Build awareness and ask for feedback, allow everyone to be a part of the rollout.

 

Basic Configuration Efficiencies (Quick Wins)

Use Views, dashboards, scheduling and emailing reports, etc. Good Icons for custom entities. Simplify the site map and ribbon. Use drop downs Create Dialogs when appropriate – allows for quick form entry, create records with related records, and you can include all the important fields to improve data compliance.

 

Partner Showcase: ADXStudio – Portals and Customer Communities

Shan McArthur

 

Portals allow you to keep your data in CRM while having it open to customers online. These portals can respect your branding such as logos, colors, font, etc. Thes portals can be integrated with other systems and shared on your website of Facebook. The platform is also extensible with ASP.Net so you can add even more integration if necessary.

 

The ADXStudio portals are set up to use many different authentication standards including social. Using social authentication allows you to use credentials they already trust instead of needing to maintain credentials.

 

The portal can provide social engagement for customers such as forums, events, blogs, surveys, comments, etc. This gives customers a way to be social about a product without being on social media. Don’t just monitor social – create a community platform.

 

ADXStudio also has a Help Desk Solution. Customers enter their issues in the portal and the solution ensures that there is effective resource and issue management. It includes a knowledgebase where customers can look for existing issues to resolve their problem without a ticket. If they cannot find it, then they can create a new case, receive updates, and monitor it all through the portal. If customers need to pay for tickets, this is handled through a separate system so your database does not need to be PCI compliant.

 

For more information you can check out Demo.adxstudio.com.

 

Techie Talk: Workflow Activities Panel

Gus Gonzalez

Adam Vero

Richard Knudson

 

Getting Started with Custom Workflows

If you are just getting started with Custom Workflows there are several things to check out.

Jim Wang’s book and Blog

CRM Administration Bible – some information on starting custom workflows and plugins

Codeplex – many custom workflows are already here, you may not even need to make your own

 

TIP: Moving Workflows with User/Team References

If you have a workflow that references a specific User, Team, or Queue you may run into an issue when moving it between environments. This occurs when the User/Team/Queue/etc. was created separately in each environment, meaning they each have a different GUID. There are a few ways to get around this.

 

Create a Configuration entity with only one record. This will have a field for all the fields you need in the workflow. As the first step of your workflow, add a link to this configuration entity. Now you may wonder how we can prevent the same issue from occurring with this record. What you need to do is create the configuration entity via import with the GUID, this will force it to be the same. (Note: This is the same technique that could be used for Users/Teams but generally this problem is noticed after the fact.)

 

Another option is to use the Zero2Ten Exact Replica “Deep Copy Tool” which will Mirror data within each environment. If you clone the environment all the GUIDs will be the same except for Business Units.

 

Best Practice: Long Running Workflows (Long Timeouts)

It is not a good idea to have a large number of waiting workflows, especially those that are waiting for a long time. You may not have a problem if there are not too many waiting but waiting workflows are never dormant, they are always in memory.

 

If you need to wait, wait for a specific date so the job will sleep. If you are waiting for a condition such as “Process execution date is after close date” this will continuously run because the Process Execution date is currently changing (Is it done now? Now? Now? How about now?)

 

One way to get around this is the technique outlined in Gus Gonzalez’s blog Scheduling Recurring Workflows. The concept here is to create a “placeholder” record at the end of workflow 1. Then schedule a bulk delete to delete these “placeholders” when the desired condition is met. Start the next workflow (the piece after the wait) on the delete of that record.

 

CRM 2013

CRM 2013 has the concept of Actions. These are processes built through the user interface that can take input and give output. These can only be instantiated with code. This makes them the opposite of custom workflows that are written in code and instantiated through the user interface.

 

Workflows can now run as the user who triggered the workflow. This can add security if you do not want users to be able to trigger certain actions even through workflow.

 

In 2013, you can also specify if the workflow should fire before or after the event. Create can only fire after the event. Delete can only fire before. Others can fire either before or after.

 

BEST PRACTICES

Always Check for a Condition – when the workflow starts, check it meets the requirements even if it is called by a parent. If you are emailing, check the record has an email address.

Always Check Conditions after a Wait – Make sure you can still do what you want to do

Use Child Workflows – break workflows into manageable pieces

Use a workflow to trigger other workflows – avoid having a large number of workflows going off one action. Check conditions in the parent to determine the child that should be called.

 

Tools

Here are some tools that came up to deal with hot issues:

If you need real-time goal-like functionality, check out North52’s calculated fields tool. It is a formula manager and is free for the first 10 formulas.

If you want to run a workflow on all children records for a given record, look for CodePlex’s “CRM 2011 Distribute Workflow Activity”

 

Keep it Classy CRM Administrators

Chris Cognetta

How to get support
Be prepared with all the information (All users? Does it work on another computer? Rollup? All environments?). Also look at the event viewer and logs to see if there is any messages that could be helpful. Check if they have done the Windows updates. Listen to the whole issue and see it happen, have screenshots as part of the issue documentation. If there are many pieces, break these out and let support determine if they are related.

Check forums for answers, but be careful that answers given do not void your warranty.

Don’t freak out unless it’s happened at least twice. Be careful of using the B-word – “Bug”. No costs for these tickets but they will look for a workaround.

Rollup Best Practices
Always stay 1 rollup behind; wait until others have found any issues. Read the ful KB article and ensure that everything is updated and tested in a development environment first. Make sure Windows Update is not running is not running on the server.

If currently on UR 11, go next to 14 or 15. If not going about 11, still release the Critical Update for CRM for Outlook. The Critical on Demand Update includes Sandboxing (Outlook will not affect CRM and vice versa) as well as health monitoring.

For the upgrade to CRM 2013, it is best to be on UR 14 or above. This will be a faster upgrade because scripts are already upgraded and some database updates are already done.

Performance
Keep an eye on stalled or failed system jobs. Be careful with Wait operations and do not use these if it will run for 6 months. These issues can impact performance. Make sure old Async jobs are cleared out.

There are some system maintenance jobs that run every day at the time of install. If you notice your system is slower every afternoon at the same time, these may need to be moved. Stagger the jobs. Use the CRM 2011 Job Editor to do this.

Keep in mind that design changes can impact performance. Instead of creating new fields, try repurposing system fields. Custom Fields should not be included in System fields. This issue will be fixed in CRM 2013.

Use Performance traces and index recommendations. Use the DM Usage stats to determine if indexes are beneficial.

For Auditing, only keep data that you really need. Clear out old data. Use Row Page Compression.

Use your fastest disk for your TempDB. It should not be on the same disk.

CRM 2013
The new Auto Save feature that is part of CRM 2013 may affect some of your workflow and plugin design. When the commit fires on the save, the workflow will fire. This can be disabled but this is depreciated. Create is still explicit, so users will have to hit save. In the real world, it will probably not cause numerous saves; usually you will work on a record for a while then maybe come back and edit more. Workflows should be running on actual field change.

Synchronous workflows run live on the form. The refresh happens in frame, no need to refresh the page.

When upgrading, be sure to set the flag to ensure that indexes are maintained.

CRM for Outlook in CRM 2013
When you upgrade to CRM 2013, users can keep the old Outlook client if it is rollup UR 15 or UR 15v2 (when released). All features will work except you cannot go offline.

The CRM 2013 CRM for Outlook includes Server Side Sync. The sync will take place directly between CRM and Exchange. This will work with CRM 2011 UR 15. This means that a tracked conversation will automatically track at the server, no need to always keep Outlook open.

Email Router logs will not be in CRM. There will be easy to read errors, the ability to view emails, etc.

 

How to become a CRM Superstar

Gus Gonzalez
Chris Cognetta
Jerry Lentz
Matt Witteman
Gretchen Opferkew


Becoming a CRM Superstar does not necessarily mean you are a CRM MVP, it just means you do your job better than other people in the same position. It is a love and passion for the product. It requires commitment to present, blog and help the community. This is not a career goal by a love.

For more information about CRM MVP’s you can check out Gus Gonzalez’s blog – 20 Questions with 20 MVP’s.

Certifications
Certifications can be good to set yourself apart and also to give a depth of knowledge in areas you might not use. They do not actually prove you can do the work but shows companies you are serious. Also, the number of certified people that work for a company impacts their partner level.

The new Certifications for CRM 2013 will be harder. There will be a separate CRM Online certification that will not require as much.

Certification in SQL or C++ may mean more because they show you understand things behind the scenes.

How to Learn
To learn more about CRM you can sign up to present on a topic you are not very familiar with, this will cause you to learn it.

Organize a study group. You can learn together. This is a focused time that provides accountability. Try building a solution for a fictional company including system hierarchy and SSRS Reporting.

Set up your own VM or use a CRM Online trial. Test and play.

Get on twitter and follow all the MVPs and Product team. Follow Dynamics Communities.

Tuesday, November 5, 2013

CRMUG Summit Day 1 Key Takeaways


Making your CRM Case and Designing your Process Roundtable

Gretchen Opferkew (MVP, PowerObjects)

 

User Adoption

 

Work to solve problems and look for quick wins. Look for pain points that can be addressed. Some easy quick wins can include views, dashboards and simplifying the form.

 

Be careful to avoid having too much customization and always trying to fit the old processes. Be careful not to have too many Required Fields – if they do not have data, these will be filled with garbage. Always keep the end goal in mind; you don’t want to need to rework pieces because of your earlier quick win.

 

Train up power users that can assist their group. These people are your tier 1 support and your evangelists for the tool. It is good to have employees show other employees because they know the language and process.

 

Modeling your Process

 

As with user Adoption it is most important to keep the end goal in mind. Document the current process but look at how it can be improved in CRM. Watch users work and look for pain points that the new process can address.

 

Know what Business Intelligence the executives are looking for. This will drive the information that you want to capture and how you want it to be stored.

 

Mobile

Mobile can be a great way to drive user adoption but can also be a security concern for some organizations (left logged in, lost, etc.). Accessing CRM via your Mobile device will be getting easier with CRM 2013.

When planning your mobile rollout keep in mind who will be using the tool, how they will use it and the data they want to capture. Use Option Sets to make data entry easier, notes can be entered later. Pictures are a huge benefit of mobile – they can document a quality issue and send it off right then.

 

Upgrading

 

The Upgrade from CRM 2011 to CRM 2013 is a big Change Management project. You will need to revisit the form and processes to make it fit in to the new 2013 model.

 

Use this opportunity and “Re-launch” the tool. Make it exciting and showcase improvements and quick wins. Set up CRM’s position in the organization. Get buy-in early and have Executives promote the tool and the importance of the changes.

 

Techie Talk: Upgrading Complex Systems

Alex Fagundes (MVP, PowerObjects)

Jerry Weinstock (MVP, CRM Innovation)

 

This was an excellent session with lots of great information. If you have access to CRMUG Collaborate make sure you check out the slides when they are posted. The slides will include links to tools and blogs that were mentioned in the session.

 

Upgrading

 

All of your 2011 integrations should upgrade without issue. Use the Custom Code evaluator tool to check if your JavaScript will upgrade. Keep in mind that even if you were only on CRM 2011 you could have some 4.0 code that was found on blogs and such.

 

2013 uses the same endpoints as 2011. These will probably change again but not as frequently. The 2011 endpoints are pretty efficient and flexible, so they will be supported at least through the next version.

 

Forms will be upgraded as classic forms. You will need to go to each form and use the “Merge Form” button to move it into the 2013 form. So every form in the system will need to be touched and updated.

 

You must be on Rollup 6, 14 or above to upgrade. A major change with the upgrade is combining the two tables per entity that currently exist into one table. This can be postponed and done entity by entity. This will need to be done before the next major release.

 

Training

 

The transition for CRM 4.0 to CRM 2011 was fairly easy because of the similar experience. This is not true for CRM 2013. It is a big leap for users. Be prepared with lots of training materials – videos, quick reference guides (before and after), recorded webinars, etc.

 

Set up a full test environment for users to access. Consider using gamification or other incentives for logging in. Turn on auditing so you know that users are actually testing.

Start with baseline training and then do training specific for each group.

 

CRM Roll-up and Roll-out

Alex Fagundes (MVP, PowerObjects)

 

This was another great session full of information. This is just a quick summary, access the slides or search online for more information.

 

CRM Update Rollups

 

Rollups are Cumulative. UR 6 is the new base for server and OL Client, so all new media includes UR 6. UR 6 and UR 12 cannot be uninstalled. It is always good to stay one Rollup behind. Also, always try to keep everything on the same Rollup (Server, OL Client, Email Router, etc.).

 

Top 7 Server Optimizations
  1. If UR < 10, adjust the EnableRetrieveMultipleOptimization setting for your organization
  2. Enable SOAP and XML Compress for Faster Outlook CRM Client
  3. Tune Threads (if you have a dedicated machine) to use all the available resources, this is dependent on the number of CPUs.
  4. Follow SQL Server best practices – Set Max Degree of Parallelism to 1, look at Microsoft White papers, separate OS/Data/Log/Temp TB drives, and watch performance metrics.
  5. Create custom indexes
  6. Run the recommended scripts to clean up the POA table (every 6 months) and AsyncOperationBase Table (Workflows, monthly).
  7. Adjust the Email Router settings if you have a large number of emails (by default it grabs up to 1000 waiting emails every 60 seconds)

 

CRM for Outlook

 
  1. Minimum requirements = minimum performance
  2. Offline Client = Mini CRM System. This requires more power and more planning. Also keep Data Security in mind and consider encryption.
  3. Antivirus software can drastically slow down your performance if it has a URL scanner. To fix, whitelist your URL.
  4. Update the System Synchronization Settings. Change Address Book from 1 hour to 24 hours; change the other settings to an hour or greater.
  5. Turn off MapiCaching on low power machines.
  6. Keep up to date on your patches.
  7. Keep your inbox small. There are some ways to improve performance if you must have a large inbox such as some registry changes and keeping an eye on your OST Fragmentation.
  8. Update the Outlook Filters, Sync Rules.
  9. Use the Diagnostic cool to clear temp files and create log files when the issue can be reproduced.
  10. Download the Trace File Viewer from CodePlex to make reviewing issue log files easier.

 

Internet Explorer Best Practices

 
  1. Use AD Group policy to roll out changes
  2. Add CRM to local or trusted sites
  3. Want to make use of the temporary internet cache for images and Java Script. Adjust the SSL settings to cache files such as icons.
  4. Keep in mind common issues: different default browsers, multiple toolbars, etc.
  5. Use the CRM Network/Browser Diagnostic tool to just Latency, Bandwidth, JavaScript load time, etc.

 

Partner Showcase: Users Want a Great Experience

Jacob Cynamom-Murphy (Sonoma Partners)

 

There is a difference between User Interface and User Experience. The Interface is just what it is. The Experience is the process and how the user feels about it. Mobile applications can greatly enhance use experience. It is most cost effective to use the native functionality; you can start with this and then look for new options as needed. Keep in mind the new MoCA app is not offline capable. Also it requires your organization be Online or an IFD. Custom Mobile Apps can be created that do not require an IFD.

 

To improve your user experience, follow Microsoft’s lead with CRM 2013 in 4 key ways:
  1. Reduce code. This is easier for administrators and results in the same experience.
  2. Clean up your forms by hiding fields/sections as necessary or creating role-based forms.
  3. Streamline navigating but hiding sub areas that are not needed (look at visual site map editor in the Marketplace)
  4. Simplify Search – CRM 2013 now has the Multi Entity search for Mobile and Sonoma Partners has an add-in to enable this in the browser.

 

Techie Talk: Performance and Optimization Panel

Sarah Jelinek (Network Center Inc.)

Mitch Milam (XRM Coaches)

Matt Wittemann (ClickDimensions)

 

 

This was a panel session so some of the topics covered were specific to people in the room. Many of the tips covered were also mentioned in the earlier sessions. So I will try to mention the unique information.

 

Outlook Offline Client Sync Errors

Make sure to update to the CRM for Outlook Critical Update version if you are on a lower rollup. Then work on upgrading your server and Outlook Client to UR 15, this will enforce SQL 4.0 which allows users to pull more than 2 GB of data at a time.

 

Multiple JS Web Resources per form, should we consolidate?

If this is JS from an ISV solution you do not want to consolidate. If you do, then you will be responsible for ensuring all those files are updated when an update to the solution is released.

 

It is good to minimize round trips but maintenance is still a consideration. Instead of consolidating, check the IE settings that determine how long JS web resources are cached and enable IIS compression. Also review your role-based forms and ensure that only necessary scripts are included.

 

How to Handle a Large Activity Table

If your Activity table is becoming large you can clear out old Activities that you no longer need and perhaps save a backup for history. Also you can use SQL partitioning to migrate off to another table. This is supported by Microsoft, but they will not change the product if you have any issues.

 

If removing the Activities is not an option you can instead look at the Annotation table (notes/attachments) and the email attachments. Sometimes these are a larger problem than the actual Activities. At a minimum, you should turn on compression for those tables.

 

Script Issues in UR 12+

If you are having any script issues after upgrading above UR 11 it could be because the script load asynchronously. To fix this you can use HeadJS to set the order but this is not supported and will break CRM dependency tracking.

You should upgrade to UR 15 where it is fixed but not the same as it was pre-UR 12. The new style adds some complexity and needs to be debugged differently (see the CRM in the Field blog on this topic).

 
In CRM 2013 you can check for the namespace and use a timer to recheck if necessary. Then you will know when scripts are being loaded.