FlowOn Logic
FlowOn Logic is a declarative programming framework for Microsoft Dynamics 365 that enables you to build complex business logic without writing code. Using a visual, no-code approach, you can create validations, calculations, workflows, and integrations that run natively within Dynamics 365.
Getting Started
| Section | Description |
|---|---|
| Introduction | Overview of FlowOn Logic and its capabilities |
| Setup & Installation | Solution components, security roles, and licensing |
| Type System | Data types available in FlowOn Logic |
| Project | Organizing logic into projects and FLoP packages |
Logic Blocks
Logic Blocks are immutable functions for calculations. See the Logic Blocks section for details.
| Construct | Purpose | Best For |
|---|---|---|
| Formula | Single formula returning one value | Calculations, lookups, transformations |
| Decision Table | Tabular rules with conditions and outputs | Multi-condition business rules |
| Decision Tree | Hierarchical branching logic | Complex routing, classifications |
| Validation | Single validation rule | Field-level validation |
| Validation Set | Group of related validations | Entity-level validation |
Logic Flows
Logic Flows orchestrate multi-step processes. See the Logic Flows section for details.
| Step Category | Purpose |
|---|---|
| Data Operations | Create, read, update, delete records |
| Relationships | Manage entity relationships |
| Flow Control | Conditions, switches, loops, iterators |
| Variables | Store and manage data during execution |
| Integration | Call REST APIs, send emails |
| Invocation | Run Logic Blocks, Flows, and processes |
| Events | Publish business events |
| Error Handling | Raise errors, halt execution |
| Example | Complete flow example |
Event-Driven Logic
| Section | Description |
|---|---|
| Logic Recipe | Entity event handlers for Create, Update, Delete |
| Event | Publish-subscribe pattern for decoupled logic |
| Schedule | Time-based execution of Logic Flows |
Configuration & Integration
| Section | Description |
|---|---|
| Configuration | Global variables shared across constructs |
| Localized Resource | Multi-language strings for internationalization |
| Service Connection | External REST API integration |
Quick Reference
When to Use Each Construct
Need to calculate a single value?
└── Use a Logic Block
Need to evaluate multiple conditions with multiple outputs?
└── Use a Decision Table
Need hierarchical, branching logic?
└── Use a Decision Tree
Need to validate a single condition?
└── Use a Validation
Need to validate multiple related conditions?
└── Use a Validation Set
Need multi-step processing, integrations, or workflows?
└── Use a Logic Flow
Event Handling at a Glance
Entity Created/Updated/Deleted?
└── Use a Logic Recipe
Need decoupled, publish-subscribe events?
└── Use an Event with Event Handlers
Need scheduled/recurring execution?
└── Use a Schedule