.. _workflow-date: .. role:: raw-html(raw) :format: html Date Function (Node) ============================ - Guide to date and time functions used in Workflow. * _date keyword - Provides date-related convenience functions such as creating dates and times, changing formats, and performing operations. - Creating date objects ($_date.getDate) - Gets the current time. .. code-block:: javascript // Wed Jul 02 12:00:00 KST 2025 ${_date.getDate()} - Creating date objects ($_date.toDate) - Converts string or millisecond (long) type values to Date objects. - Usage - $_date.toDate(format, date_string): Converts a string in the specified format to a Date object. - $_date.toDate(milliseconds_number): Converts millisecond values based on January 1, 1970, 00:00:00 to a Date object. - Examples .. code-block:: text // String -> Date object #set($d1 = $_date.toDate("yyyy-MM-dd HH:mm:ss", "2025-07-02 14:00:00")) // Milliseconds -> Date object #set($d2 = $_date.toDate(1751432400000)) - Changing date format ($_date.format) - Usage - $_date.format(format, Date_object) - Examples .. code-block:: text #set($myDate = $_date.toDate("yyyy-MM-dd HH:mm:ss", "2025-07-02 14:00:00")) #set($formatDate = ${_date.format("yyyy-MM-dd", $myDate)}) // Result: 2025-07-02 $formatDate // Convert to yyyy-MM-dd HH:mm format string ${_date.format("yyyy-MM-dd HH:mm", $myDate)} // Convert to yy/MM/dd HH:mm format string ${_date.format("yy/MM/dd HH:mm", $myDate)} // Convert current time to yyyy-MM-dd format string ${_date.format("yyyy-MM-dd", $_date.getDate()} - Date operations (toCalendar, add) - Performs operations such as adding or subtracting dates. - Operations are performed through Calendar objects. - Operation procedure 1. Use $_date.toCalendar(Date_object) to convert a Date object to a Calendar object. 2. Use the $cal.add(unit, increment_value) method to perform date operations. 3. Output the operated Calendar object as a string in the desired format through $_date.format. 4. Major unit constants used in the add method .. code-block:: text Year: 1 Month: 2 Day: 5 Hour: 11 Minute: 12 Second: 13 - Examples .. code-block:: text // Wed Jul 02 12:00:00 KST 2025 #set($myDate = $_date.getDate()) // Create Calendar object based on myDate #set($cal = $_date.toCalendar($myDate)) // Add 10 days, add 10 to Day (5) $cal.add(5, 10) #set($addDate = $_date.format("yyyy-MM-dd", $cal)) // Result: 2025-07-12 $addDate // Important: For new operations, the Calendar object must be reinitialized to the original date #set($cal = $_date.toCalendar($myDate)) // Subtract 1 month, subtract 1 from Month (2) // If not initialized, the final result would be 2025-06-12, subtracting 1 month from 2025-07-12 $cal.add(2, -1) #set($minusMonth = $_date.format("yyyy-MM-dd", $cal)) // Result: 2025-06-02 $minusMonth