Pass values between tables

Hello and I would echo all the thanks for rolling out this feature. It looks like a valuable addition.

I’m wondering if it can be used to pass information between tables. I’ve tried to setup some processes but they appear to be restricted to work with 1 table/sheet at a time. My scenario is this:

Order Details table with a qtyDelivered column - linked to a Products table via ProductID
Products table with an Inventory field - key field is ProductID

I want to take the value of qtyDelivered in the Order Details table and update the Inventory in the Products table whenever a new row is created.

Have struggled to get this done conventionally and before going too much further with this feature would like to make sure it can be done.

Any help would be appreciated.

Cheers
Ray

2 Likes

Hi Ray,

Yes it can be done with two processes.
So you can define your first process to be linked to the “Order Details” table, and create a bot to trigger this process when a “ADDS_ONLY” event happens in “Order Details” table.
Now you define the second process to be linked to the “Products” table with one step to update the “Inventory” column. Also add a new “qtyToSubtract” column to the “Products” table.
You will define the update “inventory” step (a “Set row values” action step) using the following expression –
Inventory = [Inventory] - [qtyToSubtract]

Now have your first process calls the second process through the “Call a process” step and pass in the following fields (assuming the “Products” table has a “ProductID” key column and you have added a “qtyToSubtract” field to the “Products” table):
ProductID = [ProductID]
qtyToSubtract = [qtyDelivered]

Hope this helps.
Also check out this other post with a similar use case – Call a process from other table - Process Inputs & Column values erased

Cheers!

@Dan_Bahir

@Ray posted a demo video of how to do this. Please let us know if there are any questions

Thank you Prithpal for posting this.

Could you give us clarify what the Process Input actually means.

When we call a process within a bot, we need to set them up. Still not perfectly sure why we need to do this, and what values we need to pass onto a process.

1 Like

Thank you so much for working on this problem. I am just sitting down to set this up on our system. I appreciate the assistance from you all.

@Dan_Bahir - thank you as well for sending me your solution.

You guys are the best :slight_smile: - be safe

Ray

1 Like

A process has an input entity - a table, eg: orders. You can create a process manually (from the process tab) or a process gets created (in the background) when you create a bot.

A process can be invoked by

  1. a bot (when the right event occurs) or
  2. by another process.

In case of 1) the bot will automatically pass data (generated by the event) to the process
In case of 2) you can pass values to a child process from the “call process” step. (eg: in the video I shared).

In either case a row of data (eg: order) is passed to the process. That is the process input I am talking about. The steps in the process has access to that data and can use it. Hope this helps.

Almost there - thank you.

In the last step on the video - about 1:46 in there are 2 items shown in the Step settings table on the right panel:
A task named - update product inventory and an Action named - Set “Product Id”

Could you give the details for each of them?

Thanks
Ray

prithpal - thank you :slight_smile:

The routine is working.

I am trying to add a condition that only updates inventory items that I track. I have a column “Track” - a YES/NO column - in the Products sheet.

I’m going to do some reading on the conditional branch option and add this little piece. But so far it is working as expected.
Be safe
Ray