Macro Variables

This section describes the SAS macro variables that are defined by the Projman application during report generation. Many of these macro variables are used in the SAS source code provided with the standard reports. When you modify the source code of custom reports, this information may be helpful.

Standard Macro Variables

Name

Contents

Explanation

&reptname

'report name'

Current report name

&projname

'project name'

Active project name

&projdesc

'project description'

Active project description

&rdformat

datetime7. or datetime13.

Specified by the Formats option

&varlist

'Variables variable names'

Specified by the Variable list

&ivarlist

'Identifier variable names'

Specified by the Identifier list

&byvlist

BY 'Sub-Group variable names'

Specified by the Sub-Group List

Calendar Reports

Name

Contents

Explanation

&start

'start variable name'

Specified by the Schedule option

&finish

'finish variable name'

Finish corresponding to &start

 

header=Small, Medium, or Large

Specified by the Header Size option

&calopts

fill

If Display All Months is selected

 

missing

If Include Missing Labels is selected

 

caledata=work.cal workdata=

If calendars used in scheduling

&caldata

work.shift(drop=holiday workday)

 
 

holidata=work.hol

If holidays used in scheduling

&calstmt

calid calid;

If calendars used in scheduling

 

outstart monday; outfinish friday;

If Display Weekdays Only is selected

&holstmt

holistart hstart; holidur holidur;

If holidays used in scheduling

 

holifin hfinish; holiname holiname;

 

Note that the &caldata, &calstmt, and &holstmt macro variables are not defined unless the active project’s duration unit is 'DAY' or 'WEEKDAY'.

Gantt Chart Reports

Name

Contents

Explanation

&gout

gout=work.ggseg

Graphics catalog specification

&resdict

work.resdict

Resource dictionary data set

&zonevar

'variable name'

First variable in Sub-Group List

&res

Lineprinter, Fullscreen or Graphics

Specified by the Resolution option

 

caledata=work.cal workdata=

If calendars used in scheduling

 

work.shift(drop=holiday workday)

 

&gantdata

holidata=work.hol

If holidays used in scheduling

 

labeldata=work.labels

If Mark Parent Tasks is selected

 

precdata=work.repttemp

If Show Precedence is selected

 

(where=(obs_type=’LOGIC’))

 
 

mininterval='duration unit'

Specified by the Per Interval option

 

scale='integer value'

Specified by the Columns option

 

name="g"

Graphics catalog entry name

 

maxids

Draw maximum number of identifiers

 

interval='duration unit'

Duration unit used for scheduling

 

dur=duration cmile='color'

If Show Milestones is selected

 

activity=actid succ=succid

 
 

lag=lag cprec='color'

If Show Precedence is selected

 

noarrowhead

If Suppress Arrowheads is selected

 

nojobnum

Unless Show Job Numbers is selected

 

nolegend

Unless Show Chart Legend is selected

 

compress

If Compress to One Page is selected

 

hconnect chcon='color'

If Draw Task Lines is selected

 

critflag

If Flag Critical Tasks is selected

 

combine

If Combine Schedules is selected

 

labvar=actid

If Mark Parent Tasks is selected

&ganopts

markwknd

if Mark Weekends is selected

 

markbreak

If Mark Work Breaks is selected

 

idpages

If Print Id on Each Page is selected

 

fill

If Fill Pages Completely is selected

 

noframe

If Suppress Chart Frame is selected

 

pcompress

If Proportional Compress is selected

 

hpages='integer value'

Specified by the Horizontal Pages option

 

vpages='integer value'

Specified by the Vertical Pages option

 

height='numeric value'

Specified by the Text Height option

 

caxis='color'

Specified by the Time Axis option

 

ctext='color'

Specified by the Text option

 

cframe='color'

Specified by the Chart Frame option

 

holiday=(hstart) holidur=(holidur)

If holidays were used in scheduling

 

holifin=(hfinish)

 
 

calid=calid

If calendars were used in scheduling

 

timenow='timenow date'

If Draw Timenow Line is selected

 

notnlabel

Unless Label Timenow Line is selected

Note that the CALEDATA=, HOLIDATA= AND WORKDATA= specifications are not added to the &gantdata macro variable unless the active project’s duration unit is larger than ’DAY’.

Network Diagram Reports

Name

Contents

Explanation

&gout

gout=work.ngseg

Graphics catalog specification

&res

Lineprinter, Fullscreen or Graphics

Specified by the Resolution option

 

name="n"

Graphics catalog entry name

 

zone='variable name'

Specified by the Zone Variable option

 

nozonelabel

If Suppress Zone Labels is selected

 

zonespace

If Space Between Zones is selected

 

nodefaultid

Unless Show Default Vars is selected

 

nolabel

Unless Label Variables is selected

 

duration=duration

If Show Duration is selected

 

separatearcs

If Draw Separate Arcs is selected

 

showstatus

If Show Progress is selected

 

compress

If Compress to One Page is selected

 

centerid

If Center Id Values is selected

 

spanningtree

If Spanning Tree Layout is selected

 

lag=(lag)

If Show Precedence Type is selected

 

rectilinear

If Draw Rectangular Arcs is selected

 

pcompress

If Proportional Compress is selected

&netopts

arrowhead=0

If Suppress Arrowheads is selected

 

noarrowfill

If Draw Open Arrowheads is selected

 

nonumber

If Suppress Page Numbers is selected

 

hpages='integer value'

Specified by the Horizontal Pages option

 

vpages='integer value'

Specified by the Vertical Pages option

 

height='numeric value'

Specified by the Text Height option

 

carcs='color'

Specified by the Arcs option

 

ccritarcs='color'

Specified by the Critical Arcs option

 

ctext='color'

Specified by the Node Text option

 

frame caxis='color'

If Draw Border is selected

 

autozone

If Automatic Zone Layout is selected

 

linear

If Draw Linear Time Axis is selected

 

autoref cref='color'

If Draw Reference Lines is selected

 

refbreak

If Show Ref. Line Breaks is selected

 

showbreak

If Show Time Axis Breaks is selected

 

notimeaxis

If Suppress Time Axis is selected

 

align='schedule variable name'

Specified by the Schedule option

Note that the following specifications are not added to the &netopts macro variable unless the Schedule option is specified: FRAME, CAXIS=, LINEAR, AUTOREF, CREF=, REFBREAK, SHOWBREAK, AND NOTIMEAXIS.

Resource Reports

Name

Contents

Explanation

&gout

gout=work.rgseg

Graphics catalog specification

&plotopts

name="r"

Graphics catalog entry name

&chrtopts

name="r"

Graphics catalog entry name

&resdict

work.resdict

Resource dictionary data set

&schedout

'data set name'

Report schedule data set

&varlist

__ALL__

If Scope option is set to All Resources

 

'resource name'

If Scope option is set to Selected Resource

&res

Lineprinter or Graphics

Specified by the Resolution option

&interval

'duration unit'

Specified by the Frequency scheduling option

&mwhere

 

Not currently initialized

Tabular Listing Reports

Name

Contents

Explanation

 

round

If Round values is selected

 

double

If Double space is selected

&prnopts

noobs

Unless Print observation number is selected

 

label

Unless Suppress labels is selected

 

n

If Print number of observations is selected

 

uniform

If Format pages uniformly is selected