Collection of georeferenced data with return of fields from csv files

The appetite comes with eating. Thank you all for the support! Unfortunately I'm a new entry and I have certain computer limitations. I
FORM_CFTCFV_ver.xlsx (155.7 KB)
elebuchit (1).csv (2.2 MB)
take care of detecting plant species in a given area and I have several volunteer collaborators to pass the form to when it is ready. I have already achieved a good result thanks to your help. But I would like to optimize it if possible. I'll explain how. In each repetition of species detection I take the punctual coordinates with geopoint. Through these I would like the code of the quadrant in which I am at the moment of the survey to appear (See georeferenced file quadr_TN. In the longitude and latitude section I have extracted the values ​​of the centroids of each quadrant). The final goal is the automatic compilation of the check field of the form through the elebuchit.csv file where the same species present in the chose sheet of the form and the quadrant code of quadr_TN are listed. I am aware that it is not easy but I am counting on the help of some genius! I enclose everything and I hope to be an incentive for others
quadr_TN.csv (25.7 KB)

https://drive.google.com/drive/folders/1AvaB2z2y8r11ZQjRi4xRvdM3cz-9CusO?usp=share_link

Hi @giulia_tomasi

let me say what I understand and tell me if I am wrong :

You get a gepoint and you want to calculate the name of the quadrant in wich the point is located ?

yes, exact! the grid of the dials is this:

https://drive.google.com/drive/u/1/folders/1AvaB2z2y8r11ZQjRi4xRvdM3cz-9CusO

1 Like

Imagine if the user could select the quadrant on a map at the beginning of the form using his GPS? Would this be a solution?
I'm thinking about the select_one question with the map appearance that will soon work for polygons and lines...

1 Like

it could be a good solution. Thanks for your interest

1 Like

This feature will soon be available (using lines and polygon in select_one's map appearance)
You can right now test it in you form using the centroïd of your quadrants. And imagine what it will be when replacing the point definition in the polygon one.

Here I used the choices sheet and added a geometry column to put the point definition in ODK's standard. And set choice_filter to true() in order to show all the points on the map.
You can use external csv or geojson instead.
FORM_CFTCFV_ver.xlsx (132,6 Ko)

1 Like

thanks, i tried and it's already a fantastic result also with centroids! let alone when the function with polygons will be ready! I can not wait! How do I stay informed? Will it be posted on this forum? Thanks again. Can I ask instead how to use external csv or geojson invede of the choice sheet? sorry but I'm still a beginner. Thank you very much!

1 Like

This is well documented in the doc :
https://docs.getodk.org/form-question-types/#select-one-from-map-widget
And this thread is also a good resource :

Yes new releases and their new functionalities are introduce to the community by the team on the forum.

thanks very interesting. To resolve the boundaries of the quadrants I loaded a MBTiles map with the boundaries that I saved in my smartphone and it works! It is called as a layer in the above google map. Through select one I now obtain the quadrant for each species entered. As a last step I would need to check each repetition through the csv file that I attach. For example: If I enter "Abies alba" in quadrant 9432/3 I would like a "check" field that returns the value "4" in the form. If I enter "Abutilon theophrasti" in the box " I would like "0" to appear (see first two lines of the csv file)
buchiTN.csv (2.2 MB)

1 Like

Hi Giulia,

this is really close to some of our scenarios and needs for biodiversity relative forms.
I achieved to do what you expected for a water level monitoring form (showing the expected value at the day of visit for the selected place) but with really less column (1 per month). I wrote a logical test to get every value (one per month) and show the good one to the user :

In your case you have too much columns to use that way.
(let's say we rename the quadrant and column to avoid forbidden characters so 9432/3 becomes _9432_3)
this calculation will work and return the value 4 for Abies alba :

instance('Species')/root/item[name=${species}]/_9432_3

At the time I created my form, I did not thought about using a question name to access the wanted attribute.
I tried with your form but it seems to not be possible.

instance('Species')/root/item[name=${species}]/${quadrant}

This syntax does not work and does not rise any error (so I think ODK is looking for a column named '${quadrant}' that does not exists. Maybe xlsforms gurus (@LN , @Xiphware and others) can complete or correct my understandings :wink:

This would be really helpful and practical indeed, at least from a theoretical point of view :slight_smile:

1 Like

Yes, that's correct. To do what you would like, I think we'd need to support something like:

instance('Species')/root/item[name=${species}]/*[local-name()=${quadrant}]
1 Like

Thanks, I tried to follow mathieubossaert's example but I don't know why I don't get the value 4 for the indicated species and dial even if I transformed the dials into allowed characters as suggested. I'm probably still doing something wrong that I don't understand. If you want, I'll reattach the updated files. I think I place the csv correctly in the "buco da-media" folder.
Thank you
buco_da.xlsx (1.3 MB)
BuchiTN.csv (2.2 MB)