Report the list of connected sheets
- The purpose of this function is to have a functionality to be able to report on\off-sheet connectors
- So, this EKL method takes a PLM Instance (The routable) as input and returns all the properties of all Sheets connectors connected to this PLM instance.
- CATGetSchSheetConnectorInformations (iRoutableInstance, oListOfSheetCntrInfos)
//LogicalOccurrence - string Let RoutableInstance(PLMCoreInstance) Let DisplayMessage(String) Set RoutableInstance = ThisObject.Instance Let ListOfSheetCntrInfos(List) GetSchSheetConnectorInformations(RoutableInstance, ListOfSheetCntrInfos) Let j = 1 Let jsize = 0 jsize = ListOfSheetCntrInfos->Size() Let ListofRelatedName(List) for j while j<=jsize { Let SheetCntrInfos(Feature) set SheetCntrInfos = ListOfSheetCntrInfos.GetItem(j) if(SheetCntrInfos <> NULL) { //Retrieve the information about each sheet connector DisplayMessage = " Input Routable : " + RoutableInstance.GetAttributeString("PLM_ExternalID") + " | " DisplayMessage = DisplayMessage + "Active Sheet Connector Name = " + SheetCntrInfos.GetAttributeString("SheetConnector_Object_Name")+ " | " Let RelatedOffSheetName(String) Let i = 1 Set ListofRelatedName = SheetCntrInfos.GetAttributeObject("SheetConnector_RelatedOffSheetObject_Name") for i while i<=ListofRelatedName->Size() { RelatedOffSheetName = ListofRelatedName[i] if (RelatedOffSheetName <> "") DisplayMessage = DisplayMessage + " | " + "Related OffSheet Name= " + RelatedOffSheetName+ " | " } Let RelatedRoutableInstance(PLMCoreInstance) Set RelatedRoutableInstance = SheetCntrInfos.GetAttributeObject("SheetConnector_RelatedRoutable") if (RelatedRoutableInstance <> NULL) DisplayMessage = DisplayMessage + "Related Routable Instance = "+ RelatedRoutableInstance.GetAttributeString("PLM_ExternalID")+ " | " Let RelatedComponentInstance(PLMCoreInstance) Set RelatedComponentInstance = SheetCntrInfos.GetAttributeObject("SheetConnector_RelatedComponent") if (RelatedComponentInstance <> NULL) DisplayMessage = DisplayMessage + "Related Component Instance = "+ RelatedComponentInstance.GetAttributeString("PLM_ExternalID")+ " | " Let SheetInst(DIFSheetInstance) Set SheetInst = SheetCntrInfos.GetAttributeObject("SheetConnector_SheetInstance") if (SheetInst <> NULL) DisplayMessage = DisplayMessage + " | " + "Sheet Instance = " + SheetInst.GetAttributeString("PLM_ExternalID") Let Sheet(DIFSheet) Set Sheet = SheetCntrInfos.GetAttributeObject("SheetConnector_SheetReference") if (Sheet <> NULL) DisplayMessage = DisplayMessage + " | " + "Sheet Reference = " + Sheet.Name+ " | " Let ViewInstance(DIFViewInstance) Set ViewInstance = SheetCntrInfos.GetAttributeObject("SheetConnector_ViewInstance") DisplayMessage = DisplayMessage + "View Instance= " + ViewInstance.GetAttributeString("PLM_ExternalID")+ " | " Let ViewRef(DIFView) Set ViewRef = SheetCntrInfos.GetAttributeObject("SheetConnector_ViewReference") DisplayMessage = DisplayMessage + "View Reference= " + ViewRef.Name+ " | " Let PositionX(Real) Set PositionX = SheetCntrInfos.GetAttributeReal("SheetConnector_PositionX_InSheet") DisplayMessage = DisplayMessage + " | "+ "PositionX= " + PositionX+ " | " Let PositionY(Real) Set PositionY = SheetCntrInfos.GetAttributeReal("SheetConnector_PositionY_InSheet") DisplayMessage = DisplayMessage+ "PositionY= " + PositionY+ " | " Let FramePositionX(String) Set FramePositionX = SheetCntrInfos.GetAttributeString("SheetConnector_FramePositionX") DisplayMessage = DisplayMessage + "FramePositionX= " + FramePositionX+ " | " Let FramePositionY(String) Set FramePositionY = SheetCntrInfos.GetAttributeString("SheetConnector_FramePositionY") DisplayMessage = DisplayMessage + "FramePositionY= " + FramePositionY+ " | " Message(DisplayMessage) } }