Ich kann Dir nur empfehlen, Dich mit Client-/ Server-Prinzipien vertraut zu machen. Ein Server gewährleistet Transaktionssicherheit, genau dafür ist er (u.a.) da. Ein Client- besonders mehrere- sollte sich darauf verlassen können. Clients, die das "eigenmächtig" verwalten, sind m.E. meist zum Scheitern verurteilt, entsprechende Clientfunktionalität fragwürdig (ok, vlt. nicht, wenn man einen App.Server baut).
Wenn also klar ist, dass es komplexe Funktionen gibt, die mehrfach (an mehreren Stellen) verwendet werden, ist das ein klarer Fall für zentrale Serverlogik, via
SQL, Stored Procedure oder App.Server.