Yes, this has been fixed in the upcoming 3.13 release which will be available this week.
It was originally logged as:
BUG-000138199 - Leading zeros are dropped from the values submitted by the 'select_one' questions in ArcGIS Survey123 3.12.
Please test out your workflow with the latest 3.13 release and let us know if you still encounter any issues.
Assuming you use Survey Connect App
For what it's worth.. I my memory serves me correct:
On the Survey pane select your field.. Go all the way out to column S Called bind::esri:FieldType in the drop down select the the data type esriFieldTypeString.
I am not 100% sure that does the trick. But worth while trying :)
Kristoffer W Beck (former Senior Supporter for Esri distributor in Denmark)
We have the same problem too: leading 0 are stripped both from choices lists or from pulldata values. Version 3.11 is fine, version 3.12.244 and 277 have this bug. Even if you define text values in Excel, of using the ' sign to force text it does not work (and in any case it could not work for pulldata).
Field is defintely defined as EsriTypeString.
Apologies for the delay in responding to this.
With 3.12, there was a change in how lists are managed internally. One of the changes addressed a set of BUGs that had been registered regarding the processing of choices with numeric values (for instance, numeric values being used in cascading selects); to address this, choice values are now being converted into a numeric type if possible. While we had this change in the Early Adopter Community for a number of months without issue, we are receiving reports in situations like you describe, where the values are number-like strings that have leading zeros. There are a couple of workarounds that can be used to ensure proper processing:
Both of these workarounds uses a second, calculate question to process the value in the form; this can be used in combination with setting the select_one/select_multiple's bind:esri:fieldType to null so that the intermediate value is not stored.
Given the feedback, we are investigating ways that the type of value in a choice list can be better specified and hope to improve this.
This has broken a few questions in many forms I have out for our teams to use. We have a select_one and a select_multiple pulling from a choice list that has values like "00", "09", "10", etc. I'm able to do the null/calculate field trick just fine for the select_one question, but not sure how I can fix the select_multiple. It should be creating a string like "01, 04, 10, 99" and is instead creating "1, 4, 10, 99". Do you have any suggestions on how to fix this?
Besides me, others at my company had field teams and others working where these kinds of values get used in downstream automation workflows that essentially broke when this happened. Is this something that will be logged as a BUG going forward or something the users need to work around correcting? We need to decide if we should be investing in making changes to our automation code to handle this or if we can wait/limp along until a formal change is pushed out.
Thanks for all your help and responses around this.
We are in the same situation - we have a survey with external choices that relate to an Oracle table. With the latest updated app, I now have to manually fix the data before it can be synced to the Oracle table.
I agree that this should be noted as a bug. Looking forward to a solution to this one.
Thanks as well for the support and responses from Esri!
I followed James Tedrick's suggestion and modified the Survey, but in one case it was not possible. We are now watching and modifiyng data manually, and we are thinking about developing a Python daemon that does the same job. We also considered triggers and SOIs , but the decision to go with this effort depends on the time for the patch/new version to be released.