Not an admin person, but was tasked with this. Asking for some help.
We have a main server, with numerous laptops set up as servers with local replicas and local replication formulas. The formulas are pretty simple "Select * where SubscriberId = “ADJ7L9999"”. This being the device name or server name of the individual laptop.
The main server has no replication formula, and should not have a replication formula. But we had an incident several years ago when someone manually setting up a laptop replica accidentally applied the replication formula to the server replica instead and ran the replication and, long story short, we ended up losing data.
So we automated the setting of the replication formula. The tech will create the local replica, upon opening the start form of the database, code in the onLoad runs. The code verifies that it is not on the main server, gets the laptop hardware name and creates the formula. This was set up to minimise the possibility of human error in where the formula is created.
A few days ago, a user reports a document that can’t be found. Sure enough, someone has somehow put a replication formula by accident on the server replica. The server replica was not replicated, only a couple of the laptops replicated, so no data was lost upon removal of the replication formula and subsequent laptop replications.
So my question is: Is there a simple and effective way to prevent a replication formula from being created and/or applied to a server database, while still being able to manage local replicas and their formulas?
Any ideas? Suggestions? Hope I’ve given enough info.