How can I catch the error message in a BPM when I call the BO function? (Transaction isn't disposed)

Unfortunately, I still have the same error:

The transaction associated with the current connection has completed but has not been disposed. The transaction must be disposed before the connection can be used to execute SQL statements.

At this point, I’m almost giving up on doing this in a Data Directive and will do from an external script