The latest member of the Power Platform family of tools brings business data into Teams collaborations Credit: Tempura / Aleksei Derin / Getty Images Microsoft’s family of low-code and no-code application tools is one of its fastest growing developer platforms. Building on top of technologies from the Dynamics line-of-business applications and from Office, the Power Platform is perhaps best thought of as the spiritual successor to familiar tools such as Visual Basic for Applications: a quick way of building those little applications to solve problems that don’t merit diverting limited developer resources. Until recently much of the Power Platform tools focused on building and managing workflows using Power Automate for basic business process automation and Power Apps as a basic front-end application builder, with a focus on constructing forms and queries. Much like Visual Basic did for client-server computing, they’re a translation for general audiences of the API and message foundations of modern, cloud-centric, distributed computing. Linking the Power Platform to business data Drill down into the Power Platform architecture and you will find the Common Data Model (CDM), Microsoft’s extensible business object storage layer. Preconfigured with a set of standard business entities, the CDM is an attempt to give a standard foundation to the apps built by users around the world, allowing them to be shared both inside and outside a business without revealing critical intellectual property. Microsoft regularly expands the core Common Data Model entity model, adding new data types to support different business processes. There’s a lot of focus on application development partners with tools such as this, since they’re key to implementing large-scale ERP and CRM applications in Dynamics. Microsoft used its recent Inspire partner event to rename the Common Data Service tools that support, manage, and work with Common Data Model entities to Dataflex Pro. At the same time, it unveiled a new set of tools for working with Dataflex Pro in Power Apps, in Power Virtual Agents, and in the Teams collaboration tool. Branded as Dataflex, it’s intended to let anyone work with the business objects stored in line-of-business systems. Using Dataflex, anyone who can write an Excel macro should be able to build and share applications that can query, display, and update Dataflex Pro records. Using Dataflex in Teams Dataflex apps are built inside Teams, using a grid to select items from your business’s Dataflex Pro environment to create an application. Once you’ve built that application, you can quickly tie it to a workflow via Power Automate, with the option of choosing Instant, Scheduled, or Automated flows. This should allow you to trigger workflows inside Teams by, say, updating an order field to automatically update a machine-learning-driven predictive dashboard running in Power BI. The combination of Teams, Dataflex, and Power Automate points to an interesting future for Teams. It’s clear that collaboration tools such as Teams are key to effective remote working, and with no sign of an end to employees working from home, building automation around them should help to reduce cognitive overload and keep context switching to a minimum. If I can switch to a Teams tab to update the status of some code I’m working on, having that status update automatically update a project plan and simultaneously alert my manager that code is ready for test, then I haven’t had to switch to Project or send an e-mail. All I need to do is go back to my IDE and write more code. Building Dataflex apps should be relatively easy; you can use Team’s existing group and role-based access controls to manage access to data. Applications are built inside Teams, and there’s no need to worry about storage, as that’s managed by the underlying Power Platform cloud services. You start by creating a table and then populating it with standard data types before publishing it as an application. The Dataflex service works with relational content, files, and even image data; it’s ideal for quickly putting together content-driven applications that can manage all the documentation needed in a workflow. Once stored through Teams, that data can be accessed from Power Apps or even via a Power Virtual Agent chatbot. You won’t need to design a custom UI; the table is the user interface. This makes it easier to train users how to work with Dataflex, and once trained they can quickly pick up apps developed by colleagues and add them to their workflow. Microsoft will be providing a set of prebuilt Dataflex applications focused on frontline workers, which can be used as a template for your own applications. Converging the Microsoft graphs What’s perhaps most interesting is that Dataflex is the convergence of two of Microsoft’s graphs: the Microsoft Graph that powers much of Microsoft 365 and the Common Data Model in Dataflex Pro. By using Teams as the UI and management layer, Microsoft Graph controls access to your line-of-business data at the same time it gives users the ability to build their own views onto that data that fit with their jobs and tasks. Overlaying the people-centric Microsoft Graph on the application-centric Dataflex Pro does limit what can be done with that data, but at the same time, it adds the opportunity to increase its reach significantly. Out of the box, Dataflex is a useful and relatively powerful tool. It’s more powerful when you use it in conjunction with Dataflex Pro, as this allows you to create custom entities that can then be used in Dataflex applications. Entities can have multiple fields, and unlike familiar freeform databases, you can restrict the content of fields to predetermined selections. That makes it easier to build applications around them. For example, an entity holding data about a field service appointment can include fields that indicate the reason for an appointment and its time, with a peerlike many-to-many relationship to an address entity for a customer that comes from a CRM application. The structure of a Dataflex Pro entity can help construct forms and other views in Dataflex or in Power Apps. Once a form has been generated you can customize the layout and add other entities as required, quickly building a form-view application for queries, updates, and new data. Once that data is in Dataflex Pro, it’s accessible by any other application that can work with that data, whether it’s a custom app in Teams or one of the Dynamics applications. Perhaps the most important aspect of working with both Dataflex and Dataflex Pro is that the underlying entity model takes us away from using specialized query languages. Queries are now searches, with predefined entity relationships encoding more information about the structure of our data and how it’s intended to be used. There’s still a need for specialized skills in constructing those relationships, but once they’re in place, anyone can start to build applications that can use them, either with or without code. Related content feature 14 great preprocessors for developers who love to code Sometimes it seems like the rules of programming are designed to make coding a chore. Here are 14 ways preprocessors can help make software development fun again. By Peter Wayner Nov 18, 2024 10 mins Development Tools Software Development feature Designing the APIs that accidentally power businesses Well-designed APIs, even those often-neglected internal APIs, make developers more productive and businesses more agile. By Jean Yang Nov 18, 2024 6 mins APIs Software Development news Spin 3.0 supports polyglot development using Wasm components Fermyon’s open source framework for building server-side WebAssembly apps allows developers to compose apps from components created with different languages. By Paul Krill Nov 18, 2024 2 mins Microservices Serverless Computing Development Libraries and Frameworks news Go language evolving for future hardware, AI workloads The Go team is working to adapt Go to large multicore systems, the latest hardware instructions, and the needs of developers of large-scale AI systems. By Paul Krill Nov 15, 2024 3 mins Google Go Generative AI Programming Languages Resources Videos