Suggest Capable Resource References for System/Operation

This Wiki page provides guidelines to customize the business logic to suggest capable resources for a System or Operation from various sources.

Introduction

The Opening ID "DELPPRCandidateResourcesReferences_ID" is triggered upon launching the "Manage Capable Resources" command. This Opening ID enables the display of a button within the "Manage Capable Resources" panel, specifically for Primary Capable Resources, to suggest suitable resource candidates. Additionally, it facilitates the suggestion of a list of capable resources through its associated functionality.

Version Tested on – 2025x FD01 FP.CFA.2506

Pre-requisites:

Licenses –

  • PPL (Process Engineer): Required to create Mfg. Item Structure, Process Structure & Resource Structure

Disclaimer: Licenses mentioned above are as per 2025x documentation.

Details of The Opening ID
PLM Opening IDDELPPRCandidateResourcesReferences_ID
 
Customization IntentExecution
Execution ContextClient
UsageThis opening ID is run to return the list of suggested Capable Resource references for the current System/Operation occurrence.

Explanation

In applications such as Manufactured Item Definition and Process Planning, the "Manage Capable Resources" command is used to assign capable resources to manufacturing items, systems, and operations. However, by default (Out of the Box), this command only allows users to manually select resources from the resource tree or search to designate them as Capable Resources for the selected object.

Use Case

The Opening ID "DELPPRCandidateResourcesReferences_ID" can be utilized to display a button within the "Manage Capable Resources" panel, specifically for Primary Capable Resources, to suggest potential capable resources. It also enables the suggestion of a list of resources sourced from various sources, which can be designated as capable resources for the selected object.

Sources Used to Suggest Capable Resources

In the provided sample business logic, five sources are considered for suggesting capable resources:

  1. Capable Resources of All Manufacturing Item which are Implemented on the selected operation

  2. Resources from the "Capable Resource Structure" – either linked directly to the selected object, its parent system, or the first upper-level linked "Capable Resource Structure" 

    Note: All the children of found "Capable Resource Structure" are suggested in the list

  3. Resources from the "Assets Structure" – either associated with the selected object, its parent system, or the first upper-level linked "Assets Structure"

    Note: All the children of found "Assets Structure" are suggested in the list

  4. Resources from the "Scoped Resource" – either scoped to the selected object, its parent system, or the first upper-level scoped resource

    Note: All the children of found "Scoped Resource" are suggested in the list

  5. If none of the above sources are available or the suggested resource list is empty, then suggests Resources from All Resource Nodes available within the current PPR context

    Note: All the children of found Resource Nodes are suggested in the list

To enable to suggest resources from all the resource nodes in the current PPR structure (Source 5) along with all aforementioned sources (Source 1-4), remove the following highlighted part of the condition available in the provided sample script.

/*------------Start of: Logic to get Root Area and Organizational Resurces from PPR Context and suggest resources from them------------*/
If (SuggestFromResourcesInPPR == 1 and LstResourcesToSuggest.Size() <=0)

Managing from Where to Suggest the Capable Resources

The source used to suggest capable resources for the aforementioned options can be managed through preference variables defined in the provided sample business logic, as listed below:

/*------Preferences to suggest Capable Resources-----------------*/
SuggestFromCapableResourceStruct = 1	//Set to 1 to allow sugget capable resources from 1st Upper Linked "Capable Resource Structure"
SuggestFromAssetsStruct = 1		//Set to 1 to allow suggest capable resources from 1st Upper Linked "Assets Structure"
SuggestFromScopedResources = 1		//Set to 1 to allow sugget capable resources from 1st Upper Scoped Resource Structure
SuggestFromResourcesInPPR = 1		//Set to 1 to allow sugget capable resources from Root Resource Nodes in the PPRContext
SuggestFromImplementedItem = 1		//Set to 1 to allow sugget capable resources from Implemented Capable Resource

To disable suggestions from a specific source, set the corresponding variable's value to "0". By default, resources are being suggested from all the sources.

 

In the BL, the parameter "OutputIsButtonVisible" (Value can be "true" or "false") is used to manage whether to show the button to show the button to suggest the capable resources and the parameter "OutputListOfResourceReferences" (Value is a "List") is used to upend the list of resources to suggest as capable resources.

