The GANTT Procedure

Specifying the PADDING= Option

As explained in the section Schedule Data Set, the finish times in the Schedule data set denote the final time unit of an activity’s duration; that is, the activity finishes at the end of the day/second specified as the finish time. A plot of the activity’s duration should continue through the end of the final time unit. Thus, if the value of the E_FINISH variable is '4JUN04', the early finish time for the activity is plotted at the end of June 4, 2004 (or the beginning of June 5, 2004).

In other words, the finish times are padded by a day (second) if the finish time variables are formatted as SAS date (SAS time or datetime) values. This treatment is consistent with the meaning of the variables as output by PROC CPM. Default values of PADDING corresponding to different format types are shown in Table 8.3.

The PADDING= option is provided to override the default padding explained above. Valid values of this option are NONE, SECOND, MINUTE, HOUR, DAY, WEEK, MONTH, QTR, YEAR, DTSECOND, DTMINUTE, DTHOUR, DTWEEK, DTMONTH, DTQTR, and DTYEAR. Use the value NONE if you do not want the finish times to be adjusted.

Table 8.3: Default Values of the PADDING= Option Corresponding to Format Type



SAS time value


SAS date value


SAS datetime value




It is recommended that when plotting zero duration activities, you include a variable in the Schedule data set that has value zero if and only if the activity has zero duration. Defining this variable to the GANTT procedure using the DURATION= (or DUR=) option in the CHART statement ensures that a zero duration activity is represented on the chart by a Milestone. If this is not done, an activity with zero duration is shown on the chart as having a positive duration since finish times are padded to show the end of the last time unit.