On this page
Overview
You can specify the format that is used to view date columns where the actual data is not changed, just how it is displayed. This helps to keep the data looking consistent even if the provided data is not. This can be enabled with the M column type for the Column types parameter corresponding to the column. Advanced date sorting specifies how to use the M column type to customize how the column data is interpreted as a data. With an additional specification, the format of how the date must appear when viewed.
Two date formats are needed to support both interpreting the data and formatting the output.
- Input format - this is first format specified on the M column type, although when nothing is specified, the default format is used. See Advanced date sorting for more details.
- Display format - this is how you want the date to be displayed and sorted. If not specified, the column is displayed as-is. The display format is similar but, necessarily, more complex than the input format. The ~ character is used to separated the input and display formats to avoid most conflicts with characters used in formats. This is summarized in the succeeding sections.
Examples
Column type | Input format | Display format |
---|---|---|
M~YYYY.MM.DD | <default> | YYYY.MM.DD |
MDDMMMYYYY~YYYY.MM.DD | DDMMMYYYY | YYYY.MM.DD |
M(de)DDMMMYYYY~YYYY.MM.DD | (de)DDMMMYYYY | YYYY.MM.DD |
MX~DD.MM.YY | Unix timestamp | DD.MM.YY |
MDD MMM YYYY~YYYY.MM.DD | DD MMM YYYY Default Confluence Date Picker (US) | YYYY.MM.DD |
Usage
The formatting options listed on this page can be defined through the Column types parameter within the following macros:
- CSV macro
- Table Plus macro
- Attachment Table macro
- JSON Table Macro
- SQL Macro
- SQL-query Macro
- SQL-file Macro
- Excel macro
Screenshot
Formatting options
Acknowledgement
Advanced date sorting support with the M column type is provided using Javascript implemented by the Table Library for Bob Swift Apps with the help of the Moment.js library (open source, MIT license). A summary of the relevant parts of the moment.js documentation is repeated here.