Jan 05 2021 08:37 PM
Hi, I'm new on JSON Script.
I've problem for JSON Validate Date on Sharepoint online.
I just write on sharepoint 365 online
{ "$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json", "elmType": "div", "txtContent": "=if(@now>=[$StartDate],if(@now<=[$EndDate],'active','non active'),'non active')" }
My problem the result always non active when it saved.
I need status will be "active" if date range on current month and will be change automatically to "Non Active" if out of current month
I hope my pic can tell about my problem
Thanks everyone
Jan 05 2021 09:57 PM
Solution
Can you please add more details about your requirement & conditions to check?
Do you want to show the column value as "Active" when current (today's) date is in between Start date and End Date? Or if both the Start date and End date are in current month?
Please click Mark as Best Response if my post helped you to solve your issue. This will help others to find the correct solution easily. It also closes the item. If the post was useful in other ways, please consider giving it Like.
Jan 05 2021 10:14 PM
@ganeshsanap sorry for my question is have a little missing.
I mean is "Active" when current (today's) date is in between Start date and End Date.
Thanks for your help
Jan 05 2021 11:16 PM
Try using below JSON code. It should work for you:
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
"elmType": "div",
"txtContent": "=if(@now >= [$StartDate] && @now <= [$EndDate], 'Active', 'Not Active')"
}
Microsoft documentation: Use column formatting to customize SharePoint
Please click Mark as Best Response if my post helped you to solve your issue. This will help others to find the correct solution easily. It also closes the item. If the post was useful in other ways, please consider giving it Like.
Jan 05 2021 11:20 PM
Jan 06 2021 12:14 AM - edited Apr 17 2023 05:21 AM
What is the internal name of Start date and End date columns?
In JSON formatting, you need to use internal name of your columns to refer their value in JSON code. Check below documentation to find out the internal names of start date and end date. and use those in place of [$StartDate] and [$EndDate].
Follow this article to get the internal name your SharePoint column: Find the internal name of SharePoint column
Here is the output of the same code in my SharePoint list:
Microsoft documentation: [$FieldName]
Jan 06 2021 12:33 AM
@ganeshsanap your are the best
Thanks for your help, anyway do you know how to give color (example, active will be green, non active will be red).
Jan 06 2021 01:13 AM
Use below code for changing colors:
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/v2/column-formatting.schema.json",
"elmType": "div",
"txtContent": "=if(@now >= [$StartDate] && @now <= [$EndDate], 'Active', 'Non Active')",
"style": {
"color": "=if(@now >= [$StartDate] && @now <= [$EndDate], 'green', 'red')",
"font-weight": "bold"
}
}
For more information related to styling refer: Use column formatting to customize SharePoint
If my posts was useful to you, please consider giving it Likes.
Jan 06 2021 06:06 PM
Jan 05 2021 09:57 PM
Solution
Can you please add more details about your requirement & conditions to check?
Do you want to show the column value as "Active" when current (today's) date is in between Start date and End Date? Or if both the Start date and End date are in current month?
Please click Mark as Best Response if my post helped you to solve your issue. This will help others to find the correct solution easily. It also closes the item. If the post was useful in other ways, please consider giving it Like.