laptop and a wrench

Bug

Null values for date fields are not calculated correctly in Map Viewer when using symbology from an Arcade expression.

Last Published: January 3, 2023 ArcGIS Online
Bug ID Number BUG-000154016
SubmittedNovember 29, 2022
Last ModifiedAugust 23, 2024
Applies toArcGIS Online
Version foundNovember 2022
Operating SystemWindows OS
Operating System Version10.0 64 Bit
StatusAs Designed

Additional Information

When a null value is passed to the Arcade Date function, it gets implicitly converted to the number 0. Date(0) will return the date based on the number of milliseconds since Jan 1 1970 UTC (in this case 0). To avoid this implicit casting, add null checks in the Arcade expression. Documentation on implicit casting: https://developers.arcgis.com/arcade/guide/type-casting/#implicit-number-casting Date function documentation: https://developers.arcgis.com/arcade/function-reference/date_functions/#dateepoch---date

Workaround

Check for null values before creating the date and passing it into the DateDiff function:

var retire = $feature["dateField"]; //.

This is already a date field, and does not need to use the Date() function if (!IsEmpty(retire)) { return IIF(DateDiff(Now(), retire, 'days') >= 0, "retired", "active") } returns null.

Steps to Reproduce

Bug ID: BUG-000154016

Software:

  • ArcGIS Online

Get notified when the status of a bug changes

Download the Esri Support App

Discover more on this topic

Get help from ArcGIS experts

Contact technical support

Download the Esri Support App

Go to download options