Date Range Filter using web browser

Hi I am a software engineer in Scotland and I am trying to download ODK submissions from our ODK central server. Sorry cant go into anything company specific. Apologies if this question is in the wrong forum as I am a newbie here!

1. What is the issue? Please be detailed.
I am new to ODK central and we have a series of forms with submissions being logged per form. I want to download the zip file per form with all the submissions for that form for a period of time. I started with trying to get submissions for this week and hoped to move to a specified date range after that.

I am trying the filter on my linux firefox browser https://path_to_server/2/forms/form_name/submissions.csv.zip?%24filter=week(__system%2FsubmissionDate)%20eq%20week(now())

I based this query on examples I found in the ODK online docs.

As I said I want (if this works - it will get me started) to move to submissions from day A to day B

2. What steps can we take to reproduce this issue?

Replace the server path and form name parts above with any test server and form and execute the link in a browser

3. What have you tried to fix the issue?

I have tried a few combinations of syntax but either I just get the whole set of submissions or I get an error, for example changing from "gt" to "gte" in one query broke it.

4. Upload any test forms or screenshots below.

Nothing that is not above in description

I can get =month.....eq month... to return something - looks like just records from this month so progress!
Perhaps "week" is not supported?
Some zips are very big so would prefer something like 2 days of data
So would like submissions between midnight N days ago and midnight of day of query

Trying:
?%24filter=__system%2FsubmissionDate%20gt%202022-01-01T00%3A00%3A00Z%20and%20__system%2FsubmissionDate%20lt%202022-01-05T00%3A00%3A00Z

1 Like

That seems to work - is this robust enough ? Is there a better way?

That looks good to me, @rossd42. If you're wondering about the syntax, it comes from the OData standard.

If you're going to be doing manual downloads, you can use the download button on the submissions page and the date filter there. The download respects any filters applied. You can copy the generated link to see its structure (it matches yours).

If you're doing the downloads as part of a script, you can write the query without the HTML escaping and then do the escaping programmatically. That should hopefully make the query look a little more readable.

1 Like