Microsoft recently released a new suite of Azure cloud-based services, including the Common Data Service, Microsoft Flow, Power Apps, and Azure Logic Apps. The ability of these services to offer great power while hiding tremendous complexity is unprecedented, and their timely introduction is yet another indication that business process and management is slowly but surely moving to the cloud.
Let’s take a common business scenario: your organization tracks opportunities in Salesforce CRM, manages actual work performed on each won deal in Workday, and calculates realized revenue in Oracle Financials. Entities like Client, Employee, and Product are referenced across all systems and must be reported on in a consistent way. So what do you do?
Yesterday, the answer was: you need to build a data warehouse. Today, a multitude of answers are available, including data federation and virtualization, and using your BI tool to perform data preparation and integration. In 2016 Microsoft introduced a new option, one that makes good use of the Azure Cloud Fabric to create a foundation for the new Microsoft Business Application Platform, with an advanced data service built right in.
The Common Data Service (CDS) is an Azure-based service which allows you to securely store, manage and retrieve data within a set of standard entities defined in the Microsoft Common Data Model (CDM). CDM defines the most commonly used entities across common business processes like Sales, Purchasing, and Customer Service. This includes standard structures for a customer, an employee, an account, a product, a vendor, and so on, all designed according to best practices.
Fig 1. Microsoft Business Application Platform
The Common Data Service allows you to update and query these data elements using one of the applications in the platform: Power BI for dashboards and data analytics, Power Apps for developing code-less apps for PC and mobile devices, and Microsoft Flow for linking your business processes in logical, actionable ways. Depending on your specific requirements, you have the ability to use or extend the standard entities or create completely custom entities to match the complexities of your actual business processes.
CDS is built with security and scalability at the core. Data is encrypted at rest which makes unauthorized attempts to access these data an almost impossibility. At the same time, CDS is built using the best of Azure technologies such as Service Fabric and elastic SQL, which ensures that capacity and performance aligns with the ever-changing needs of your organization.
To give you an idea how powerful this is, let's see how we can use Microsoft Flow to create an app that copies newly created Opportunities in Salesforce into a CDS entity and generates a notification on your phone about the new opportunity, with a link to the new record in Salesforce. In case you are not familiar with it, Flow is a new entry in the business automation tools. If you are fond of home automation (you know, flash lights and get notified when the liquor cabinet has been opened), then you may have heard of If This Then That (IFTTT). You could call Microsoft Flow "IFTTT for Business".
Before we can create the automation descried above, we also need to sign up for Power Apps, as CDS is not offered as a standalone but as a component of Power Apps. Once in, create a new database (MDEnv in my case), then return to Flow. (The list of actions currently available in Flow is already impressive, and growing. You can react to events from Twitter, Facebook, Yammer, Instagram, SharePoint, OneDrive, Dropbox, Google Drive, as well as business applications like Salesforce and Microsoft Dynamics. You can store data, send it to other apps, or notify users through email or mobile phones.)
Without writing a line of code, we can now create a connection to Salesforce, configure the flow to be triggered by a new Opportunity, use fields in the SF Opportunity to instantiate a record in CDS, and push a custom notification to our phone (the UI makes it easy for you to pick field values from previous steps to customize each step). When done, the flow should look like this:
Fig 2. Flow Steps
(You need to download the Microsoft Flow app from the app store in order to receive push notifications on your mobile device.)
A few closing notes: Microsoft Flow empowers business users to quickly build simple to moderate integrations without the need to involve IT. However, it is not uncommon for a simple business workflow to grow into a mission critical process and require complex functionality in terms of scalability, availability, auditing, and security. Azure Logical Apps is the answer for such complex integrations. Flow is built on top of Logical Apps, and you can easily convert a flow into a logical app.
Hopefully, this gives you an idea of how you can quickly create powerful business integrations across departments, across devices, and across geographical locations using Flow, Power Apps, Logical Apps, and the Common Data Service. In a future post, I’ll show you how we can now create a Power BI report and point it to our new CDS database for some cool analytics.
Read more about Power Apps and CDS here: https://powerapps.microsoft.com/en-us/blog/announcing-powerapps-common-data-model/.
Read more about Microsoft Flow here: https://flow.microsoft.com/en-us/.
To learn more about the strategy behind migrating your business to the cloud or success with Microsoft Azure Cloud, watch our webinar Let's Talk About the Elephant in the Room - The Cloud.