PROC CPM Statement
PROC CPM options ;
The following options can appear in the PROC CPM statement.
-
ADDACT
- ADDALLACT
- EXPAND
-
indicates that an observation is to be added to the Schedule output
data set (and the Resource Schedule output data set) for each
activity that appears as a value of the variables specified in the
SUCCESSOR or PROJECT statements without appearing as a value of the
variable specified in the ACTIVITY statement.
If the PROJECT statement is used, and the activities
do not have a single common parent, an observation is also added to
the Schedule data set containing information for a single common
parent defined by the procedure.
-
CALEDATA=SAS-data-set
- CALENDAR=SAS-data-set
-
identifies a SAS data set that specifies the work pattern during
a standard week for each of the calendars that are to be used in the
project. Each observation of this data set (also referred to as the
Calendar data set) contains the name or the
number of the calendar being defined in that observation, the names of
the shifts or work patterns used each day, and, optionally, a standard
workday length in hours. For details on the structure of this data set,
see the "Multiple Calendars" section.
The work shifts referred
to in the Calendar data set are defined in the Workday data set.
The calendars defined in the Calendar data set can be identified with
different activities in the project.
-
COLLAPSE
-
creates only one observation per activity in the
output data set when the input data set for a network in AON
format contains multiple observations for the same
activity. Note that this option is allowed only if the network is in
AON format.
Often, the input data set may have more than one observation per
activity (especially if the activity has several successors).
If you are interested only in the schedule information about
the activity, there is no need
for multiple observations in the output data set for
this activity. Use the COLLAPSE option in this case.
-
DATA=SAS-data-set
-
names the SAS data set that contains the network specification and
activity information. If the DATA= option is omitted, the most recently created
SAS data set is used. This data set (also referred to in this chapter
as the Activity data set) contains all of the information that is
associated with each activity in the network.
-
DATE=date
-
specifies the SAS date, time, or datetime that is to be used
as an alignment date for the project. If neither the FINISHBEFORE
option nor any other alignment options are specified, then the CPM
procedure schedules the
project to start on date.
If date is a SAS time value, the value of the INTERVAL=
parameter should be
HOUR, MINUTE, or SECOND; if it is a SAS date value, interval
should be DAY, WEEKDAY, WORKDAY, WEEK, MONTH, QTR, or YEAR; and if it
is a SAS datetime value, interval should be DTWRKDAY,
DTDAY, DTHOUR, DTMINUTE,
DTSECOND, DTWEEK, DTMONTH, DTQTR, or DTYEAR.
-
DAYLENGTH=daylength
-
specifies the length of the workday. On each day, work is scheduled
starting at the beginning of the day as specified in the DAYSTART=
option and ending daylength hours later. The DAYLENGTH= value
should be a SAS time value. The default value of daylength
is 24
if the INTERVAL= option is specified as DTDAY, DTHOUR, DTMINUTE, or
DTSECOND, and the default value of daylength is
8 if the INTERVAL= option is specified as WORKDAY
or DTWRKDAY. If INTERVAL= DAY or WEEKDAY and the value of
daylength is less than 24, then the schedule produced
is in SAS datetime values. For other values of the INTERVAL= option,
the DAYLENGTH= option is ignored.
-
DAYSTART=daystart
-
specifies the start of the workday. The DAYSTART= value should be a
SAS time value. This parameter should be specified only when
interval is one of the following: DTDAY, WORKDAY,
DTWRKDAY, DTHOUR,
DTMINUTE, or DTSECOND; in other words, this parameter should be
specified only if the schedule produced by the CPM procedure is
in SAS datetime values. The default value of daystart
is 9 a.m. if INTERVAL is WORKDAY; otherwise, the value of
daystart
is equal to the time part of the SAS datetime value specifed for the
DATE= option.
-
FBDATE=fbdate
-
specifies a finish-before date that can be specified in addition to
the DATE= option. If the FBDATE= option is not given
but the FINISHBEFORE option is specified,
then fbdate = date. Otherwise, fbdate
is equal to the
project completion
date. If fbdate is given in addition to the DATE= and
FINISHBEFORE options,
then the minimum of the two dates is used as the required project
completion date. See the "Scheduling Subject to Precedence Constraints" section
for details on how the procedure uses the date and
fbdate to compute the early and late start schedules.
-
FINISHBEFORE
-
specifies that the project be scheduled to complete
before the date given in the DATE= option.
-
FIXFINISH
-
specifies that all finish tasks are to be constrained by their
respective early finish times. In other words, the late finish times of all
finish tasks do not float to the project completion time.
-
HOLIDATA=SAS-data-set
- HOLIDAY=SAS-data-set
-
identifies a SAS data set that specifies holidays. These holidays
can be associated with specific calendars that are also identified in
the HOLIDATA= data set (also referred to as the Holiday data set).
The HOLIDATA= option
must be used with a HOLIDAY statement
that specifies the variable in the SAS data set that contains the start
time of holidays. Optionally, the data set can include a variable that
specifies the length of each holiday or a variable that identifies the
finish time of each holiday (if the holidays are longer than one day).
For projects involving multiple calendars, this data set can also
include the variable specified by the CALID statement that identifies
the calendar to be associated with each holiday. See
the "Multiple Calendars" section for further
information regarding holidays and multiple calendars.
-
INTERVAL=interval
-
requests that each unit of duration be measured in
interval units. Possible values for interval are
DAY, WEEK, WEEKDAYS, WORKDAY, MONTH, QTR, YEAR, HOUR, MINUTE, SECOND,
DTDAY, DTWRKDAY, DTWEEK, DTMONTH, DTQTR, DTYEAR, DTHOUR, DTMINUTE, and
DTSECOND. The default value is based on the format of the DATE=
parameter. See the "Using the INTERVAL= Option" section for further
information regarding this option.
-
INTPER=period
-
requests that each unit of duration be equivalent to
period units
of duration. The default value is 1.
-
NACTS=nacts
-
specifies the number of activities for which memory is allocated in
core by the procedure. If the number of activities exceeds
nacts, the procedure uses a utility data set for
storing the activity array.
The default value for nacts
is set to nobs, if the network is specified in AOA
format, and to nobs×(nsucc+ 1), if
the network is specified in AON format, where nobs is the
number of observations in the Activity data set and nsucc
is the number of variables specified in the SUCCESSOR statement.
-
NADJ=nadj
-
specifies the number of precedence constraints (adjacencies)
in the project network.
If the number of adjacencies exceeds
nadj, the procedure uses a utility data set for
storing the adjacency array. The default value of nadj
is set to nacts if the network is in AON format, and
it is set to nacts×2 if the network is in
AOA format.
-
NNODES=nnodes
-
specifies the size of the symbolic table used to look up the activity
names (node names) for the network specification in AON (AOA) format.
If the number of distinct names exceeds
nnodes, the procedure uses a utility data set for
storing the tree used for the table lookup.
The default value for nnodes
is set to nobs×2
if the network is specified in AOA
format and to nobs×(nsucc+ 1) if
the network is specified in AON format, where nobs is the
number of observations in the Activity data set and nsucc
is the number of variables specified in the SUCCESSOR statement.
-
NRESREQ=nres
-
specifies the number of distinct resource requirements corresponding
to all activities and resources in the project. The default value
of nres is set to
nobs×nresvar ×0.25, where
nobs is the number of observations in the Activity
data set, and nresvar is the number of RESOURCE variables
in the Activity data set.
-
OUT=SAS-data-set
-
specifies a name for the output data set that contains the schedule
determined by PROC CPM. This data set (also referred to as the
Schedule data set) contains all of the variables
that were specified in the Activity data set to define the
project. Every observation in the Activity data set has a
corresponding observation in this output data set. If PROC CPM is used
to determine a schedule that is not subject to any resource
constraints, then this output data set contains the early and late
start schedules; otherwise,
it also contains the resource-constrained schedule. See
the "OUT= Schedule Data Set" section
for information about the names of the new
variables in the data set. If the OUT= option is omitted,
the SAS system still creates a data set and
names it according to the DATAn naming convention.
-
RESOURCEIN=SAS-data-set
- RESIN=SAS-data-set
- RIN=SAS-data-set
- RESLEVEL=SAS-data-set
-
names the SAS data set that contains the levels available
for the different resources used by the activities in the
project. This data set also contains information about the
type of resource (replenishable or consumable), the calendar
associated with each resource, the priority
for each resource and lists, for each resource, all the alternate
resources that can be used as a substitute. In addition, this data set
indicates whether the resource rate affects the duration or not.
The specification
of the RESIN= data set (also
referred to as the Resource data set) indicates to
PROC CPM that the schedule of the project is to be determined subject to
resource constraints. For further information
about the format of this data set,
see the "RESOURCEIN= Input Data Set" section.
If this option is specified, you must also use the RESOURCE statement
to identify the variable names for the resources to be used for
resource-constrained scheduling. In addition,
you must specify the name of the variable
in this data set (using the PERIOD= option in the RESOURCE statement)
that contains the dates from which the resource availabilities in each
observation are valid. Furthermore, the data set must be sorted in
order of increasing values of this period variable.
-
RESOURCEOUT=SAS-data-set
- RESOUT=SAS-data-set
- ROUT=SAS-data-set
- RESUSAGE=SAS-data-set
-
names the SAS data set in which
you can save resource usage profiles for
each of the resources specified in the RESOURCE statement. This data set
is also referred to as the Usage data set in the rest of this
chapter. In the Usage data set
you can save the resource usage by time period for the early
start, late start, and resource-constrained schedules and for the
surplus level of resources remaining after resource allocation is
performed.
By default,
it provides the usage profiles for the early and
late start schedules if resource allocation is not performed.
If resource allocation is performed, this data set
also provides usage profiles for the resource-constrained schedule and
a profile of the level of remaining resources.
You can control the types of profiles to be
saved by using the ESPROFILE (early start usage), LSPROFILE (late start
usage), RCPROFILE (resource-constrained usage), or AVPROFILE (resource
availability after resource allocation) options in the RESOURCE
statement. You can specify any combination of these four options. You
can also specify the ALL option to indicate that all four options
(ESPROFILE, LSPROFILE, RCPROFILE, AVPROFILE) are to be in effect. For
details about variable names and the interpretation of the
values in this data set, see the "RESOURCEOUT= Usage Data Set" section.
-
RESOURCESCHED=SAS-data-set
- RESSCHED=SAS-data-set
- RSCHEDULE=SAS-data-set
- RSCHED=SAS-data-set
-
names the SAS data set in which
you can save the schedules for each resource used by any activity.
This option is valid whenever the RESOURCE statement is used to specify
any resource requirements. The resulting data set is especially useful
when resource-driven durations or resource calendars cause the resources
used by an activity to have different schedules.
-
SUPPRESSOBSWARN
-
turns off the display of warnings and notes for every observation with
invalid or missing specifications.
-
WORKDATA=SAS-data-set
- WORKDAY=SAS-data-set
-
identifies a SAS data set that defines the work pattern during a
standard working day. Each numeric variable in this data set (also
referred to as the Workday data set) is assumed
to denote a unique shift pattern during one working day. The variables
must be formatted as SAS time values and the observations are
assumed to specify, alternately, the times when consecutive shifts start
and end. See the "Multiple Calendars" section for a
description of this data set.
-
XFERVARS
-
indicates that all relevant variables are to be copied
from the Activity data set to the Schedule data set.
This includes all variables used in
the ACTUAL statement, the
ALIGNDATE and ALIGNTYPE statements,
the SUCCESSOR statement, and the RESOURCE statement.
Copyright © 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.