Hi,
So when Appian writes dates to Json, it cannot cast those values correctly if it reads them back.
load( local!data:{ today() }, local!jsonData: a!toJson( local!data ), local!fromJson: cast( typeof(today()), a!fromJson( local!jsonData ) ), a!sectionLayout( contents: { a!textField( value: local!jsonData ), a!textField( value: local!fromJson ) } ) )
Do I have to manually alter the string in order to reorder the date from "YYYY-MM-DDZ" to "DD-MM-YYYYZ" before I run from Json?
Is there a reason that Appian designed it this way?
Discussion posts and replies are publicly visible
JSON does not know anything about dates. What .NET does is a non-standard hack/extension. The problem with dates in JSON and really JavaScript in general – is that there's no equivalent literal representation for dates. In JavaScript following Date constructor straight away converts the milliseconds since 1970 to Date as follows:
var jsonDate = new Date(1297246301973);
Then let's convert it to js format:
var date = new Date(parseInt(jsonDate.substr(6)));
The substr() function takes out the /Date( part, and the parseInt() function gets the integer and ignores the )/ at the end. The resulting number is passed into the Date constructor .