Skip to content
flowon.com

Logic Composer

Logic blocks

Choose the right type of logic block for a calculation, decision or check, and create your first one.

A logic block takes inputs and returns a result that flows, recipes, business processes and other blocks reuse. It can read Dataverse data on its Data tab, but it never changes data, so you can call it from anywhere without side effects. Use a block to answer a question, such as “what discount applies?”, “who approves this?” or “is this order ready to submit?”, and a logic flow to act on the answer.

Type What it does Returns Example
Formula Calculates one value from its inputs. result, one value or a list Quote total = price × quantity − discount
Decision table Maps combinations of conditions to outcomes, row by row. The first matching row wins. The outputs you define Customer segment × amount → discount %
Decision tree Asks one question at a time until it reaches an outcome. The outputs you define Amount over 50,000? → Risk? → Approver
Validation Checks one rule. result: Yes when valid The contact is at least 18 years old
Validation set Checks several named rules and reports which failed. isValid, plus failedValidation or failedValidations A quote has a customer, a price list and at least one product
flowchart LR
  Q{Which block?} -->|One calculated value| F[Formula]
  Q -->|Same questions for every case| T[Decision table]
  Q -->|Next question depends on the answer| R[Decision tree]
  Q -->|One check| VA[Validation]
  Q -->|Several checks, report which failed| VS[Validation set]
  • Formula when the answer is a calculation or a single derived value, even a long one with If Condition or Switch.
  • Decision table when several inputs combine into one or more outcomes and every case asks the same questions. Business users can review it like a spreadsheet.
  • Decision tree when different cases ask different questions, for example only enterprise customers need a risk check.
  • Validation for one yes-or-no rule you want to reuse on its own, for example in a recipe that stops a save.
  • Validation set for a group of related rules where users should learn every reason (or the first reason) the data is not valid.
  1. Go to LogicLogic BlocksNew.
  2. Enter a Name and choose the Project. Both are fixed after the first save.
  3. On What should this block work out?, choose a type card. This fills Block Type. Until the block is saved you can switch type, but switching starts the logic over.
  4. Follow the numbered steps on the block tab. For example, a decision table asks you to Add a decision, Add an outcome, then Fill in the rows.
  5. Add inputs on the Input tab and any data the block needs on the Data tab.
  6. Optionally, add a Precondition, a Description on the Docs tab, and turn on Expose as MCP Tool or Expose as Dataverse Action.
  7. Save the form. The block saves only when it has no problems.
  8. Select Run to test it.

The editor opens on the block tab, which is named after the type. The full set of tabs is Input, Data, Precondition, Output, Decisions, the block tab, and Templates; Output and Decisions appear only for decision tables and trees. See Working in Composer.

  • From expressions anywhere in Logic Fabric, with Run Logic Block: bind the inputs by name, pick one output. See Calling logic blocks.
  • From logic flows, as a step. See Logic steps.
  • From recipes: validation and validation set blocks can stop a create, update or delete. See Logic recipes.
  • From outside, as an MCP tool or a Dataverse action. See AI and API exposure.

A block that something uses cannot be deleted. See Dependencies.