In the natural gas industry, we pre-test pipe that is use to repair damages throughout the system. We need a way to capture that pressure test information and relate it to the pipe so when the pipe is used for a repair days/weeks/months later, the field user can reference that they used that piece of pipe for the repair and our GIS can be updated with the repair information (including pressure test info).
I've created a Survey123 form that the field user can use to submit the pressure test info, and a dashboard (more of a report view) the GIS editor would use to search for and retrieve the pressure test info when editing GIS; however, I'm struggling to find a simple solution to create a unique record number that can be related to the pipe.
The plan was to have some sort of sequential number that the crew could write onto the pipe (PTP1, PTP2, etc.), but Survey123 doesn't support that functionality (yet). UUID or some sort of date/time ID are a little too long, and there's no way to get the ObjectID to show up in the instance_name allowing the crew to submit a record, then switch over to their sent box to see that - something like: concat("PTP", " - ", ObjectID).
Any suggestions on how to fulfill this need?
Thanks for the suggestion Doug, not sure how the crew would know which piece of pipe they were using though since the scenario is this:
Today I pressure test a 6' piece of pipe and record that info through a Survey123 form (tested this date, 100psi for 15 minutes - no location info is gathered since I'm testing this at the plant and not where the pipe is installed in the ground.). I get a unique number to write on the pipe with a sharpie and I stick it in my truck. Two months later, a gas line gets cut, so I cut out the damaged section and insert the piece of pipe I've already pressure tested. I draw up a repair sketch and note that I used PTP# in the repair. The GIS editor modifies GIS based on the as-built, looking up PTP# to obtain the pressure test info and enters those attributes for the new section of gas line that is being drawn in.
How about they start the form inside and enter the number they wrote on it. Then when they install it they open the form and GPS it so you know where it went.
You could also just have them create a form with a # and testing info inside while testing. Then when they install it they enter the number written on the pipe. Have a relationship class on Pipe # and it will just automatically link. No need to retype in data.
How do they get the id now? If it is some kind of formula a form could do it for them (have a form for pipe testing input). I for sure would not use a objectid as these change on exports or db reloads. A random number based on date, time, crew name, etc may work. See this post for more https://community.esri.com/groups/survey123/blog/2017/11/25/creating-ticket-numbers-in-survey123-for...
To get really fancy you could have the form generate a id. Then print out a bar code sticker with the id and stick in on the pipe. Then have 123 read that barcode when they install it. But if your crew is mostly old timers they may not like this.
For me we have crews offline most of the time so trying to have sequential will never work. For me I preassign all my location ids then pass them from Collector to 123. That way no one ever types anything in.
Hope that helps.