General InformationThe table below provides you with information related to the definition of the opening ID.
Input ObjectsInput objects must be of the following types:
Context Object Parameters
SampleIn this sample, the alternate processes are displayed in the Proposal panel after launching the Replace by Proposal command on an Item. The selected Item should already have the alternate process defined.
/* -- BL returns the list of alternate process reference for a selected Process Occurrence -- */
Let MyMBOMOcc(MfgProcessOccurrence)
let MyInputMBOMRef(DELFmiFunctionReference)
let FROMProcessRef(DELFmiFunctionReference)
let TOProcessRef(DELFmiFunctionReference)
let ListOfAlternateRelShip(list)
let NbRelship(integer)
let NbMBOM(integer)
let CurAlternateRel(MfgProcessAlternate)
let ii(integer)
let ListOfChildren(list)
let OutputList(list)
set MyMBOMOcc = ThisObject
set MyInputMBOMRef=MyMBOMOcc.Reference
if (MyInputMBOMRef <> NULL)
{
ListOfAlternateRelShip = MyInputMBOMRef.GetRelatedProcessesFromAlternate()
NbRelship = ListOfAlternateRelShip.Size()
ii = 1
for ii while ii <= NbRelship
{
set CurAlternateRel=ListOfAlternateRelShip.GetItem(ii)
set FROMProcessRef = CurAlternateRel.Owner
OutputList.Append(FROMProcessRef)
}
ListOfAlternateRelShip = MyInputMBOMRef.ListAlternateProcesses()
NbRelship = ListOfAlternateRelShip.Size()
ii = 1
for ii while ii <= NbRelship
{
set CurAlternateRel=ListOfAlternateRelShip.GetItem(ii)
set ListOfChildren = CurAlternateRel.Children
set NbMBOM = ListOfChildren.Size()
if (NbMBOM == 1)
{
set TOProcessRef = ListOfChildren.GetItem(1)
OutputList.Append(TOProcessRef)
}
}
}
OutputList.RemoveDuplicates()
/* Output*/
Parameters.SetAttributeObject("OutputListObjectRef" , OutputList)
| |||||||||||||||||||||