Conditional Milestones Dependency

The dependency between intermediate milestones can be conditional. This is specified using the relationship attribute called Condition in TIBCO® Fulfillment Catalog. It is represented in the product model as illustrated below:

Conditional Milestones Dependency

Conditional MilestonesDependency

In this sample, the START milestone of EP_PROVIDE_11 is dependent on MILE1 of EP_PROVIDE_10, only if the specified condition is satisfied.

The condition syntax can be one of the following three types:

  • Parent user-defined field Syntax
  • Child user-defined field Syntax
  • Match Parent-Child user-defined field Syntax
Note: There is no provision to specify the XSLT statement in the condition as it is there for Attribute-Based Decomposition. Also, the flavor must be configured as input instead of config to make the conditional milestone dependency function correctly.

Note the following definitions:

  • Parent: The plan fragment whose milestone has a dependency on another plan fragment. The parent user-defined field is referred to a user-defined field passed in the order line in the order for that product, which is propagated into the plan item for that order line.
  • Child: The plan fragment on whose milestone a milestone in another plan fragment depends. The child user-defined field is referred to a user-defined field passed in the order line in the order for that product, which is propagated into the plan item for that order line.

In the plan illustrated above, EP_TEST_PROVIDE_11 [START] is dependent on EP_TEST_PROVIDE_10 [MILE1]. It is assigned to PROD11 as the PROVIDE plan fragment. PROD11 is the parent and PROD10 is the child.

Parent user-defined field Syntax

Value:Parent(ParentUDFName=ExpectedValue)

The condition is satisfied only if there is a user-defined field in the parent plan item with the same value as passed in the condition as "ExpectedValue".

Child user-defined field Syntax

Value:Child(ChildUDFName=ExpectedValue)

The condition is satisfied only if there is a user-defined field in the child plan item with the same value as passed in the condition as "ExpectedValue".

Match Parent-Child user-defined field Syntax

Match:ParentUDFName=ChildUDFName

The condition is satisfied only if the value of the user-defined field [ParentUDFName] in the parent plan item is equal to the value of the user-defined field [ChildUDFName] in the child plan item.