Example: a custom template

The following example shows a more complicated jobspec and the resulting job form.

# A Custom Job Specification.
#
#  Updating this form can be dangerous!
#  See 'p4 help jobspec' for proper directions.
Fields:
        101 Job word 32 required
        102 Status select 10 required
        103 User word 32 required
        104 Date date 20 always
        111 Type select 10 required
        112 Priority select 10 required
        113 Subsystem select 10 required
        114 Owned_by word 32 required
        105 Description text 0 required
Values:
        Status open/closed/suspended
        Type bug/sir/problem/unknown
        Priority a/b/c/unknown
        Subsystem server/gui/doc/mac/unknown
Presets:
        Status open
        User $user
        Date $now
        Type unknown
        Priority unknown
        Subsystem unknown
        Owned_by $user
        Description $blank
Comments:
        # Custom Job fields:
        # Job:    The job name. 'new' generates a sequenced job number.
        # Status: 'open', 'closed', or 'suspended'. Can be changed
        # User:   The user who created the job. Can be changed.
        # Date:   The date this specification was last modified.
        # Type:          The type of the job:
        #                'bug', 'sir', 'problem' or 'unknown'
        # Priority:      How soon should this job be fixed?
        #                The value is 'a', 'b', 'c', or 'unknown'
        # Subsystem:     The value is 'server', 'gui', 'doc', 'mac', or 'unknown'
        # Owned_by:      Who's fixing the bug. Can be changed.
        # Description: Comments about the job. Required.

The order of the listing under Fields: in the p4 jobspec form determines the order in which the fields appear to users in job forms. Therefore, fields do not need not be ordered by numeric identifiers.

If the user named marie runs p4 job against the example custom jobspec, it displays the following job form:

# Custom Job fields:
# Job:    The job name. 'new' generates a sequenced job number.
# Status: 'open', 'closed', or 'suspended'. Can be changed
# User:   The user who created the job. Can be changed.
# Date:   The date this specification was last modified.
# Type:          The type of the job:
#                'bug', 'sir', 'problem' or 'unknown'
# Priority:      How soon should this job be fixed?
#                The value is 'a', 'b', 'c', or 'unknown'
# Subsystem:     The value is 'server', 'gui', 'doc', 'mac', or 'unknown'
# Owned_by:      Who's fixing the bug. Can be changed.
# Description: Comments about the job. Required.
Job:    new
Status: open
User:   marie
Type:   unknown
Priority:       unknown
Subsystem:      unknown
Owned_by:       marie
Description:
        <enter description here>