Community Tip - You can subscribe to a forum, label or individual post and receive email notifications when someone posts a new topic or reply. Learn more! X
I´m currently using CADDocuments('id')/Uses to fetch the different components used by Assemblies etc. but the information returned doesn´t include important details like which version of a component is used.
Is there a way to use either the MemberLink ID that´s being returned to find out which version of the component is used or to change the /Uses GET request (by using parameters or a Request Body) so that this information is returned in the JSON response?
The system I´m working on:
WRS version: 13.0.2.4
Windchill version: 13.02.
This is an example of the JSON responses I get when using /Uses
{
"@odata.context": "domain/Windchill/servlet/odata/v4/CADDocumentMgmt/$metadata#CADDocuments('OR:wt.epm.EPMDocument:---')/Uses",
"value": [
{
"CreatedOn": "---",
"ID": "OR:wt.epm.structure.EPMMemberLink:---",
"LastModified": "---",
"ComponentName": null,
"DepType": {
"Value": 2,
"Display": "---"
},
"FeatureID": 14,
"FeatureNumber": 5,
"HasFixedConstraint": false,
"LayerID": 7,
"Location": {
"PointX": 0,
"PointY": -0.015,
"PointZ": 0.028050891497608,
"PointUnit": "m",
"AngleX": 0,
"AngleY": 1.5707963267949,
"AngleZ": 1.5707963267949,
"AngleUnit": "r"
},
"ObjectType": "CAD Document Uses Link",
"Placed": true,
"Quantity": 1,
"Required": true,
"Suppressed": false,
"Unit": {
"Value": "ea",
"Display": "each"
},
"UseInfo": {
"FileName": "---.prt",
"Category": {
"Value": "CADCOMPONENT",
"Display": "---"
},
"SubCategory": null,
"AuthoringApplication": {
"Value": "---",
"Display": "---"
}
}
}
]
}
Solved! Go to Solution.
Hi , the uses relationship is Parent EPM to child EPMMaster components .
The component are resolved to iterations only in a structure applying a filter .
for more info in response you can try :
http://<HOST>/Windchill/servlet/odata/CADDocumentMgmt/CADDocuments('OR:wt.epm.EPMDocument:xxxx')/PTC.CADDocumentMgmt.GetStructure?$expand=Components($levels=max;$select=CADDocumentID,CADDocumentName,CADDocumentNumber,PVParentTreeId,PVTreeId;$expand=CADDocumentUse)
Note that expand=Components($levels=max) may slow performance if the BOM is too big
Hi , the uses relationship is Parent EPM to child EPMMaster components .
The component are resolved to iterations only in a structure applying a filter .
for more info in response you can try :
http://<HOST>/Windchill/servlet/odata/CADDocumentMgmt/CADDocuments('OR:wt.epm.EPMDocument:xxxx')/PTC.CADDocumentMgmt.GetStructure?$expand=Components($levels=max;$select=CADDocumentID,CADDocumentName,CADDocumentNumber,PVParentTreeId,PVTreeId;$expand=CADDocumentUse)
Note that expand=Components($levels=max) may slow performance if the BOM is too big
Thank you very much, that works. Do you happen to know if it´s possible to expand the child with the version field (Revision.Iteration)? Since I now get the ID I could use a second basic call to get it but it would be nice if I could use a single call to save resources. I´ve tried putting it into the $expand= & $select= section of "Components" but Windchill tells me that "[Revision/Version/Iteration] is not defined for the type CADStructure"
Hi @Fadel
Can you just explain what is a big BOM for you? 😄
5k, 10k, 50k or 100k BOM components?
PetrH