Files
Stream_PHX_A7/Gateways/FE/projects/.resources/4d92e61b869fd09fca39f9b62fad3d7bea2a7e8f153364826c6ef59535b51bd8

128 lines
2.7 KiB
Plaintext

from com.inductiveautomation.ignition.common import BasicDataset
from com.inductiveautomation.ignition.common.script.builtin.DatasetUtilities import PyDataSet
from java.util import Date
def sanitize_tree(element):
if hasattr(element, '__iter__'):
if hasattr(element, 'keys'):
return dict((k, sanitize_tree(element[k])) for k in element.keys())
else:
return list(sanitize_tree(x) for x in element)
return element
def getColumnStruct():
return {
"field": "",
"visible": True,
"editable": False,
"render": "auto",
"justify": "auto",
"align": "center",
"resizable": True,
"sortable": True,
"sort": "none",
"filter": {
"enabled": False,
"visible": "on-hover",
"string": {
"condition": "",
"value": ""
},
"number": {
"condition": "",
"value": ""
},
"boolean": {
"condition": ""
},
"date": {
"condition": "",
"value": ""
}
},
"viewPath": "",
"viewParams": {},
"boolean": "checkbox",
"number": "value",
"progressBar": {
"max": 100,
"min": 0,
"bar": {
"color": "",
"style": {
"classes": ""
}
},
"track": {
"color": "",
"style": {
"classes": ""
}
},
"value": {
"enabled": True,
"format": "0,0.##",
"justify": "center",
"style": {
"classes": ""
}
}
},
"toggleSwitch": {
"color": {
"selected": "",
"unselected": ""
}
},
"nullFormat": {
"includeNullStrings": False,
"strict": False,
"nullFormatValue": ""
},
"numberFormat": "0,0.##",
"dateFormat": "MMM-DD HH:mm",
"width": "",
"strictWidth": False,
"header": {
"title": "",
"justify": "left",
"align": "center",
"style": {
"classes": ""
}
},
"footer": {
"title": "",
"justify": "left",
"align": "center",
"style": {
"classes": ""
}
},
"style": {
"classes": ""
}
}
def xformTableColumns(dataIn):
if isinstance(dataIn, PyDataSet):
data = dataIn
elif isinstance(dataIn, BasicDataset):
data = system.dataset.toPyDataSet(dataIn)
elif isinstance(dataIn, dict):
pass
colHeaders = system.dataset.getColumnHeaders(data)
columns = []
if len(data)> 0:
for col in colHeaders:
struct= utils.helper.getColumnStruct()
struct["field"] = col
if isinstance(data[0][col], Date):
struct["render"] = "date"
columns.append(struct)
else:
for col in colHeaders:
struct= utils.helper.getColumnStruct()
struct["field"] = col
columns.append(struct)
return columns