The WHEN-COMPILED function returns the date and time the program was compiled as provided by the system on which the program was compiled.
The function type is alphanumeric.
Character |
Contents |
|---|---|
| 1-4 | Four numeric digits of the year in the Gregorian calendar. |
| 5-6 | Two numeric digits of the month of the year, in the range 01 through 12. |
| 7-8 | Two numeric digits of the day of the month, in the range 01 through 31. |
| 9-10 | Two numeric digits of the hours past midnight, in the range 00 through 23. |
| 11-12 | Two numeric digits of the minutes past the hour, in the range 00 through 59. |
| 13-14 | Two numeric digits of the seconds past the minute, in the range 00 through 59. |
| 15-16 | Two numeric digits of the hundredths of a second past the second, in the range 00 through 99. |
| 17 | Either the character '-' or the character '+'. The character '-' is returned if the local time indicated in the previous character positions is behind Greenwich Mean Time. The character '+' is returned if the local time indicated is the same as or ahead of Greenwich Mean Time. |
| 18-19 | If character position 17 is '-', two numeric digits are returned in the range 00 through 12 indicating the number of hours that the reported time is behind Greenwich Mean Time. If character position 17 is '+', two numeric digits are returned in the range 00 through 13 indicating the number of hours that the reported time is ahead of Greenwich Mean Time. |
| 20-21 | Two numeric digits are returned in the range 00 through 59 indicating the number of additional minutes that the reported time is ahead of or behind Greenwich Mean Time, depending on whether character position 17 is '+' or '-', respectively. |
The returned value is the date and time of compilation of the source program that contains this function. For ILE COBOL, the date and time is calculated at the beginning of the compile and is placed in the header line of each listing page, on the DATE-COMPILED paragraph, and in the WHEN-COMPILED special-register. If the program is a contained program, the returned value is the compilation date and time associated with the separately compiled program in which it is contained.