Flow Buttons on Tables

Give a table a button on every row that runs a Persiv Automate flow over that row. If the flow sends an email, the person clicking can review it and reword it before it is sent, without being able to change the row's data in it.

What readers see

A table with flow buttons gets an extra column between the row number and the first data column. With one flow, each row shows that flow's own icon, and clicking it runs the flow on that row. With several flows, each row shows a stack icon that opens a menu to pick one.

  • Several rows at once. Include rows with right-click → Include this value, then use the stack icon in the column header or the chart toolbar. A button runs on several rows only if Allow on several selected rows is on for it.
  • Run history. Right-click a row's button and choose Run history to see every run on that row: its status, when it started, and who ran it. Scheduled runs show Schedule under Run by. Runs from before this was recorded show a dash. A dot on the button shows the last run's outcome.

Adding a flow button

In the report builder, select the table and open Flows in the right-hand config panel. Choose Add flow button, then:

SettingWhat it does
Button labelOptional. Left blank, the button is icon-only, and menus show the flow's name.
FlowSearch for an active flow. Only flows whose trigger is API call can be run from PersivX.
Button colour, IconHow the button looks. Two buttons on one table can't share an icon.
Allow on several selected rowsOff by default. When off, the button runs on one row at a time, and the server refuses anything else.
Review email before sendingClicking the button, on one row or a selection, opens the flow's email for review instead of running straight away. See below. Turned on automatically when the chosen flow has an email step set up for review.
Columns to sendWhich table columns go to the flow, and the name the flow reads each one by. Unmapped columns are never sent. When the flow declares its expected keys, matching columns are filled in for you.

Drill-down tables. A flow can run on a row at any level of a drill-down table, such as a customer row under a state under a channel. It uses the columns shown at that row's level. The Columns to send list shows the columns of the level the table is currently showing, so drill down to a row at the level you want before mapping its columns. A button whose columns exist only on deeper rows can't run on a top-level row; it says which level to use instead.

Pivot tables work the same way. A row is one row of the pivot as shown, and each pivoted column (for example Sales amount · Jan) can be mapped like any other.

A row is identified by the attributes set in Tie Comment to Attributes, or by the table's group-by attributes when that is empty. Only attributes that appear as columns count, so on a pivot table the row is identified by its row headers, not the pivoted dimensions. A query-mode table needs Tie Comment to Attributes set before flow buttons can be added.

Rows are re-read on the server

Clicking a button sends only which row was clicked. PersivX runs the table's query again as the button's run-as user (whoever added the button), applying that user's data governance rules, and sends that row's mapped columns. The flow never receives values the browser supplied.

Reviewing an email before it is sent

Use this when a person should check, or reword, an email before it goes: chasing an invoice, replying to a customer, escalating a case. Two things have to be set up:

  1. In Persiv Automate, open the flow's Send email step. Write the To, Subject and Body as usual, using {{key}} for row values. Under Review in PersivX, turn on Let PersivX users review before sending. Then choose what the reviewer may change: Allow changing recipients (To), Allow changing the subject and Allow changing the body. Each is off by default. Publish the flow.
  2. In PersivX, turn on Review email before sending on the table's flow button.

Clicking the button opens the email. Every {{key}} appears as a highlighted field. With one row it shows that row's value, and with several rows it shows the field's name. Send runs the flow, and Cancel runs nothing. Undo my changes puts the email back as the flow wrote it.

Values can't be edited

A highlighted field is locked. In the subject and message, the fields the flow's template puts there can't be changed or removed: you can only change the words around them. You can add more fields with the Insert buttons below the message, and remove the ones you added. What PersivX sends back is your wording with the fields still in it, and Persiv Automate fills in each row's values when the flow runs. So a reviewed email can never carry a mistyped or altered value. And the same edit works for a whole selection: with three rows selected, each of the three emails gets its own row's values.

Fields with a dashed outline are values a later step adds, such as a Find record lookup. They are filled in when the flow runs too.

Only fields a flow already uses, or declares on its API call trigger, can be inserted. Typing {{something_else}} by hand is refused, so an edit can't pull in data the flow author didn't put in the email.

Choosing recipients from the row

When the flow allows changing recipients, every row field that holds an email address (an owner, a manager, a customer contact) is listed under Send to. Click one to add it to To, and click again to remove it. It is added as a field, so over a selection each row's email goes to that row's address. Fixed addresses can also be typed, separated by commas.

What is worth knowing

  • Template fields stay. Pressing Backspace or Delete next to a template field, or selecting and replacing text that includes one, leaves the field in place. A message says why. In To, recipients can be added and removed freely when the flow allows changing them.
  • Only what you change is overridden. A field left as it was uses the flow's own template.
  • Selections need permission. Reviewing over several rows is available only when Allow on several selected rows is on for the button. Each row still gets its own email.
  • Several email steps. If the flow has more than one email step set up for review, the dialog shows each one. A step on a branch the row doesn't take is shown but not sent.
  • Entry details and PDFs set on the email step are still added when the flow runs. The dialog notes when they apply.
  • Permissions are enforced by Persiv Automate. The editable fields and allowed values come from the published flow. A change outside them is refused, even if it is sent directly to the API.
  • If the flow has no email step set up for review, a reviewing button runs straight away, as if the option were off.