Schedule Timer vs Processes

What is the difference? what are the advantages and disadvantage of each?

I heard processes you can run in parallel, but does it work if each process both trying to either insert or update the same table? will it run into a deadlock? And what about the performance when running in parallel


Hi David.

As you stated, processes can run in parallel. There's no issue with multiple transactions running in parallel - relational databases are meant to be used in that way. And web requests from your end users are being executed in parallel all the time.

Parallel executions will not yield deadlocks. At most, the database will abort one of the transactions to prevent the deadlock.


Besides the possibility to run in parallel, processes are incredibly powerful. Processes can stop and resume execution depending on database events (Launch On, Close On, Conditional Start), they can wait for a set date/time (Wait activity), and can wait for a human interaction (Human Activity).

Timers, on the other hand, are just a single action that gets executed from start to finish on a given schedule.

I suggest you watch the master class on BPT for more information: https://www.outsystems.com/learn/courses/17/master-class-on-modeling-business-processes-bpt/

Is there a simple sample code of processes insert into a table in outsystems 9 or 10?

To insert data into a table, you should use the Create entity action.

Why do you think processes would be helpful in that scenario?

I just like to see the processes in action. I learn better with code.

Searching for "BPT" on forge yielded the following component:

https://www.outsystems.com/forge/component-overview/4136/bptexample


See if that works for you.