Propagating a value on an object or related object attribute - SmartPlant Foundation - IM Update 46 - Help - Hexagon

SmartPlant Foundation Help

Language
English
Product
SmartPlant Foundation
Search by Category
Help
SmartPlant Foundation / SDx Version
10
SmartPlant Markup Plus Version
10.0 (2019)
Smart Review Version
2020 (15.0)

This process step is used to identify an attribute on a workflow object or related object and propagate different types of values like expressions, constants, and keywords on the attribute. Also, you can optionally set an argument to ignore non-working days in the calendar when days are specified in Arg2.

This step replaces the SetProperty process class.

Name:

Process class name: PropagateProperty,Arg1,Arg2,Arg3

Where:

Arg1: The attribute that must be set on the workflow object or related object. This should always contain the prefix Obj or a keyword.

Arg2: The value that must be set on the attribute specified in Arg1.

Arg3: Setting the argument to True ignores non-working days when calculating dates. The default value is set to False. This argument is optional, and applicable only when days are specified in Arg2.

Supported values for Arg2 are:

  • Static strings

  • Enums

  • Keywords (these are not case-sensitive and can be set as Arg1 or Arg2)

    • NOW (or obj.date) – NOW plus or minus number of days, weeks, or months. Days, weeks, and months are indicated by D,W, and M, respectively. Examples: NOW +6W, Obj.SPFIssueDate -8D.

      The numbers of days, weeks, and months can be derived from an expression. For example, NOW+Obj->SPFXmtlDocument_12.[ContractResponseDays](D), where [ContractResponseDays] results in a numerical value.

    • PREVIOUS – Previous step in the workflow.

    • PREVIOUSINTERACTIVE – Previous step in the workflow where user interaction is required for signing off the step.

    • NEXTINTERACTIVE – Next step in the workflow where user interaction is required for signing off the step.

    • PREVIOUSUSER – The user who completed the previous interactive step in the workflow.

    • PREVIOUSACTIONUSERS – The users who had work assigned to them and have completed the previous interactive step.

    • PREVIOUSINFOUSERS – The users who had no work assigned to them but have to acknowledge the previous interactive step.

  • Environmental objects (Examples: ENV.CurrentConfig, ENV.User)

  • Constants (Example: $Plant)

  • Multiple expressions (Example: &Obj->SPFXmtlDocument_12.CreationDate& test &Obj->SPFXmtlDocument_12.Name&)

Examples:

Set the previous step completed date to the SPFIssueDate:

PropagateProperty,Obj.SPFIssueDate,PREVIOUS.SPFStepCompletedDate

Set the previous interactive step's user name to the Description:

PropagateProperty, Obj.Description, PREVIOUSUSER.Name

Set the configuration status name to the Description:

PropagateProperty, Obj.Description,Env.CREATECONFIGOBJ->SPFConfigurationConfigurationStatus_12.Name

Set the number of working days from creation date to the SPFIssueDate:

PropagateProperty,obj.SPFIssueDate,OBJ.CreationDate +8D,True

Set the duration of the next interactive step:

PropagateProperty,NEXTINTERACTIVESTEP.SPFStepDuration,5

Set the issue date on Transmittal by deriving the number of days from an expression:

PropagateProperty,obj.SPFIssueDate,NOW+Obj->SPFXmtlDocument_12.[ContractResponseDays](D)