XML Configuration File

You can define settings in an XML configuration file to be used when you create a new project from a project template.

ContractNo

This is a one to six digit number that is used as:

  • The new project’s name (unless the ProjectName setting is used).
  • The Contract Number field in the project (viewed on the Contract Information page in the Program Directory).
Note: This number can be between one and six digits long. This setting is required if ProjectName is not specified.

ProjectName

  • This setting refers to the new name of the project.
  • If the ProjectName is not specified, the ContractNo setting is used for the name of the project.

HomeCurrency

This is a three-digit code indicating the home currency of the new project.

  • The value specified must be a valid value in the HomeCurrencyCodeFile setting.
  • This value is assigned to a project code field that uses the label Home Currency. If there is no project code field with this label, the value is not assigned.
  • If not specified, the HomeCurrency field is set to the application option HomeCurrencyDefault by default.

HomeCurrencyCodeFileName

  • This is the name of the code file containing the list of valid HomeCurrency values.
  • If not specified, the HomeCurrencyCodeFileName field is set to the application option HomeCurrencyCodeFileNameDefault by default.

Units

This value is used to determine the resource file a project will use.

  • This setting can have either of the following values:

    E: English

    M: Metric

  • If not specified, this field is set to the application setting UnitsDefault by default.

ScheduledStartDate

This is the scheduled start date for the project.

  • The date format must be consistent with Cobra’s date format.
  • This value is assigned to the project’s scheduled start date.

ScheduledFinishDate

This is the scheduled finish date for the project.

  • The date format must be consistent with Cobra’s date format.
  • This value is assigned to the project’s scheduled finish date. It is also assigned to the project’s estimated finish date.

ProjectType

This is a code indicating the project type.

  • This value is assigned to a project code field that uses the label Project Type.
  • The value specified must be a valid value in the ProjectTypeCodeFile setting.
  • If there is no project code field with this label, the value is not assigned.
  • If not specified, the ProjectType field is set to the application option ProjectTypeDefault by default.

ProjectTypeCodeFile

  • This is the name of the code file containing the list of valid ProjectType values.
  • If not specified, the ProjectTypeCodeFile is set to the application option ProjectTypeCodeFileDefault by default.

TemplateCalendarName

This is the template calendar that is copied to create the calendar for the new project.

  • If this setting is not specified, the calendar assigned to the template project (ProjectTemplate file) is used.
  • Periods that occur between the scheduled start and finish dates are copied. If the scheduled start date does not occur on a period date, the period before the start date is also copied.
  • All calendar sets in the template are copied into the new calendar.
  • An additional period is added one day before the first period in the new calendar and assigned the label start in calendar set 0.
  • Previous and Todate labels are assigned to the first and second periods respectively in calendar sets 18 and 19.
  • The atcomplete label is assigned to the last period in calendar sets 18 and 19.

TemplateRateFileName

This setting specifies an alternative rate file to assign to the new project.

  • This setting is optional.
  • It is copied to create the class rate files for the new project.
  • If this setting is not specified, the rate file assigned to the template project (ProjectTemplate file) is used on the new project and as the source rate file when creating new rate files to assign to classes.

ClassRateFile

This setting is a parent node for a <class> and <ratefile name> pair.

  • There can be multiple ClassRateFile parent nodes.
  • If specified, a new rate file is created from the template rate file and assigned to the class in the newly created project.
  • The class must refer to an existing class in the template project.
  • A special wildcard name can be used for the rate file name so that a name is constructed using the Contract number plus the Class name.
  • Example:
    <ClassRateFiles>
    <ClassRateFile>
    <Class>CB</Class>
    <RateFileName>{project}{class}</RateFileName>
    </ClassRateFile>
    </ClassRateFiles>
    Note: This sample creates a new rate file for class CB with the name of the project and the class name. If the new project name is 123456, a rate file called 123456CB is created by copying the rate file from the master rate file, and then assigning it as the rate file in class CB.
  • Initially, only the special tokens {project} and {class} are supported.
  • If a rate file with the same name already exists, the existing rate file is used.

UseTemplateProjectBEFile

  • If this setting is set to true, the resource file assigned to the template project is used for the new project.
  • If this setting is not defined or set to any value other than true, the process calculates the resource assignment file to use, as specified in this document.
  • This setting is optional.

CustomHook

This is a single custom hook definition.

  • HookFileName: This is the fully qualified name of the custom routine that runs. The filename should include the extension.
  • HookType: Select the type of routine to run:
    • P: Compiled Foxpro procedure (ending in .fxp)
    • S: Foxpro script
    • E: exe

    Types P and S must accept a single parameter object. Hook programs of type E are not passed a parameter.

  • The hook is called at the end of the Copy process and is passed a parameter object containing data relevant to the creation process.