Blocks for Custom User-Defined Completions

The XSD and XML files define the elementary blocks that can be combined to describe a User-Defined Completion.

This page discusses:

Options Shared by Step types

All Step types share the following options:

  • StepInput: the type of input for the step, which is described by a sequence of InputData. It can have the following values:
    • Session: all the objects already explored
    • Selection: all the selected elements
    • StepOutput: all the elements retrieved by a given step, described by its StepReference.
  • The PPRType(s) of the input objects, InputTypeFilter (optional): 0 to 4 from the following types: Product, Manufactured Item, System, Operation, and Resource. If none is defined, all the input objects are taken into account. This option enables filtering objects from the InputData to take into account only those of the specified types.

Step type: AssignmentFilterCompletion

Completes with objects linked to the input objects by an assignment link. The following options are available:

  • AssignmentFilterCompletionType: Defines the direction of assignment filter completion. It can have the following values:
    • Product
    • Process

Step type: AlternateCompletion

Completion with objects linked to the input objects by an alternate relation link. The alternate relationship is conceptualized between two EBOM nodes or between two manufactured item nodes. The following options are available:

  • AlternateCompletionType: The completion is performed depending on the type of the input and desired output objects. It is possible to get functional manufactured item from one of its alternate functional manufactured item or get all alternate functional manufactured items related to a functional manufactured item. Same as the case with parts. So the AlternameCompletionType attribute can have one of the following values:
    • AlternameCompletion: Get all alternate manufactured item or part objects from the input manufactured item or part object
    • AlternatesOfCompletion: Get the part or manufactured item object from an alternate part or alternate manufactured item.

Step type: CandidateResourceCompletion

Completion with objects linked to the input objects by a Candidate Resource relation link. Candidate Resource relation is between resources and systems or operations. The following options are available:

  • CandidateResourceCompletionType: The completion is performed depending on the type of input and the desired output objects. A Candidate Resource relation can exist between a resource and a manufactured item, system or operation. In order to support all possible cases OutputCompletionType attribute can have one of the following values:
    • CandidateResourceCompletion: Get a system or operation object from the input candidate resource
    • CandidateResourceFromCompletion: Get all candidate resources from an input system or operation object.

Step type: CanUseResourceCompletion

Completion with objects linked to the input objects by a Can Use relation link. A Can Use relation is between a resource and a manufactured item, system or operation. The following options are available:

  • CanUseResourceCompletionType: The completion is performed depending on the type of input and the desired output objects. A Can Use relation can exist between a resource and manufactured item, system, or operation. In order to support all possible cases OutputCompletionType attribute can have one of the following values:
    • CanUseResourceCompletion: Get a manufactured item, system, or operation object from the input capable resource.
    • CanUseResourceFromCompletion: Get all capable resources from an input manufactured item, system or operation object.

Step type: Expand

Expands the instance and reference children of the input objects. The following options are available:

  • ExpandChildrenVisible (optional): true if the expanded children have to be expanded in the app, and true otherwise. Default is true: the expanded children are available in the StepOutput but are not visible. This option is only available if the input object is already explored in the app. In this case the input data must be Selection. Otherwise, the user should do a not visible Expand step and then an Explore step.
  • IterationNumber (optional): the number of levels to expand. Default is 1. The minus 1 (-1) value is used for Expand All.

Step type: Explore

Explores all the input objects. The following option is available:

  • WithinContext (optional): true if only child objects of the roots already explored must be added, false otherwise. Default is false.
Note: The WithinContext option is also available through Explore within Context of Existing Roots in Me > Preferences > Manufacturing Finder to be used with standard Smart Completion. If this option is activated and a filter has been applied on a root, only child objects matching the filter criteria are explored under the root.

Step type: FastenersCompletion

Completes either with fasteners if parts are used as input objects, or with parts if fasteners are used as input objects, navigating on mechanical constraints. The following option is available:

  • Mode: the filter used to get the objects constrained by the input objects. These are the Fastener Analysis options. The following values are accepted:
    • FindCoreFastenersEachInvolvedWithWholeSetOfInputItems
    • FindCoreFastenersEachInvolvedWithAnyItems
    • FindBoundaryFastenersEachInvolvedWithWholeSetOfInputItems
    • FindBoundaryFastenersEachInvolvedWithAnyItems
    • FindAnyFastenersEachInvolvedWithWholeSetOfInputItems
    • FindAnyFastenersEachInvolvedWithAnyItems
    • FindItemsFastened
    Note: FindItemsFastened can only be applied on Fasteners, and other options can only be applied on Parts. If some input objects do not match this criterion, they are left out by the completion.

Step type: ImplementLinksCompletion

Completes with objects linked to the input objects by an implement link (scope or occurrence-occurrence links). The following options are available:

  • ImplementLinksCompletionType: the completion to perform depending on the type of the input and output objects. It can have the following values:
    • FromProductToProcessCompletion
    • FromProcessToSystemOperationCompletion
    • FromSystemOperationToResourceCompletion
    • FromResourceToSystemOperationCompletion
    • FromSystemOperationToProcessCompletion
    • FromProcessToProductCompletion
  • OnlyScopes: true if only reference-reference links must be explored, false otherwise.
Note: If the completion is done on EBOM objects, use FromProductToProcessCompletion.

Step type: Keep

