I have Collector set-up for a sign inventory, and I am wondering how to give the same XY location to both the sign post and the signs attached to the post when collecting new features. There is a feature-to-feature relationship set-up between the two features and they are related by GUID's, but when creating new points they are not spatially coincident (but they should be). I have tried turning off 'my location' after creating the sign post but before creating any signs, but the locator automatically comes back on with creation of new points. I am wondering if there is a way to use the sign post location for the signs, or to copy the XY values over to the new signs so that all features are represented at the same point and spatially coincident.
Series of options here you can use just depends on need/intent but since you created feature classes for both it sounds like you want more than just X/Y you want Geometry as well:
1) From the database side create a trigger for on insert that extracts X/Y from the geometry you are collecting into fields in that table and then performing a copy based off GUID join into the other table
2) Create a stored procedure that performs these tasks based on some scheduled routine (hourly, every 4 hours, nightly, etc.)
3) Create an ESRI based ETL (model in model builder) that performs the same above tasks but additionally you could create geometry on the 2nd table using the X/Y data being copied into it (this requires ArcServer to publish the model as a service and then schedule it to run routinely using windows task manager OR it could be done manually if there's no need for automation)
4) Create a custom python script that performs the same tasks the ETL does but it can be pushed into windows task scheduler without having ArcServer and using the .py as an argument call to the python.exe
Those are some of the options but I am sure there are several more if you wanted to go down the path of FME or some other options. Most of what I offered up is focused around automation but can be done manually as well.
Hi Scott - I have taken the approach of using a SQL Server trigger to populate a field with a prefix and an increment # based on the # of records in the table. The trigger works well in Desktop, ArcGIS Online, and online Collector using versioned data. I am having problems with an offline map for Collector.
When I sync the map back to the service, nothing is populated. Have you run into this problem in any of your projects?
Due to some of our areas in southern Ohio where cellular data connectivity is essentially non-existent we have set a business rule that for most of our Collector projects the work is done in offline mode. We did some testing with triggers and never took the time to dig into all the underlying causes but we did have issues with the triggers and assumed it's tied to the way the "sync" process is designed.
As a result we do everything as Stored Procedures instead and based off our field workers daily routines it's a simple matter of running the SP once nightly. Their workflow is when they come in to do a fresh download for offline use of any needed maps for that day, go out all day to do field work and upon returning at night perform a sync then drop iPads in docking stations for charging and us to push updates as needed. So a single nightly process has been effective for our needs but if your workflow was different perhaps set the SP to run every 30 minutes or something like that. Really would come down to how often you have users syncing and downloading maps for offline if it becomes necessary to ensure no new download contains records that haven't had the SP run against it.