Workflow calculation for decimal fields

We have two decimal fields(18,2). We are trying to subtract them and store value in 3rd decimal field. But when we run the workflow in the schedular, it stores 0.00 value in the 3rd field.

How to solve this issue? Is there any other way to do this?

Forgot to run as repeated runs.

It is working now.

Formula

{subtract({P0}; {P1})}