Time Zone Conversion from Browser to Server and Server to Browser
KB001919
PRODUCT
Introduction
When using K2 across multiple time zones, it is important to understand how K2 converts date and time values from a client browser to the K2 server, and from the K2 server back to a client browser.
- The time zone configuration settings for the Internet Information Services (IIS) server and the K2 server must be in sync to ensure you won't have date or time conversion issues
- These conversions only apply to the DateTime SmartObject type
- These conversions do not apply to non-SmartObject Date and Time data types
- See the following topics for more information about date and time use cases, conversion expressions, and configuration settings:
Browser to Server Conversion
Any date or time value typed or selected in the browser is assumed to be in the client machine time zone. The date object in JavaScript has an underlying Coordinated Universal Time (UTC) value associated with it that handles the conversion to and from the browser's local time. This underlying value is sent to the IIS server as a UTC string using the Universal Sortable ("u") format.
The IIS server receives the UTC value and converts it to server's local date time. This value is sent on to the K2 server as a server local date time string using the Sortable ("s") format. The K2 server reads the value as a server local date time and passes it on to the SmartObject service. The SmartObject service defines how to send this on to the line of business (LOB) system.
Server to Browser Conversion
The SmartObject service reads a date from the LOB system and converts it to a server local date time. This is sent through the SmartObject service as a server local string to the IIS server using the Sortable ("s") format.
The IIS server receives the server local string, converts it to a UTC string using the Universal Sortable ("u") format, and sends this to the browser. The browser (SmartForms runtime) loads the date object from the UTC string and displays the date in the browser's time zone.