Skip to content

Date Format

Upon initial installation, the date format in Cals Platz is set to "N/A". In this state, the system defaults to the yyyy-MM-dd format. For database columns of type DATE or DATETIME, data is stored according to the input format allowed by the configured DB Type (MySQL).

The Locale Date Format feature allows modification of system's default date format at the tenant level. This setting impacts how date-related fields are displayed and stored across Cals Web Application, Mobile, and Open API.

How to Change the Date Format

In the App environment, you can modify the Date Format from the Application Setting > Locale menu. In Provisioning, initial date format settings are applied to all tenants. Subsequent changes can be made within Tenant Setting > Locale followed by Deploy and Publish to apply tenant-specific configurations.


[Image 1. Location of Date Format Setting within the Locale Menu]

  1. Selecting a locale automatically assigns a suitable date format.
  2. The assigned Date Format can be changed.
  3. N/A: Use this option if you do not wish to apply any Date Format.

Date Format Application Logic

Before the Venus Project version released on February 25, date format conversion logic was not available. As a result, data that did not conform to the expected format was either registered without conversion or stored without error. Therefore, configuring Locale > Date Format may cause errors (e.g., [Error Code 501006] Config contains an error) in components that previously handled data retrieval and storage normally. If no Date Format is set, these errors will not occur.

  • To disable Data Format application, set Locale > Date Format to N/A.

The Locale Date Format is applied to the core BO program (Lambda) and affects data retrieval in web, mobile, and Open API interfaces.

Table FieldBO FieldAvailabilityAvailability Description
DATEDateYRecommended
DateTime
UTCDateTime
NRetrieval is possible, but saving will result in an error.
StringNFor retrieval, data is not converted to the Locale format; during saving, it is stored as 0000-00-00.
`DATETIME`DateTime
UTCDateTime
YRecommended
DateYRecommended for use with a DatePicker
(the value must be in a proper date format; including a time format will cause an error)
StringYRecommended for use with a DatePicker
(the value must be in a proper date format; including a time format will cause an error)
VARCHARDate
DateTime
UTCDateTime
YStored as the input value without conversion by storage conversion logic.
Use DatePicker for Date BO Fields and DateTimePicker for DateTime/UTCDateTime BO Fields. Using Text controls will display data in the database's stored format, which may not align with the Locale setting.

Data Retrieval Logic

This logic formats date-related data retrieved from the database for display in components like List and Form Components.

Conversion Rules

  1. Conversion occurs when the Table Column is of type DATE or DATETIME and the BO Field is Date, Datetime, or UTCDateTime.

    WARNING

    Date Format logic is not applied to non-date Table Column types (e.g., VARCHAR or CHAR).

  2. The format of the retrieved data is determined based on the BO Field.
  3. Conversion priority: 1) Display Format, 2) Locale Date Format.

Case 1) Locale: dd/MM/yyyy, Display Format: N/A

When only Locale is registered, data is converted using the Locale format.

Table ColumnBO FieldConversion LogicStored Value (DB)On-Screen Result
(displayed in Locale format: dd/MM/yyyy)
VarcharStringN/A2025-02-01-
DateStringN/A2025-02-01-
DateTimeStringN/A2025-02-01 00:00:00-
VarcharDateN/A2025-02-01-
DateDateConversion Target2025-02-0101/02/2025
DateTimeDateConversion Target2025-02-01 00:00:0001/02/2025
VarcharDateTimeN/A2025-02-01 00:00:00-
DateDateTimeConversion Target2025-02-0101/02/2025 00:00:00
DateTimeDateTimeConversion Target2025-02-01 00:00:0001/02/2025 00:00:00

Case 2) Locale : N/A, Display Format : dd-MM-yyyy

When only the Display Format is registered, conversion is based on the Display Format.

Table ColumnBO FieldConversion LogicStored Value (DB)

On-Screen Result

Display Format: dd-MM-yyyy

VarcharStringN/A2025-02-01
DateStringN/A2025-02-01
DateTimeStringN/A2025-02-01 00:00:00
VarcharDateN/A2025-02-01
DateDateConversion Target2025-02-0101-02-2025
DateTimeDateConversion Target2025-02-01 00:00:0001-02-2025
VarcharDateTimeN/A2025-02-01 00:00:00
DateDateTimeConversion Target2025-02-0101-02-2025 00:00:00
DateTimeDateTimeConversion Target2025-02-01 00:00:0001-02-2025 00:00:00

