The Microsoft Project Conversion Macros

%SASTOMSP Macro Parameters

%SASTOMSP (PROJ_NAME=project_name, LIBRARY=library,
                               MDBFILE=mdbfile, ACTDS=SAS-data-set,
                               CALDS=SAS-data-set, HOLDS=SAS-data-set,
                               WORKDS=SAS-data-set,RESDS=SAS-data-set,
                          SCHEDULEDS=SAS-data-set, _INTERVAL=_interval,
                          _DATE=_date, _FBDATE=_fbdate,
                          _DAYSTART=_daystart,_DAYLENGTH=_daylength,
                          _CALID=variable, _ACTIVITY=variable,
                          _ID=variable, _DUR=variable,
                          _ALIGNDATE=variable, _ALIGNTYPE=variable,
                          _HEAD=variable, _TAIL=variable, _PROJECT=variable,
                          _SUCCESSOR=_successor, _LAG=_lag,
                          _HOLISTART=variable, _HOLIEND=variable,
                          _HOLIDUR=variable, _RESOURCE=_resource,
                          _RESOBSTYPE=variable, _RESPERIOD=variable,
                          DBMS=identifier, SERVER=pc-server-hostname,
                          PORT=port-number);

General Project Parameters

LIBRARY=library
specifies the location of the input SAS data sets. This parameter can be either a SAS library reference or a path. A path can be specified with double quotes, single quotes, or no quotes. For example, in the following %SASTOMSP invocation, a path is specified with double quotes:
  
    %sastomsp(library="c:\sasproj", mdbfile=c:\mspproj\filename.mdb); 
 
The default value is 'WORK', which is the default libref generally assigned to your temporary SAS data library for the current session or job.

MDBFILE=mdbfile
specifies the output MDB file. This parameter can be either a SAS fileref or a filename. A filename can be specified with double quotes, single quotes, or no quotes.

If mdbfile is a fileref, the macro creates an MDB file as specified by this fileref. If you are running the %MSPTOSAS macro on UNIX, mdbfile has to be a filename.

If mdbfile is a filename without a path, then the %SASTOMSP macro uses the default path of the OUTFILE= option of PROC EXPORT. In many cases, this default path is 'C:\backslashDocuments and Settings\backslashusername\backslash'. See the PROC EXPORT documentation in Base SAS Procedures Guide for details.

This parameter is required; there is no default value.

PROJ_NAME=project_name
specifies the name of the project. The default value is 'Project Imported from SAS'.

Input Data Set Parameters

ACTDS=SAS-data-set
specifies the name of the Activity data set used by the PM and CPM procedures. The default value is ACTIVITY. For more information, see the section "Input Data Sets and Related Variables" in Chapter 2, "The CPM Procedure."

CALDS=SAS-data-set
specifies the name of the Calendar data set used by the PM and CPM procedures. There is no default value. This parameter is required when the project uses special calendars. If the project uses the standard calendar defined by the INTERVAL=, DAYSTART=, and DAYLENGTH= parameters, then the CALDS= parameter is optional. For more information, see the section "Multiple Calendars" in Chapter 2, "The CPM Procedure."

HOLDS=SAS-data-set
specifies the name of the Holiday data set used by the PM and CPM procedures. There is no default value. This parameter is required only if the project uses holidays defined in a Holiday data set. For more information, see the section "Multiple Calendars" in Chapter 2, "The CPM Procedure."

RESDS=SAS-data-set
specifies the name of the Resource data set used by the PM and CPM procedures. There is no default value. This parameter is required only if the project requires resource information defined in a Resource data set. For more information, see the section "Resource Usage and Allocation" in Chapter 2, "The CPM Procedure."

SCHEDULEDS=SAS-data-set
specifies the name of the Schedule data set generated by the PM procedure, as described in Chapter 3. You can alternatively specify a Schedule data set generated by the CPM procedure, as described in the section "Schedule Data Set" in Chapter 3, "The PM Procedure." The SCHEDULEDS= parameter has no default value. When this parameter is specified, the macro stores the SAS schedules in Microsoft Project date fields, as shown in Table 4.5.

Table 4.5: SAS Schedule Conversion
Schedule SAS Variables Microsoft Project Fields
Early scheduleE_START, E_FINISHSAS_E_start, SAS_E_finish
Late scheduleL_START, L_FINISHSAS_L_start, SAS_L_finish
Resource-constrained scheduleS_START, S_FINISHSAS_R_start, SAS_R_finish
Actual scheduleA_START, A_FINISHSAS_A_start, SAS_A_finish
Baseline scheduleB_START, B_FINISHSAS_B_start, SAS_B_finish

In Microsoft Project, you can display these date fields by going to the Insert menu, selecting Column, and selecting the fields you want to display. You can also display the schedule in a Gantt chart. See Example 4.7 for details.

WORKDS=SAS-data-set
specifies the name of the Workday data set used by the PM and CPM procedures. There is no default value. This parameter is required only when the specified calendar refers to special work shifts defined in a Workday data set. For more information, see the section "Multiple Calendars" in Chapter 2, "The CPM Procedure."

Variable and Option Parameters

_ACTIVITY=variable
specifies the name of the variable in the Activity data set that contains the names of the tasks. The default value is ACTIVITY.

_ALIGNDATE=variable
identifies the variable in the Activity data set that specifies the date to be used to constrain an activity to start or finish on a particular date. This variable is optional, and it has no default value.

