Update table from Input Controls Block

Hello!
I was wondering if it is possible to update a data table through the Input Controls Block of a dashboard. For example:

image

Wanting to change the value of a singe row/column, I’ve tried something like this:

image
image

But apparently this is not how it works.
I would appreciate it if someone could give me a hand…

Yes, it is possible.

For the Table: Insert Row’s JSON template, you’ll want to format the template as:

[
  {
    "columnName": "value 1"
  },
  ...
]

For example, if I have:

  • A data table with a column named Month

  • An Input Controls Block with an input configured to use Template ID month-0

  • On that same Input Controls Block, a button trigger configured to execute a selected Virtual Button with the payload:

{
	"month": "{{month-0}}"
}

That will make the input data available at payload path data.month.

So, I would then configure the Table: Insert Row Node to use the following JSON Template:

  {
    "Month": "{{data.month}}"
  }

I believe the issue is with your syntax in the Row Data JSON Template. Please let us know if this helps!

Thanks! The issue was, indeed, the syntax.

However, I stumbled into another problem using the Table : Update Row Node: the input control was changing only the first row of the table, simply overwriting the month name with the value of {{data.month}}. Considering i’m working with a small data-table, using a Switch Node and updating the table based on the Row ID and month name worked perfectly. But for a larger table, is it possible to update rows based on a single name?
For example,
image
I want every row with “Feb” month to have the value updated through the input control. Using something like

 {
    "Month": "{{data.month}}",
    "Value":"{{data.range-0}}"
  }

(considering {{data.month}} is “Feb”) will only overwrite the “Jan” (linked to the “123” code) with “Feb”…

Sorry if I wasn’t clear enough, and thanks for the quick responses!

If I’m understanding your goal correctly, you can achieve this with the following:

  • Table: Get Rows Node - Returns all rows that match the specified query

    • QueryMonth === "{{data.month}}"
    • Result Pathworking.matchingRows
  • Loop Node - This will iterate over all rows we fetched above

    • Loop Source Pathworking.matchingRows.items
    • Current Item Pathworking.current

Within the loop…

  • Table: Update Row Node - Updates one row per loop iteration
    • Row ID Template{{working.current.value.id}}

    • Data MethodIndividual Fields

    • Col. TemplateValue

    • Value Template{{data.value}}

I’ve attached this example workflow below:

data-table-update-develop.flow (3.6 KB)

Hopefully this helps. Let us know how it goes!

Great! That’s more than I could ask for. Thanks, Sebastian!