The DATE subroutine obtains the current date as set within the system. The call to DATE takes the following form:
CALL DATE (buf)
The date is returned as a 9-byte ASCII character string taking the following form:
dd-mmm-yy
If buf is numeric type and smaller than 9 bytes, data corruption can occur.
If buf is character type, its associated length is passed to the subroutine. If buf is smaller than 9 bytes, the subroutine truncates the date to fit in the specified length. Note that if a CHARACTER array is passed, the subroutine stores the date in the first array element, using the element length-not the length of the entire array. For example, consider the following:
CHARACTER*1 DAY(9) . . . CALL DATE(DAY)
The length of the first array element in CHARACTER array DAY is passed to the DATE subroutine. The subroutine then truncates the date to fit into the one-character element, producing an incorrect result.