Case 3) Locale : dd/MM/yyyy, Display Format : dd-MM-yyyy

When both Locale and Display Format are registered, conversion is based on the Display Format.

Table ColumnBO FieldConversion LogicStored Value (DB)On-Screen Result
VarcharStringN/A2025-02-01
DateStringN/A2025-02-01
DateTimeStringN/A2025-02-01 00:00:00
VarcharDateN/A2025-02-01
DateDateConversion Target2025-02-0101-02-2025
DateTimeDateConversion Target2025-02-01 00:00:0001-02-2025
VarcharDateTimeN/A2025-02-01 00:00:00
DateDateTimeConversion Target2025-02-0101-02-2025 00:00:00
DateTimeDateTimeConversion Target2025-02-01 00:00:0001-02-2025 00:00:00

Data Storage Logic

Conversion Rules:

  1. For Table Columns of type Date or DateTime, if the BO Field does not match the conversion logic, data may not be saved or an error may occur.
  2. Conversion priority: 1) Data Format, 2) Locale Date Format.

    WARNING

    Data will not be stored if the input value from the screen is not in the correct format.

Case 1) Locale : N/A

When no Date Format is specified, data is converted and stored using the MySQL default date format, yyyy-MM-dd.

Table ColumnInput Value (Screen)Stored Value (DB)Description
Varchar2025-01/012025-01/01
Date2025-01-012025-01-01
Date2025-01/012025-01-01None
Date202501012025-01-01
DateTime2025-01-01 00:00:002025-01-01 00:00:00
DateTime2025-01-012025-01-01 00:00:00
DateTime2025-01/01 00:00:002025-01-01 00:00:00
DateTime20250101 00:00:002025-01-01 00:00:00

Case 2) Locale : dd-MM-yyyy

The Locale format is used to check the input value and store it accordingly.

Table ColumnInput Value (Screen)Stored Value (DB)
Varchar01/01-20252025-01/01Saved as input value without applying conversion logic.
Date01-01-20252025-01-01Saved as the input value conforms to the format.
Date01/01-2025Error: Does not conform to the Locale format.
Date01012025Error: Does not conform to the Locale format.
DateTime01-01-2025 00:00:002025-01-01 00:00:00
DateTime01-01-20252025-01-01 00:00:00
DateTime

01/01-2025

00:00:00

Error: Does not conform to the Locale format.
DateTime

01012025

00:00:00

Error: Does not conform to the Locale format.

Values for DATE and DATETIME columns in the DB are always stored in the yyyy-MM-dd format, regardless of the Data Format or Locale DateFormat settings.

For text columns such as VARCHAR or CHAR, the data is stored in the format specified by the user's Data Format or Locale DateFormat settings.

Date Format Application Considerations

  1. Changing the Date Format from N/A triggers additional conversion logic. If the Table Column type and BO Field type do not match, the logic may not function correctly. Therefore, if you modify the settings for a tenant originally configured as N/A, you must verify data retrieval and storage on all screens.
  2. If the data stored in the database is in a format that cannot be converted, conversion errors may occur, causing data retrieval to fail. Therefore, after deployment, it is necessary to check the data stored in the database if retrieval errors occur.
  3. Date Format settings do not apply to BO Field Calculations. For example, if a field displayed as "01/01/2025" due to Locale settings is processed with LEFT([DATE],4), it will display "2025".
  4. Locale Date Format settings are not applied in the mobile app.
  5. After changing the Data Format or Locale Date Format and deploying, users with existing metadata may encounter errors during data storage or retrieval. A re-login is required to obtain the new metadata.
  6. Considerations for Component and Control Interface Actions: When transferring values from a source BO Field (String) to a target BO Field (Date or DateTime), the value must be in a format compatible with the specified Date Format or the default formats (yyyy-MM-dd or yyyy-MM-dd HH:mm:ss).
  7. Date format conversion logic is applied on the server side based on the Business Object Field type. Therefore, when third-party applications (e.g., Java) access data via Cals Lambda or APIs related to BO Config, the request and response data must be formatted according to the configured Locale Date Format.