The PM Procedure

Summary of Differences

The computation of the schedule, the resource-constrained scheduling algorithm, the resource usage information, and all other aspects of the scheduling engine for PROC PM are the same as the ones for PROC CPM. Refer to Chapter 2, "The CPM Procedure," for details. Some minor differences that pertain to the Schedule Data set and ALIGNTYPE statement are explained in the following sections.

Schedule Data Set

The Schedule data set produced by PROC PM is very similar to the Schedule data set produced by PROC CPM. See the OUT= Schedule Data Set section in the PROC CPM chapter.

However, unlike PROC CPM, the PM procedure is interactive in nature; it enables you to add activities, set precedence constraints, reorder the activities, and so on. Thus, the output data set produced by PROC PM is designed to capture the original project data as well as all the changes that are made to the project in the course of the interactive session.

There are several differences between the forms of the Schedule output data sets produced by the PM and CPM procedures:

The third set of observations is present only if the project has resource-driven durations. The value of the OBS_TYPE variable for these observations is 'WORK.' These observations specify the WORK value for each resource used by each activity in the project.

  • The order of the activities in the Schedule data set produced by PROC PM corresponds to the order in which the activities appear in the Table View at the end of the interactive session. Likewise, when the procedure is first invoked, the order of the activities in the Table View corresponds to the order in which the activities are defined in the Activity input data set. If, during the course of the session, some of the activities are reordered or deleted, or if some new activities are added, the Schedule output data set contains all the activities that are defined in the Table View at the end of the session.
  • The PM procedure also assigns a numeric identifier for each activity. These values are assigned by PROC PM consecutively in the order of the activities in the Table View and are saved in a variable called ACTID (see the section "Renumbering the Activities"). In addition to the ACTID variable, the Schedule data set also contains a numeric variable called SUCCID, which contains the numeric identifier for the successor activities in the observations for which OBS_TYPE='LOGIC.' If the PROJECT statement is used in the invocation of the PM procedure, a numeric variable called PNTID is added to the Schedule data set; this variable identifies the parent task for each activity.

    Note: If the ACTIVITY variable in the Activity input data set is a character variable, the ACTID, SUCCID, and PNTID variables are added to the Schedule data set in addition to the ACTIVITY, SUCCESSOR, and PROJECT variables. On the other hand, if the ACTIVITY variable in the Activity input data set is numeric, the new ACTID, SUCCID, and PNTID variables replace the numeric ACTIVITY, SUCCESSOR, and PROJECT variables, respectively.

  • ALIGNTYPE Statement

    In PROC PM, if an ALIGNTYPE variable is specified but no ALIGNDATE variable is specified, then no error message is generated; PROC PM ignores the ALIGNTYPE variable and generates a schedule. However, in PROC CPM, this results in an error message with no schedule generated.

    RESOURCE Statement

    In PROC CPM, the NORESOURCEVARS option in the RESOURCE statement requests that the variables specified in the RESOURCE statement be dropped from the Schedule data set. However in PROC PM, this has no effect.

    Previous Page | Next Page | Top of Page