Type System
Overview
Any programming language presents a type system, and FlowOn Logic is no exception. However, rather than introducing a proprietary type system, FlowOn Logic leverages the Dynamics 365 built-in type system. This means the types you work with in FlowOn Logic are the same types you already use when configuring Dynamics 365 fields, relationships, and data.
For Dynamics 365 functional consultants, this design choice is significant. You don't need to learn new data types or understand type conversion rules—the types in FlowOn Logic are the familiar types you work with every day when creating fields, configuring forms, and building views.
Supported Types
FlowOn Logic supports the following Dynamics 365 data types:
| Type | Description | Example Values |
|---|---|---|
| Boolean | True or false value | true, false |
| DateTime | Date and time value | 2026-01-15 14:30:00 |
| Decimal | Precise numeric value with decimal places | 1234.56, 0.001 |
| Entity | A complete Dynamics 365 record | An Account record, a Contact record |
| Entity Reference | A reference (lookup) to another record | A lookup to the parent Account |
| Option Set | A choice from a predefined list | Status: Active, Inactive |
| Float | Floating-point numeric value | 3.14159, 2.71828 |
| Integer | Whole number value | 42, -100, 0 |
| Money | Currency value with precision | $1,500.00, €2,340.50 |
| String | Text value | "Hello World", "Customer Name" |
Type Usage in Logic
Every input and output in FlowOn Logic has a name and a type. When you create a Logic Block, you define:
- Inputs: The data the block receives, each with a name and type
- Outputs: The data the block produces, each with a name and type
For example, a "Calculate Discount" block might have:
- Inputs:
OrderAmount(Money),CustomerTier(Option Set),IsNewCustomer(Boolean) - Output:
DiscountPercentage(Decimal)
The type system ensures that data flows correctly through your logic. You cannot connect a String output to a Money input—the system enforces type compatibility, catching errors at design time rather than runtime.
Working with Entity and Entity Reference
Two types deserve special attention: Entity and Entity Reference.
Entity Reference is a pointer to a record—like a lookup field in Dynamics 365. It contains just enough information to identify the record (entity type and record ID) but doesn't contain the record's data. Use Entity Reference when you need to reference a record but don't need its fields.
Entity is a complete record with all its fields and values. Use Entity when you need to access or manipulate the record's data. FlowOn Logic can retrieve Entity data from Dynamics 365 when needed, allowing your logic to access fields from related records.