Script Example
Python |
def toNodeStruct(obj): name=obj.getName() objType = obj.getMESObjectTypeName() code = None stateType = '' if objType == 'EquipmentState': code = obj.getStateCode() stateType = obj.getStateTypeName() return{ 'name':name, 'objectType':objType, 'stateData':{ 'code':code, 'stateType':stateType }, 'children': [toNodeStruct(child.getMESObject()) for child in obj.getChildCollection().getList()] } eqPath = 'Enterprise\El Dorado Hills\Packaging Area\Packaging Line 1' eqObj = system.mes.loadMESObjectByEquipmentPath(eqPath) eqClassObj = system.mes.loadMESObject(eqObj.getEquipmentStateClassUUID()) states = (toNodeStruct(eqClassObj)) import pprint pprint.pprint(states) |
>>>
{'children': [{'children': [],
'name': u'Blocked',
'objectType': u'EquipmentState',
'stateData': {'code': 5, 'stateType': u'Blocked'}},
{'children': [],
'name': u'Disabled',
'objectType': u'EquipmentState',
'stateData': {'code': 0, 'stateType': u'Disabled'}},
{'children': [],
'name': u'Idle',
'objectType': u'EquipmentState',
'stateData': {'code': 2, 'stateType': u'Idle'}},
{'children': [],
'name': u'Planned Downtime',
'objectType': u'EquipmentState',
'stateData': {'code': 4, 'stateType': u'Planned Downtime'}},
{'children': [],
'name': u'Running',
'objectType': u'EquipmentState',
'stateData': {'code': 1, 'stateType': u'Running'}},
{'children': [],
'name': u'Starved',
'objectType': u'EquipmentState',
'stateData': {'code': 6, 'stateType': u'Starved'}},
{'children': [],
'name': u'Unplanned Downtime',
'objectType': u'EquipmentState',
'stateData': {'code': 3, 'stateType': u'Unplanned Downtime'}}],
'name': u'Default',
'objectType': u'EquipmentStateClass',
'stateData': {'code': None, 'stateType': ''}}
>>>