|
POST
|
Hi Thomas I am intruiged to see the design of your survey - would you want to share it? I might have a good alternative way of capturing compliance records or any type of scenario where a user should go through a list of items from top to bottom: https://esri-southafrica.blog/2017/12/14/survey123-with-a-single-attribute-for-repeating-generic-questions-instead-of-multiple-attributes-and-an-auto-incremented-list/ Regarding the count of compliance - why dont you do a calculation in the survey to capture the number of occurrences as they happen? Perhaps if you share your survey i could have a look
... View more
05-30-2019
11:27 PM
|
1
|
1
|
1905
|
|
POST
|
Hi Ramona I am curious as to why you dont use a decimal for a currency value?
... View more
04-18-2019
03:58 AM
|
0
|
1
|
1427
|
|
POST
|
Hi Lindsay If your list of items is also "static" then you can have a repeat that goes through all your items from top to bottom... so the repeat will step through all the parts and let the user capture the quantities if applicable. That way they wont accidentally skip an item but will be forced to go through the whole list. I wrote a blog about this "trick" and you can view it here: https://esri-southafrica.blog/2017/12/14/survey123-with-a-single-attribute-for-repeating-generic-questions-instead-of-multiple-attributes-and-an-auto-incremented-list/
... View more
04-18-2019
12:32 AM
|
0
|
0
|
964
|
|
POST
|
You should specify the bind::esri:fieldType column to be null for those fields. https://community.esri.com/groups/survey123/blog/2017/10/26/the-power-of-nothing
... View more
04-16-2019
02:51 AM
|
1
|
0
|
805
|
|
POST
|
Hi Doug Thanks for the tip on Option 1 - i just wanted it to be a little bit more understandable if someone else worked on my survey design 🙂 Option 2 - I had a team of field workers and each team member were allocated a block of numbers. I then created a config "survey" which allowed the users to set up their Survey123 setup with a Range Start indicating the start of the auto-incremented values: When the users saves this questionnaire I actually caught it with a trigger in the database to save this into my custom tables in the Survey123 database. So if a device became problematic the user only had to take a new device and "program" it to start at the previous number they used.
... View more
04-04-2019
10:53 AM
|
0
|
0
|
4802
|
|
POST
|
Hi Rhonda and other Survey123 users I have successfully managed to generate an auto-incremented field with Survey123 in two ways: Option 1) Inside a repeat: Create a calculation variable inside the repeat that results in a value of 1 and then use that variable in a new calculation inside the repeat to auto-increment with each repeat: once(count(${count1})). The once is important because if the user goes backwards through the repeat then it shouldn't add 1 again but stay at its first calculated value. Here is a blog indicating how I used the auto-incremented value to pull data from a CSV for a questionnaire with a repeat in it (this is still one of my favourite "hacks"): https://esri-southafrica.blog/2017/12/14/survey123-with-a-single-attribute-for-repeating-generic-questions-instead-of-multiple-attributes-and-an-auto-incremented-list/ Option 2) For each Survey record captured: For another project that required an auto-incremented field for each new survey record captured (not a repeat) I actually created triggers and database objects (tables) inside the Survey123 SQLite database to do the following: - a table to store the last used sequence number - an AFTER INSERT ON Surveys trigger for the specific survey I wanted to auto-increment. This trigger did the following: - retrieve the next sequence number - update the DATA field for the new survey record and inject the new sequence number into the correct field. I defaulted my auto-increment field in my survey to #### and then just did a replace on the DATA string: UPDATE Surveys SET DATA = replace(DATA, '####', (<your incremented number>)), feature = replace(feature, '####', (<your incremented number>)) WHERE rowid = new.rowid; So in essence what is happening is that when you submit a new survey the trigger catches the creation of the record in the Survey123 database and then injects the auto-incremented value into the DATA string of the feature before it gets synced. I have a working example of this but I haven't felt comfortable sharing this with the Survey123 community since I am basically hacking my way into the Survey123 database... This is obviously only for advanced users because you can easily mess up your whole Survey123 installation. If there's enough interest I will write a Blog and provide the code to do it but only if James Tedrick and Ismael Chivite agrees to it.
... View more
04-04-2019
10:34 AM
|
3
|
2
|
4802
|
|
POST
|
James Tedrick Is the JS functionality through the pulldata function available for all users on the Survey123 clients? We get "Extension disabled" errors when we try to perform this in Survey123... Is there a special beta or early adopter that we need to use to overcome this?
... View more
03-04-2019
10:59 PM
|
0
|
3
|
6380
|
|
POST
|
Hi everyone The best way to handle phone numbers in my opinion is to use a TEXT field and change the appearance to numbers. I found that if you use an integer you run into issues - for us in South Africa some numbers might start with a Zero and then that Zero is thrown away in an integer field. With a text field you wont have that issue.
... View more
02-27-2019
06:24 AM
|
2
|
0
|
1064
|
|
POST
|
Hi Guys We built a brand new survey with a repeat within another repeat. Nothing fancy: After capturing the data and re-opening the survey from the Outbox the first record in the innermost repeat is always blank (using the early adopter version 3.3.26). The rest of the records are fine. Any idea when this is getting fixed? We have a client that wont use Survey123 unless we can solve this issue...
... View more
02-14-2019
12:51 AM
|
0
|
18
|
2012
|
|
DOC
|
Hi Michael Great script, quick question: Is it possible to get a file-like object from the attachments manager without downloading the file locally first? So instead of downloading the file with attachments.download i would want to have the attachment as an in-memory object... Currently my script first downloads the attachment and then opens it into a binary file-like object and then delete the local file when i am done.... Any help will be appreciated.
... View more
09-13-2018
02:15 AM
|
0
|
0
|
29771
|
|
POST
|
Hi Lars You should do an absolute calculation that is always positive. Survey123 doesnt have an absolute function but you can use an if statement to mimic its behaviour: if(${measurement_ref}-${measurement_act}>0,${measurement_ref}-${measurement_act},(${measurement_ref}-${measurement_act})*-1)
... View more
09-03-2018
02:50 AM
|
1
|
0
|
812
|
|
POST
|
I used this script:
from arcpy import da
import arcpy
import os
import subprocess
arcpy.env.workspace = r"C:\Projects\Test\hazards.gdb"
inTable = "service_b_85814f635e42a59fcbf405bd_hazard_photos__ATTACH"
fileLocation = r"C:\Projects\Test\Photos"
with da.SearchCursor(inTable, ['DATA','ATT_NAME','GLOBALID'],r"") as cursor:
for row in cursor:
binaryRep = row[0]
fileName = str(row[2]) + ".jpg"
open(fileLocation + os.sep + fileName, 'wb').write(binaryRep.tobytes())
del row
del binaryRep
del fileName Attached is the photos exported. I usually use the GlobalID so that if i need to change photos and re-import them i can just use the GlobalID to reference the attachment record. Hope that helps.
... View more
08-16-2018
04:45 AM
|
3
|
1
|
3211
|
|
BLOG
|
Hi Brandon That's awesome! Very glad that you could get some use out of the idea.
... View more
08-15-2018
12:13 AM
|
0
|
0
|
2512
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 09-17-2021 12:13 AM | |
| 1 | 09-10-2025 07:00 AM | |
| 1 | 08-26-2025 05:58 AM | |
| 1 | 08-17-2025 10:00 PM | |
| 1 | 08-15-2025 05:26 AM |
| Online Status |
Offline
|
| Date Last Visited |
4 weeks ago
|