Keeps the objects of the CATIType specified by the mandatory attribute CATIType, or only those matching the criteria defined by AttributeKey and AttributeValue if applicable:

  • CATIType: the CATIType of the objects to keep (mandatory)
  • AttributeKey: the name of the attribute on which the criteria applies
  • AttributeValue: the exact value of the attribute defined by the AttributeKey of the objects to keep.
    Important: AttributeKey and AttributeValue work together: if one of them is empty, the other is not taken into account and all the objects of the CATIType mentioned are kept.
    .
  • RemoveVisible: true if the objects are also to be kept from the tree; false if they are just to be kept from the output set of objects. The default value is false.
Tip: For more information about CATITypes, see Reference Library > Enterprise Knowledge Language Reference Guide.

Step type: Open

Opens the input objects in authoring session. The standard Open options are available:

  • WithChildren (optional): The following values are accepted:
    • AllChildrenFromDatabase
    • ChildrenOfLeavesFromDatabase: The Open step builds one or several trees from the Input Data objects. This option completes the trees with the children of the terminal components in the tree (that is, leaves). It only expands the leaves and not the intermediate components.
  • WithinContextOnly (optional): This option aims at getting the same result as the Explore option, when no Explore step has been done before. Typically this could be after a user-defined completion from Search. If objects of the same structure type as the context objects are retrieved during the completion, they are opened only if they are children of the context objects. Note that system and operation share the same structure type.
    • Open from search, the context objects are the selected objects when launching the user-defined completion. Operations cannot define a context since they cannot be root objects. Only products, manufactured items, systems and resources are considered as contexts.
    • Open using Explore with Manufacturing Context Builder, they are the roots attached under each fake node when the Open step is executed.
  • WithRepresentations (optional): The following values are accepted:
    • AllRepresentations
    • 3DRepresentationsOnly
Notes:
  • If none of these options is specified, only the input objects are opened: no additional completion is performed.
  • To get the same result as with the Visible expanded children in the Open Advanced dialog box, use the Open step without any option and with Input data set to Session.

Step type: Origin Completion

Completes with objects linked to the input objects by an origins relation link. The origins relationship will be conceptualized between manufactured item nodes or between system/operation nodes or between two resource nodes. The following options are available:

  • OriginCompletionType: The completion will be performed depending on the type of the input and desired output objects. Historization relations can exists between manufactured items, system/operation and resources. To support all possible cases HistorizationCompletionType attribute can have one of the following values:
    • OriginsCompletion: Get the origin PPR object from the input PPR object
    • OriginsOfCompletion: Get all the equivalent PPR objects from the input origin PPR object.

Step type: OutputCompletion

Completion with objects linked to the input objects by an output relation link. Output manufactured item is the relation between a manufactured item and a system or operation, and this relation is aggregated by a system or operation. The following options are available:

  • OutputCompletionType: The completion is performed depending on the type of input and the desired output objects. An output relation can exist between a manufactured item and a system or operation. In order to support all possible cases OutputCompletionType attribute can have one of the following values:
    • OutputOfSystemOperationCompletion: Ability to retrieve the output item from a system or an operation
    • SystemOperationFromOutputCompletion: Ability to retrieve the system or the operation from their output item.

Step type: ProductFlowCompletion

Completes the session from a Product Flow point of view. Three keywords are associated with this step:

  • IterationNumber: defines the depth of the completion in each orientation. If it is equal to -1 then the complete chain is solved. This is the option of the delivered completion script.
  • ProductFlowCompletionType: defines the orientation of the completion as follows:
    • PredecessorAndSuccessor: corresponds to a completion towards predecessors and successors. This is the option of the delivered completion script.
    • Successor: corresponds to a completion towards successors.
    • Predecessor: corresponds to a completion towards predecessors.
  • GlobalCompletion : enables to launch the product flow completion, regardless of whether the system under consideration is an intermediate system or a final (main) system for the completion.

A sample xml file describing this user-defined completion is delivered in ..\resources\xml\DNBPPRUserDefinedCompletion\PPRSmartCompletionWholeProductFlow.xml.

A log file is generated at each completion and is saved in the directory defined by the Cache location option in Me > Preferences > General > Cache. This file contains useful information including any issues encountered during the completion, such as Input Data empty, errors which can happen during link completion, open, and so on.

Step type: Remove

Removes the objects of the CATIType specified by the mandatory attribute CATIType, or only those matching the criteria defined by AttributeKey and AttributeValue if applicable:

  • CATIType: the CATIType of the objects to remove (mandatory)
  • AttributeKey: the name of the attribute on which the criteria applies
  • AttributeValue: the exact value of the attribute defined by the AttributeKey of the objects to remove.
    Important: AttributeKey and AttributeValue work together: if one of them is empty, the other is not taken into account and all the objects of the CATIType mentioned are removed.
    .
  • RemoveVisible: true if the objects are also to be removed from the tree; false if they are just to be removed from the output set of objects. The default value is false.
Tip: For more information about CATITypes, see Reference Library > Enterprise Knowledge Language Reference Guide.

Step type: Get Parents

Retrieves data from parent nodes in the tree to be used as input for another step (any type of steps except Open). One keyword is associated with this step:

  • IterationNumber: defines how many levels of parents to retrieve. If it is equal to -1 then the complete chain is solved. This is the option of the delivered completion script.
    Note: Specifying the IterationNumber as -1 can decrease performance.