|
POST
|
Hi Michael As James Tedrick mentioned, the file name for an image question's attachment (including signatures) starts with the question's name. For example, if your signature question is called "signature1" you'll get an attachment that looks something like "signature1-7d9b665a20f647d1aypd7fb884cded34.jpg". Your filter could like this: This filter would go after the HTTP (Get a file) module. Cheers, Jim
... View more
02-24-2020
03:09 PM
|
0
|
0
|
4448
|
|
POST
|
Hi Kristin There are a couple of methods that might help. While date/time fields in a feature service are stored in UTC, Survey123 (and other ArcGIS applications) will display the date/time in your local time zone. You can save this value (in local time zone) to a string using the format-date() function. For example, using a calculation similar to this in a text question: format-date(${datetime1},'%d/%m/%Y %H:%M') If you need the 'local' date/time to stay in date/time format, you could use something similar to your calculation above but with a slight correction. The pulldata("@property", 'utcoffset') expression returns the UTC offset in hours for your location. Multiply this offset by 1000 * 60 * 60 to get milliseconds (for Epoch time). So your calculation would look like: ${datetime1} + (pulldata("@property", 'utcoffset') * 1000 * 60 * 60) Note that Epoch (UNIX) time calculations work well in the Survey123 field app but not in the web app; if you're using your survey in both the field app and the web app it'd be better to use decimal time for your calculations. There are a set of formulas for converting to decimal time. See this blog for more detail and useful examples: https://community.esri.com/groups/survey123/blog/2016/04/17/dates-and-time-in-survey123-for-arcgis And this help topic on dates and times in Survey123: Decimal date time—Survey123 for ArcGIS | Documentation Hope this helps Best, Jim
... View more
02-23-2020
06:41 PM
|
2
|
2
|
2011
|
|
POST
|
Hi David While the ${question_name} placeholder (question name only, without an expression) for a select_one question will return the label of the selected choice, the opposite applies to external choices. This is because of the way choice labels and values are retrieved/stored for external choice lists. A solution is to store the label for the external choice in a hidden question using the jr:choice-name() function and then reference this question in the feature report template. This function is described here: Cascading and external selects—Survey123 for ArcGIS | Documentation Hope this helps Best, Jim
... View more
02-23-2020
05:00 PM
|
0
|
0
|
1324
|
|
POST
|
Hi All The range question type was introduced in Survey123 version 3.6. It's similar to the distress appearance, but gives you more flexibility. With range questions you can: Control the range Use integer or decimal field type Set the step interval Show or hide tick marks Choose a colour scheme! The range question type is covered in detail here: Range—Survey123 for ArcGIS | Documentation Best, Jim Eddy Clark Gary Worley Dunga Bazao Hélène Touyéras Simon Jackson
... View more
02-19-2020
09:28 PM
|
3
|
1
|
4043
|
|
POST
|
Hi Jing Sun, it looks like James Tedrick has responded to a similar question on a separate post - just including the link to it here for the benefit of other visitors to this thread. https://community.esri.com/message/910168-re-addition-calculations-not-working#comment-908591 Cheers, Jim
... View more
02-19-2020
09:00 PM
|
0
|
1
|
775
|
|
POST
|
Hi Pauline Thanks for the files. The link you've provided for 'estate_list.csv' opens an XLSX file. Just to confirm, is the estate_list.csv in your survey's media folder a CSV file? If you open it in a text editor it should look like this: Using a CSV file as per above, I get the correct instance name in Outbox, Sent, etc. Also I notice the labels for your 'estate' choice list are the same as the estate names in the CSV. In this case, instead of using pulldata() you could use the jr:choice-name() function to return the label for the choice. So the calculation would look something like: jr:choice-name(${estate_id}, '${estate_id}') This function is documented here Formulas—Survey123 for ArcGIS | Documentation and here Cascading and external selects—Survey123 for ArcGIS | Documentation. Best, Jim
... View more
02-17-2020
07:19 PM
|
1
|
1
|
2308
|
|
POST
|
Hi Pauline From your screenshots I can't see a reason why the instance_name is blank. Could you please provide your XLS and CSV files so I can attempt to troubleshoot? Is the pulldata() function working correctly in the survey form? Thank you, Jim
... View more
02-17-2020
04:15 PM
|
1
|
6
|
2308
|
|
POST
|
Hi Lisa The '_stakeholder' item you're seeing is a hosted feature layer view. Survey123 uses views to manage access to your data. This technical article provides a description of the fieldworker and stakeholder views used by Survey123: FAQ: What are the Fieldworker and Stakeholder hosted views used for in Survey123? Ismael's reply to this GeoNet post also provides some great info: Fieldworks and Stakeholders. Hope this helps! Jim
... View more
02-17-2020
03:58 PM
|
0
|
1
|
1590
|
|
POST
|
Hi Benjamin With the mapSettings parameters you can specify a web map for a geopoint question via the web map's item ID (as mentioned above). You could make a web map that shows all parent and related point features and symbolise these accordingly, and then use this web map in your feature report. One thing to keep in mind is that ALL features that are visible in the web map could also be shown in the feature report, depending on the scale and extent of the map in the report. In other words, you might see points on the map that are not relevant to the current survey response. If each survey response (and its photo points) is spatially separate from all other responses, this might not be an issue - you could use a scale large enough to avoid seeing the other points. There isn't a method in the feature report template for showing only the relevant features in one map. One workaround would be to filter the features in the web map itself before producing the report; however you would need to do this manually for each survey response. Best, Jim
... View more
02-16-2020
08:51 PM
|
0
|
0
|
1803
|
|
POST
|
Hi Michael The Iterator module essentially repeats everything downstream of it for each item in an array. If you provide the Iterator an array of URLs, it will pass them one by one (regardless of the number of URLs) to the HTTP module, and the HTTP module will execute once for each URL. In my example above, I was using the data structure in the Parse JSON module to pull out the 'url' part of the attachmentInfos array. However, you can accomplish this in less steps (without the JSON modules), by using the map() array function inside the Iterator: Your scenario might then look something like: The Integromat help on mapping has useful info on arrays, bundles, etc. An error handler might come in handy for the case where there are zero attachments, if you want something different to happen in this case. See the Integromat help on error handling. Hope this is useful. Best, Jim
... View more
02-16-2020
04:40 PM
|
2
|
6
|
4448
|
|
POST
|
Hi Michael For issue #1, you could use an Iterator (one of Integromat's Flow Control tools) to process the attachments. There are probably a few different ways to accomplish this, but your scenario could look something like this: In this example: transform the attachmentInfos object to JSON, then parse the JSON to get the attachment URLs. Pass these to the Iterator and then onto the HTTP Get a file and upload to Drive modules. In the screenshot you can see the Iterator has processed three attachments. For issue #2, I was able to pass the date & time to Google Sheets using Integromat's formatDate function. If you want to display in 12-hour time, altering the custom number format in Google Sheets itself to dd/mm/yyyy hh:mm AM/PM should work. Hope this helps. Best, Jim
... View more
02-14-2020
04:21 AM
|
1
|
9
|
4448
|
|
POST
|
Hi Benjamin Here I've added a geopoint question to your repeat: Then add the ${photo_loc} placeholder to your report template (inside the repeat section). This will show the map for each repeat. If required, you could make this geopoint question read-only, so it will take the device's location and the user will not be able to open the map to modify the location. You can also use the size parameter for map questions to control the dimensions of the map (similar to photos), as well as mapSettings to use a specific web map and optionally specify a scale. More info on this here: Feature report templates—Survey123 for ArcGIS | Documentation Hope this helps Best, Jim
... View more
02-13-2020
07:54 PM
|
0
|
2
|
1803
|
|
POST
|
Great to hear it's working well Ivan! In case you haven't seen it, there's plenty of handy info regarding operators, functions, etc. in this quick reference. Quick reference—Survey123 for ArcGIS | Documentation Also some great tips for multiple choice questions in this blog: https://community.esri.com/groups/survey123/blog/2018/12/02/survey123-tricks-of-the-trade-xlsform-functions-for-lists Best, Jim
... View more
02-13-2020
06:42 PM
|
0
|
0
|
1660
|
|
POST
|
Hi Ivan By default the select_one question type uses a text field so "0", "1" and "N/A" could all be stored (as strings) in the same field. The int() function in your calculation casts the "0" and "1" strings as integers so they can be treated as numbers and summed. One suggested approach would be to use IF statements in your count calculation to evaluate each question and make it 1 or 0 accordingly. For example: if(selected(${Equip_Stabil1},'1'),1,0) + if(selected(${Fill_Dishing2},'1'),1,0) + if(selected ... etc. Then write a similar calculation for the unsatisfactory and not applicable cases. In this scenario, your choice list need not use digits as values; depending on how you would like to store these values in the feature service, you could use more descriptive strings, i.e. "satisfactory", "unsatisfactory" and "not_applicable" in the name column. Then your calculation would look something like: if(selected(${Equip_Stabil1},'satisfactory'),1,0) + if(selected(${Fill_Dishing2},'satisfactory'),1,0) + if(selected ... etc. Hope this helps. Best, Jim
... View more
02-12-2020
09:06 PM
|
2
|
2
|
1660
|
|
POST
|
Hi Benjamin This could be achieved by adding a geopoint question to the repeat. This would make the repeat a related point feature layer (as opposed to a related table) that can store a location for each repeat record. You would then be able to show an individual map in your feature report for each photo. Best, Jim
... View more
02-12-2020
08:16 PM
|
0
|
4
|
1803
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 03-25-2020 06:40 PM | |
| 1 | 08-11-2024 10:11 PM | |
| 1 | 08-04-2019 06:44 PM | |
| 1 | 01-08-2025 03:26 PM | |
| 1 | 06-29-2020 07:21 PM |
| Online Status |
Offline
|
| Date Last Visited |
yesterday
|