MailProjectMailCustomize Method

Customizes workgroup messages and published fields.

Syntax

expression**.MailProjectMailCustomize(Action, Position, FieldID, Title, IncludeInTeamStatus, Editable, UseAssignmentField)**

*expression   *     Optional. An expression that returns an Application object.

PjCustomizeMailAction

Constant
pjMailEndFields
pjMailStartFields
pjMailDefineField

Position    Optional Long. If Action is pjMailStartFields, the number of fields. The value of Position must be greater than 6 to allow for other fields that are required. If Action is pjMailDefineField, the position of the field specified by FieldID. Required if Action is pjMailStartFields or pjMailDefineField.

PjMailField

Constant
pjMailActualWork
pjMailComments
pjMailFinish
pjMailStart
pjMailWork
pjMailTaskContact
pjMailTaskCost
pjMailTaskCost1
pjMailTaskCost2
pjMailTaskCost3
pjMailTaskCost4
pjMailTaskCost5
pjMailTaskCost6
pjMailTaskCost7
pjMailTaskCost8
pjMailTaskCost9
pjMailTaskCost10
pjMailTaskCritical
pjMailTaskDate1
pjMailTaskDate2
pjMailTaskDate3
pjMailTaskDate4
pjMailTaskDate5
pjMailTaskDate6
pjMailTaskDate7
pjMailTaskDate8
pjMailTaskDate9
pjMailTaskDate10
pjMailTaskDuration
pjMailTaskDuration1
pjMailTaskDuration2
pjMailTaskDuration3
pjMailTaskDuration4
pjMailTaskDuration5
pjMailTaskDuration6
pjMailTaskDuration7
pjMailTaskDuration8
pjMailTaskDuration9
pjMailTaskDuration10
pjMailTaskEarlyFinish
pjMailTaskEarlyStart
pjMailTaskFinish1
pjMailTaskFinish2
pjMailTaskFinish3
pjMailTaskFinish4
pjMailTaskFinish5
pjMailTaskFinish6
pjMailTaskFinish7
pjMailTaskFinish8
pjMailTaskFinish9
pjMailTaskFinish10
pjMailTaskFixedCost
pjMailTaskFlag1
pjMailTaskFlag2
pjMailTaskFlag3
pjMailTaskFlag4
pjMailTaskFlag5
pjMailTaskFlag6
pjMailTaskFlag7
pjMailTaskFlag8
pjMailTaskFlag9
pjMailTaskFlag10
pjMailTaskFlag11
pjMailTaskFlag12
pjMailTaskFlag13
pjMailTaskFlag14
pjMailTaskFlag15
pjMailTaskFlag16
pjMailTaskFlag17
pjMailTaskFlag18
pjMailTaskFlag19
pjMailTaskFlag20
pjMailTaskFreeSlack
pjMailTaskLateFinish
pjMailTaskLateStart
pjMailTaskMarked
pjMailTaskName
pjMailTaskNumber1
pjMailTaskNumber2
pjMailTaskNumber3
pjMailTaskNumber4
pjMailTaskNumber5
pjMailTaskNumber6
pjMailTaskNumber7
pjMailTaskNumber8
pjMailTaskNumber9
pjMailTaskNumber10
pjMailTaskNumber11
pjMailTaskNumber12
pjMailTaskNumber13
pjMailTaskNumber14
pjMailTaskNumber15
pjMailTaskNumber16
pjMailTaskNumber17
pjMailTaskNumber18
pjMailTaskNumber19
pjMailTaskNumber20
pjMailTaskPercentComplete
pjMailTaskPercentWorkComplete
pjMailTaskPriority
pjMailTaskProject
pjMailTaskResourceNames
pjMailTaskStart1
pjMailTaskStart2
pjMailTaskStart3
pjMailTaskStart4
pjMailTaskStart5
pjMailTaskStart6
pjMailTaskStart7
pjMailTaskStart8
pjMailTaskStart9
pjMailTaskStart10
pjMailTaskText1
pjMailTaskText2
pjMailTaskText3
pjMailTaskText4
pjMailTaskText5
pjMailTaskText6
pjMailTaskText7
pjMailTaskText8
pjMailTaskText9
pjMailTaskText10
pjMailTaskText11
pjMailTaskText12
pjMailTaskText13
pjMailTaskText14
pjMailTaskText15
pjMailTaskText16
pjMailTaskText17
pjMailTaskText18
pjMailTaskText19
pjMailTaskText20
pjMailTaskText21
pjMailTaskText22
pjMailTaskText23
pjMailTaskText24
pjMailTaskText25
pjMailTaskText26
pjMailTaskText27
pjMailTaskText28
pjMailTaskText29
pjMailTaskText30
pjMailTaskTotalSlack
pjMailTaskWBS
pjMailTaskWork

Title    Due to changes in the Project object model, this argument no longer has an effect. It has been retained for backwards compatibility.

IncludeInTeamStatus    Optional Boolean. True if the fields specified with FieldID are included in TeamAssign and TeamStatus messages. False if the fields specified with FieldID are only included in TeamAssign messages. Required if Action is pjMailDefineField. The default value is True.

Editable    Optional Boolean. True if the field is editable by a resource. Required if Action is pjMailDefineField.

UseAssignmentField    Optional Boolean. True if Project sets the custom field type to Assignment. False if Project sets the custom field type to Task. The default value is False.

Remarks

The MailProjectMailCustomize method is available even when no projects are open.

Using the MailProjectMailCustomize method without specifying any arguments displays the Customize Published Fields dialog box.

Example

The following example first sets up how many fields will be defined (

Action:=pjMailStartFields

). The next set of lines define each field (

Action:=pjMailDefineField

). You must include the definitions of the default fields with the same values for the IncludeInTeamStatus and Editable arguments. The last line indicates that the definitions are complete (

Action:=pjMailEndFields

). It will check for the existence of the default fields and give a run-time error if they are not given.

Note  The default fields (Name, Work, Start, Finished, Completed and Remaining Work, and Comments) must be included in every workgroup message. The order of these fields can change, but their basic definition (Editable, IncludeInTeamStatus) must remain the same as the default.

Sub MailProjectMailCustomize()
    MailProjectMailCustomize Action:=pjMailStartFields, Position:=number of fields
                
 
MailProjectMailCustomize Action:=pjMailDefineField, Position:=1, FieldID:=constant, Title:="My Title"
    ...
    MailProjectMailCustomize Action:=pjMailDefineField, Position:=n, FieldID:=constant, Title:="another title"
    
    MailProjectMailCustomize Action:=pjMailEndFields
End Sub

Where

number of fields

is the number of fields in the message,

constant

is one of the PjMailField constants,

n

is the position of the field within the message, and

another title

is the title of a newly defined field.

Applies to | Application Object

See Also | MailPostDocument Method | ResourceAddressBook Method | ResourceDetails Method