Skip to main content
Top Header

There is a case I want to solve, see below. I have a solution I would apply if I had classical programming language + RDBMS, but I'm not sure how to implement this in celonis or whether there is another solution. Could you please help?

 

The case I want to solve is sending email notifications to users via action flow in case there are missing invoice receipts.

For each missing invoice receipt there is a notification type that can be chosen with their own subjects, body text, etc., for instance:

  1. If the date1 >= today + 7 days then group 1.
  2. If the date1 >= today + 14days then group 2.
  3. If the due date >= today - 7 days then group 3.

 

One possible solution would be to keep the history of the sent emails in some table and join it to the missing invoice receipts data to filter out the emails for each new iteration of sending - so that we don't send some letters twice if we already sent them.

E.g. if we had sent the email of type for invoice receipt no. 12345 yesterday, we don't send it today.

 

Therefore, the question: is it possible to write from the action flow straight to Celonis table? (I could create NOTIFICATION_HISTORY table and insert rows there for each email sent).

Or how would you solve this task?

In simple terms, I want to implement this, but I'm not sure how to implement steps 4 and 5

implementation schema


FYI the solution we are using currently is:

  1. In the Action Flow - insert a row to to the Celonis database's notification log table (create it in advance) after the notification is sent. 2 options here:
    1. "Execute process automation skill" action in the Action FLow + a Skill with actions "Manual Sensor" + "Write data to table". Works OK for single rows, takes about 8-10 seconds per row - therefore, not so good for hundreds or more rows.
    2. To insert rows in big batches - write data to csv, put it into OneDrive, push it to the db via Data Push Jobs - see Push CSV to Data Integration (celonis.com)
  2. Regularly upload this notification log table to the database + to some data model.
  3. Read the notification log table from the data model it in the beginning of your AF.

Hi ​@emil.vakhi12 If I understood this task properly then you can solve this issue as follow: 
For the whole automation you need Action Flow and Skill components. In the Action Flow part - you start the chain with the Query Data Module. There you create amonth others a field with condition DATEDIFF(ss, ("Table"."date1"), TODAY ()). Then you create as a second module a Router and (depending on all the requirements of the use-cases) it follows with the rest of the modules. Between the Router and the third Module (whatever that it will be) you may apply the Filter which you wish to have. So that it will be send to the respective group. Cheers, Bunyod

 


Reply