If you want to archive the records, then you want to move them, not delete them.
But, think carefully since moving records to an archive table almost inevitably leads to a query across both tables which can be messy compared to a simple query on one table.
BUT! This
The problem is because...
And why not send the error message to a common component, preferably an object, and have that component manage the stream ... or whatever you use. Note that with a common, shared error message component you can choose at any time to change the implementation and you only need to touch one place.
You beat me to it, James! I was just about to point out that biting the bullet and making the transition to OO would make most of these issues go away while providing a cleaner and more well-structured environment.
Some other things you might try
https://x.com/chris4gl
https://www.linkedin.com/in/christopherkelleher/
https://kelleher.social/@Chris
The last one has a post 4 days ago.
I recommend that you think carefully about what you really need. For example, I can understand wanting to undo everything about a customer and their orders, while leaving everything about all other customers and their orders, plus treating the delivery flow as a separate transaction. What you...
The solution, of course, is to change the transaction scope. Making the entire do block one transaction is obviously going to lock a LOT of records with those kind of numbers. What is not obvious is what scope is appropriate for your business needs. Possibly you could process the orders for...
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.