_ALIGNTYPE=variable
identifies the variable in the Activity data set that specifies whether the date value specified in the ALIGNDATE= parameter is the earliest start date, the latest finish date, and so forth, for the activity in the observation. This variable is optional, and it has no default value.

_CALID=variable
identifies the variable that is used in the Activity, Holiday, and Calendar data sets to identify the calendar to which each observation refers. When this parameter is not specified, the macro uses a default variable named _CAL_ in each of the three data sets.

_DATE=_date
specifies the SAS date, time, or datetime that is to be used as an alignment date for the project. The default value is the current value of the SAS system time.

_DAYLENGTH=_daylength
specifies the length of the workday. The default value is '8:00't, if _INTERVAL is specified as 'WORKDAY' or 'DTWRKDAY'. Otherwise, the default value is '24:00't.

_DAYSTART=_daystart
specifies the start of the workday. The default value is '9:00't, if _INTERVAL is specified as 'WORKDAY' or 'DTWRKDAY'. Otherwise, the default value is '0:00't.

_DUR=variable
identifies the variable in the Activity data set that contains the durations of the tasks. The default value is 'DUR'.

_FBDATE=_fbdate
specifies the SAS date, time, or datetime that specifies a project deadline. When this parameter is specified, the project is scheduled according to this project finish time.

_HEAD=variable
identifies the variable in the Activity data set that contains the name of the node on the head of an arc in the project network. This parameter is required when the project is in AOA (Activity-on-Arc) format.

_HOLIDUR=variable
identifies the variable in the Holiday data set that specifies the duration of the holiday. This variable is used to calculate the finish time of a holiday. If the _HOLIEND= parameter is specified, any value specified for the _HOLIDUR= parameter is ignored. This variable is optional; it has no default value.

_HOLIEND=variable
identifies the variable in the Holiday data set that specifies the finish time of each holiday. This variable is optional, and it has no default value.

_HOLISTART=variable
identifies the variable in the Holiday data set that specifies the start time of each non-workday. This variable is optional, and it has no default value.

_ID=_id
defines a string that lists the ID variables, separated by a space. The format of the _ID= parameter is id1 id2 ... idn, where n is the number of ID variables. When this parameter is specified, the macro passes ID variables to Microsoft Project. You can view them in Microsoft Project by inserting the columns 'text1' through 'textn'.

_INTERVAL=interval
specifies the interval units by which task durations are measured. Possible values are DAY, WEEK, WEEKDAYS, WORKDAY, MONTH, QTR, YEAR, HOUR, MINUTE, SECOND, DTDAY, DTWRKDAY, DTWEEK, DTMONTH, DTQTR, DTYEAR, DTHOUR, DTMINUTE, and DTSECOND. The default value of _INTERVAL= is DAY.

_LAG=_lag
defines a string that lists the lag variables, separated by a space. The format of the _LAG= parameter is lag1 lag2 ... lagn, where n is the number of lag variables.

Note: Microsoft Project does not enable predecessors of a summary task to have a finish-to-finish or start-to-finish dependency.

Note: Microsoft Project does not permit the use of lag calendars. The %SASTOMSP macro converts calendar information. The names (or IDs) of lag calendars assigned to activities are saved in a text field in Microsoft Project called "Lag Calendars in SAS."

_PROJECT=variable
identifies the variable in the Activity data set that specifies the project to which an activity belongs. This parameter is required when tasks have hierarchical relationships.

_RESOBSTYPE=variable
identifies the character variable in the Resource data set that contains the type identifier for each observation. The _RESOBSTYPE= parameter is required if the RESDS= parameter is specified.

_RESOURCE=_resource
defines a string that lists the resource variables, separated by a space. The _RESOURCE= parameter is required if the RESDS= parameter is specified. The format of the resource parameter is res1 res2 ... resn, where n is the number of resource variables.

_RESPERIOD=variable
identifies the variable in the Resource data set that specifies the date from which a specified level of the resource is available for each observation with the _RESOBSTYPE= variable equal to 'RESLEVEL.'

_SUCCESSOR=_successor
defines a string that lists the successor variables in the Activity data set, separated by a space. The format of the _SUCCESSOR= parameter is succ1 succ2 ... succn, where n is the number of successor variables. If this parameter is not specified, the macro identifies all variables in the Activity data set having names prefixed with 'SUCC' as successor variables.

_TAIL=variable
identifies the variable in the Activity data set that contains the name of the node on the tail of an arc in the project network. This parameter is required when the project is in AOA format.

UNIX Parameters

The following statements are available to establish a connection from SAS running on UNIX to a SAS PC Files Server. This enables you to run the %SASTOMSP macro on UNIX. For more information, see SAS/ACCESS Interface to PC Files: Reference.

DBMS=identifier
specifies the type of data to import. In this case, the value DBMS=accesscs must be specified.

PORT=port-number
specifies the port or service name that the SAS PC Files Server is listening to on the PC. The default value is 8621.

SERVER=pc-server-hostname
specifies the name of the computer on which you started the PC Files Server. This name is required by UNIX users to connect to this server machine and is reflected on the server control panel. This hostname can be specified as a simple computer name (e.g., wxp320), a fully qualified network name (e.g., wxp320.domain.com), or an IP address.

Previous Page | Next Page | Top of Page