Event and Process Not Compatible

Hi, I have seen a few posts regarding similar errors but haven’t caught any workaround.

I have received the error below

"The event and process of the ‘Amendment Request Notification’ Bot are not compatible. The output of event 'Amendment Request Morning ’ and the input of the process ‘New process 2’ must be the same table or ‘None’ in the case of a scheduled event that is not ‘For Each Row’."

The bot is scheduled to go everyday @9am.

It first has to check a condition and then branches off into two different emails.

I have seen a lot of people saying you have to either separate the tasks into two different bots or select ‘For Each Row’, which in my case isn’t practical.

Is there any other solution for this issue?

This seems to imply that the table specified between the Event and Process are not the same. Event is clearly specified with the Event description. Process is a little less evident.

To get to the Table for a Process, see the two images below

From the bot:

In the Process:

1 Like

Attn @Dan_Bahir @prithpal

When you say the event and process table must be the same, I cannot specify a table for the scheduled event there is no option for that.

Does that mean that the process must be set to none?

If the table is not set to the correct option then it won’t recognise the columns the condition is checking

I wonder where you might be looking? I am not aware of a way to NOT assign a table - its critical to properly trigger the scheduled process. Below is an image of where I find the Table selection in the Event definition. Do you not see that option?

Screen Shot 2021-08-18 at 8.00.51 AM

I don’t have that action because I dont have the ‘ForEachRowInTable’ enabled. I only want one report per schedule

1 Like

I see!

When I switch that flag off, I get the same as you are seeing - the Table dropdown goes away. I think that might be a bug! I am not aware of any way such a Scheduled bot can run Table-less. How else can the Condition be applied?

Attn @Dan_Bahir @prithpal


This is intended.

When you have a scheduled “For Each Row In Table” event there is a row in context of the execution and you can write expression that evaluate that row.

The other option is a generic trigger, it does not have the context of a certain row. You can use any statement involving one of more tables in the condition and templates. The event it self does not have an Entity or Type therefore for processes that are triggered by the event you can use all step types but the data-actions which assume that there is a row of a certain Entity in context.

Conditions that can be applied are things like “COUNT(Orders[_RowNumber]) > 10” which will be true if the number of rows in the Orders table is more than 10. This expression does not assume that there is a table or row in the context.

Hope this makes it clearer.

1 Like


Yes. This makes sense now that you have highlighted it.

However, there is the matter of the error message from the original post. It makes even less sense now!! Maybe that is truly the bug?

1 Like

Sarah, as I consider @Dan_Bahir response above, and your comment (included), I wonder if there might be a design flaw in your bot?

The fact that you want to check conditions on columns and for a particular Table, implies that you want the bot to send rows through to the Process to check those conditions - I presume to decide which ones the Process operates on.

But when you have a Scheduled bot and the ‘ForEachRowInTable’ flag is off, there are NO rows being passed through the bot.

So , either:

  1. The bot sends rows through - i.e. ‘ForEachRowInTable’ flag is set on. (It could be ALL rows meaning no condition is set)

  2. OR the Process is generic (i.e. Table set to None) and the Task(s) is responsible for gathering rows such as in a templated report or email attachment.

Bottom Line…If you mean to act on individual rows to decide if they need the Amendment Request Notification, I think your bot has to have the ‘ForEachRowInTable’ flag on.

1 Like