dt_make_ansi_date (private)
dt_make_ansi_date year month day
Defined in packages/acs-datetime/tcl/acs-datetime-procs.tcl
Construct an ISO date from decimal components without interpreting leading zeros as octal. Leave calendar rollover to clock scan rather than imposing stricter civil-date validation here. One- and two-digit years retain Tcl's legacy century interpretation; four-digit years are literal.
- Parameters:
- year (required)
- month (required)
- day (required)
- Partial Call Graph (max 5 caller/called nodes):
- Testcases:
- No testcase defined.
Source code: set year_text [string trim $year] foreach component {year month day} { set value [string trim [set $component]] if {![regexp {^[+-]?[0-9]+$} $value]} { error "Invalid decimal date component: $value" } scan $value %d $component } if {[regexp {^[0-9]{1,2}$} $year_text]} { set year [clock format [clock scan "$year_text-01-01"] -format %Y] scan $year %d year } return [format %04d-%02d-%02d $year $month $day]XQL Not present: PostgreSQL, Oracle Generic XQL file: packages/acs-datetime/tcl/acs-datetime-procs.xql