Jul 24, 2018 07:24 AM
Hi there,
Hoping someone can help.
Long story short, I am trying to filter the results AirTable brings back to only the future 30 days.
I have got future days working as below:
filterByFormula: ‘Date >= TODAY()’
But how do I change this to be essentially today + 30?
(Im sure its very simple but I cant get anything working).
Cheers,
Adrian
Jul 24, 2018 08:32 AM
Hi
Here is a sample that I think it can works for you. I open in three columns for a better understanding but you can work on the final formula later to have all together.
Rgds
Jul 24, 2018 08:42 AM
Thanks Luiggi,
Is it possible to write that in javascript without the need to create a new column in AirTable?
e.g. this is what i currently have (minus the within 30 days from today logic)
.select({
view: “Grid view”,
sort: [{field: “Date”, direction: “asc”}],
filterByFormula: ‘Date >= TODAY()’
})
Cheers,
Adrian
Jul 24, 2018 09:04 AM
I suppose will be easy for somebody who know javascript. (not me, have in mind to learn it in a near future).
These are my formulas:
DATEADD(TODAY(),30,‘d’) /* Here you add 30 days to today /
DATETIME_DIFF({Today+30},Date,‘d’) / Here you subtract previous calculus to your date /
IF(AND({Days Diff}>=0,{Days Diff}<=30),“YES”,“NO”) / Here you evaluate if it is in range (next 30 days) */
Surely you can put altogether in a formula that should look something like this:
sort: [{field: “Date”, direction: “asc”}],
filterByFormula: ‘AND(DATETIME_DIFF(DATEADD(TODAY(),30,‘d’),Date,‘d’)>=0,DATETIME_DIFF(DATEADD(TODAY(),30,‘d’),Date,‘d’)<=30)’
But you have to try it.
Best luck
Jul 24, 2018 09:12 AM
Thanks Luiggi
For ref I eventually worked it out to be:
filterByFormula: “IF(Date >= TODAY(), Date <= DATEADD(TODAY(), 30, ‘days’))”
A.