0

I need to have a consistently updated geodatabase that will go offline in Collector. I am open to new ways to do this. What I have been working on is below. Our environment: SQL Server 2012, ArcGIS 10.2.1, ArcGIS Server 10.2.2., Collector on iOS.

Our production sde database does not meet the requirements for offline use so a new database has been created solely for the offline purpose, "OfflineDBProd". Since the script we use to update the offline database takes a few hours to run and in an effort to have OfflineDBProd down for as little time as possible, a staging database, "OfflineDBTemp," was created on a different server instance for this purpose. In reality, both OfflineDBProd and OfflineDBTemp have the same name but to be less confusing here I have them named differently.

A script is used to, daily, copy and transform data from the production sde database to OfflineDBTemp. Contents of OfflineDBTemp are deleted and is refilled with the latest data, archiving enabled, and global IDs added, among other things.

A different script backs up OfflineDBTemp, copies the .bak file to the production server, and OfflineDBProd is restored with OfflineDBTemp.

To me it seems like the only changes in the OfflineDBProd (as viewed from the Collector app) would be the edits made in the production sde database the day before. Collector will download a fresh copy of the data but will not sync the following day, after the script and restore was carried out. The error message is:

Invalid or missing input parameters. Replica with this GUID does not exist on the server.

  • 1
    What do you mean by "Our production sde database does not meet the requirements for offline use" and how does setting up a new database solve this? – Midavalo Jul 28 '16 at 4:26
  • What are you doing that raises that error? – Midavalo Jul 28 '16 at 4:26
  • You are referring to a licensing issue with this, sentence right? "Our production sde database does not meet the requirements for offline use" – Ragi Yaser Burhum Jul 28 '16 at 6:41
  • We require the layers to be versioned. So far we have not been able to take versioning data offline - it must only be archiving. This is what's holding us back from using sde. – Surfinsanta Jul 28 '16 at 9:57
  • The error is raised when the "Sync" button in Collector is clicked on the days after the initial download in Collector. The initial download works and the data goes offline fine. It's the next day, after the script is run the second time, that syncing gives the error. – Surfinsanta Jul 28 '16 at 10:02
1

When you create an offline db in Collector this will create a replica ID on the service you are downloading. The db will have this ID to assist in the syncing of the db. I think your process might be wiping out the replicas ID on the service which is causing the sync issues. You can see the replica IDs at the REST endpoint. I would suggest doing the workflow fresh, see the new replica ID then run your process and see if the replica id still exists on the service which in the end orphans the offline db and you will have to use desktop tools to merge back.

0

I found 2 ways to do this:

  • For those looking for an answer to the process I was looking for, setting up a 1-way child to parent replica would complete this.
  • The better way was to fix the issue with versioning data not being able to go offline. A join in our data was preventing the publishing and so removing it fixed our problem.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.