/* ---- FILL OUTPUT PARAMETERS ---- */
if ( true == Parameters.HasAttribute("OutputIsButtonVisible") )
{
	set IsButtonVisible = false     /* HERE : set to "true" to see the suggestions list button  */
	
	if LstResourcesToSuggest.Size() > 0
	{
		set IsButtonVisible = true //Set the "Suggest Capable Resource" buttom visible only if suggested resources are available
		Notify("Button set to True")
	}
	else
	{
		Notify("No Capable Resource Available for Suggestion")	
	}
	Parameters.SetAttributeBoolean("OutputIsButtonVisible", IsButtonVisible)
}
if ( true == Parameters.HasAttribute("OutputListOfResourceReferences") )
{
	if LstResourcesToSuggest.Size() > 0
	{
		ListOfResources = ListOfResources +  LstResourcesToSuggest
	}
	Parameters.SetAttributeObject("OutputListOfResourceReferences", ListOfResources)
}

Logical Flow

Note: To know the detailed working of the BL, please check the well commented sample script

Sample Script

Disclaimer: This code is just an example and should only be used by people who know the Enterprise Knowledge Language (EKL) and the DELMIA data model very well. The intent is not to provide a ready to deploy product code. Therefore, we are not responsible for any issues you may face with this code. You should make the changes in the provided script as required and test thoroughly before deploying on Production Environments
DELPPRCandidateResourcesReferences.CATRule

Scenarios

Scenario 1: "Manage Capable Resources" command launched for a Step Operation

When a Step operation is selected, it will show the button to suggest capable resources.  A "Notification" is also displayed to show the sources from where the resources are being suggested.

After clicking on the button to suggest capable resources, it will suggest the resources from all the possible sources.

Scenario 2: "Manage Capable Resources" command launched for a Header Operation

When a Header Operation is selected, it will show the button to suggest capable resources.  A "Notification" is also displayed to show the sources from where the resources are being suggested.

After clicking on the button to suggest capable resources, it will suggest the resources from all the possible sources.

Limitation: The button to suggest capable resources is only available for "Primary Capable Resources"

Scenario 3: "Manage Capable Resources" command launched for a child Workplan/System (With no Resource Scoped, With no Capable Resource Structure and no Assets Structure) of Root System

When a Workplan or System is selected, it will show the button to suggest capable resources.  A "Notification" is also displayed to show the sources from where the resources are being suggested.

After clicking on the button to suggest capable resources, it will suggest the resources from all the possible sources.

Scenario 4: "Manage Capable Resources" command launched for Workplan/System (With Resource Scoped, With Capable Resource Structure and Assets Structure)

When a Workplan or System is selected, it will show the button to suggest capable resources.  A "Notification" is also displayed to show the sources from where the resources are being suggested.

After clicking on the button to suggest capable resources, it will suggest the resources from all the possible sources.

Scenario 5: "Manage Capable Resources" command launched for object which have no Scoped Resource Link, Capable Resource Link, Assets Structure Link and no Capable Resources from Implemented Mfg. Items

When an object is selected, which don't have any Scoped Resource (Linked to Itself, it's parent or in first upper scope) or Linked Capable Resource Structure (Linked to Itself, it's parent or in first upper link) or Linked Assets Structure (Linked to Itself, it's parent or in first upper link) or Capable Resources coming from the implemented Mfg. Items, then it will suggest the resources from all the resource nodes available in the current PPR Structure. 

A "Notification" is also displayed to show the sources from where the resources are being suggested.

After clicking on the button to suggest capable resources, it will suggest the resources from all the possible sources.

Selecting and assigning the Capable Resources from Suggested Resources

From the suggested resource, any number of resources can be selected to be assigned as capable resources and after clicking on the "OK" button, the capable resources will be assigned on the selected object.

References

User Assistance (DELPPRCandidateResourcesReferences_ID)

How to Deploy

You may refer the below page for Business Rule deployment.

How to Deploy Business Rule

For deployment using Data Setup app following Resource set ID and opening needs to be used:

Resource Set ID:

Opening ID:

Fact Type:

This Object Type: ProdSystemOccurrence

Authors

For any queries, please reach out to @KA @KK