Turn on Teams/Skype Meeting Recording and Transcription for Entire Organization

<# .SYNOPSIS Turn on meeting recording and transcription for entire organization .PREREQUISITES Download the Skype for Business Online Connector Module - .ADDITIONAL RESOURCES Teams cloud meeting recording - Manage Skype for Business Online with Office 365 PowerShell - #> Import-Module SkypeOnlineConnector # Update this to a user who is a Teams Administrator $userName="" $message = "Please Login Using Your Office 365 Credentials" $credentials = Get-Credential -UserName $userName -Message $message $TeamsSession = New-CsOnlineSession -Credential $credentials Import-PSSession $TeamsSession # Turns on recording and transcription for everyone withing the organization Set-CsTeamsM…

Validate Solution Using the PowerApp Checker (Includes On-Premise Solution)

I recently saw the article on how to validate solutions using the PowerApps Solution Checker and wanted to share the link.  The Checker will work for all on-line and on-premise solution starting with Dynamics 2011.  When I have some more time I'll write up an article on how to use this in DevOps.

Automatically validate your solutions using the PowerApps checker PowerShell Module
PowerApps Checker - Powershell

Finding Largest Files on Drive Using Powershell

Recently a colleague of mine was having issues with low drive space on one of our servers.  Because this is a clients system i am unable to copy over WinDirStat which is what i would usually use to determine what is eating up all the drive space.  Instead I ended up using PowerShell to show me to top files which were eating up space.

dir -path c:\ -rec -ErrorAction SilentlyContinue | sort -desc Length | select -first 20

Generating Test Files of A Specific Size

While attempting to unit test the max upload size of files to CRM I needed to generates files of different sizes.  Since Windows XP came out Microsoft has included a utility called fsutil that you can run at the command line to do just this thing.

fsutil file createnew filename filesizeinbytes

1. Open a Command Prompt (As Administrator) 2. Run the following command fsutil file createnew "c:\temp\test5.txt" 5242880
If you need to convert from Megabytes to Bytes you can use this quick converter: Megabytes to Bytes Converter

Cannot Access SharePoint Files Without Visitor Access in Dynamics CRM Documents Grid

Recently while building a system which synchronized Dynamics permissions to SharePoint we came upon an error which caused the SharePoint Document grid to tell us that we did not have the correct permissions to access the files.  Our code was creating SharePoint document libraries with their inheritance broken, and then synchronizing the security.  When we viewed the document libraries in SharePoint it appears the users had all the permissions they needed but upon opening the Documents grid in Dynamics CRM we would receive an error.  What we found was that the users needed to have at least read access to the root SharePoint site.  After adding the users into the site Visitors group the grid starting showing users the files they had access to.

SharePoint Documents Grid Error in Dynamics CRM

After setting up Server based authentication between SharePoint and Dynamics on several instances we were having issues on certain instances where users would attempt to access the Document grid within CRM and would receive the following error "You don't have permissions to view files in this location. Contact your Microsoft OneDrive owner or SharePoint administrator for access."  The grid ribbon buttons still loaded and if we clicked on the Open Location button SharePoint would open with all the files displaying which told us that the user had the required permissions.

After troubleshooting with a Microsoft tech for a few hours we concluded that the fix was populating the SharePoint Email Address field on the User record for each user within CRM.  Another important thing to note here is that we were using Azure AD account which had an account name of but the email address was (no ad in the domain name).  I had previously found the articles…

Dynamics Multi Entity Search (Global Search) Entity Selection Using C#

While coming up with deployment scripts i was tasked to ensure that the Dynamics Global Search had specific entities selected.  By utilizing one the undocumented SDK message i was able to set this data. (list of undocumented messages)

The manual way of updating these settings
1. Navigate to Settings -> Administration -> System Settings
2. Click on the button for Select entities for categories search
3. Add/Remove the entities you want utilizing the selection screen.

How to do it utilizing code:

var request = new OrganizationRequest("SaveEntityGroupConfiguration"); //create a new QuickFindCofigurationCollection var qfCollection = new QuickFindConfigurationCollection(); //add the entities you want to include in Global Search qfCollection.Add(new QuickFindConfiguration("contact")); qfCollection.Add(new QuickFindConfiguration("incident")); //set the parameters for the request. It took several hours and digging through the //CRM Sdk dlls to find the …