Oct 20 2021 01:37 PM
Hi I have an If Statement that conditionally formats the background based on a date as follows;
Oct 21 2021 12:51 AM - edited Oct 21 2021 12:52 AM
@newbeetle your logic is flawed:
1) if(@currentField <= @now,'sp-field-severity--blocked', if(@currentField <= @now + 7776000000 - a date could be both of these so it wouldn't know how to apply the formatting consistently correctly.
2) you can't have "Failed" in a date/time column. You would need to have the status in a different column and then use that in the JSON formula.
I will post a solution shortly using more simple JSON than the class/attributes method.
Rob
Los Gallardos
Intranet, SharePoint and Power Platform Manager (and classic 1967 Morris Traveller driver)
Oct 21 2021 05:29 AM
Hi Rob,
I see what you mean, I'm very new to JSON but have applied your advice and have utilised an additional column and now have this working.
Many thanks
Oct 21 2021 06:01 AM
Solution@newbeetle the simpler JSON is:
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/column-formatting.schema.json",
"elmType": "div",
"txtContent": "@currentField",
"style": {
"background-color": "=if([$Status] == 'Failed', '#7d0000', ((if(@currentField <= @now, 'red', if((@currentField >= @now && @currentField <= @now + 7776000000),'orange','green')))",
"color": "white"
}
}
Rob
Los Gallardos
Intranet, SharePoint and Power Platform Manager (and classic 1967 Morris Traveller driver)
Oct 21 2021 06:01 AM
Solution@newbeetle the simpler JSON is:
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/column-formatting.schema.json",
"elmType": "div",
"txtContent": "@currentField",
"style": {
"background-color": "=if([$Status] == 'Failed', '#7d0000', ((if(@currentField <= @now, 'red', if((@currentField >= @now && @currentField <= @now + 7776000000),'orange','green')))",
"color": "white"
}
}
Rob
Los Gallardos
Intranet, SharePoint and Power Platform Manager (and classic 1967 Morris Traveller driver)