# HG changeset patch # User Andrey Skvortsov # Date 1460994719 -10800 # Node ID 270dba8bf87b1fa9ec13135ca96679b8226ecb64 # Parent 49f1763a56134726172d4bf71fc631e65826b127 fix issue, when structure data type with array field is created Traceback (most recent call last): File "editors/DataTypeEditor.py", line 669, in ElementArrayTypeFunction self.RefreshTypeInfos() File "editors/DataTypeEditor.py", line 761, in RefreshTypeInfos self.Controler.SetDataTypeInfos(self.TagName, infos) File "PLCControler.py", line 2075, in SetDataTypeInfos array.baseType.setcontent(PLCOpenParser.CreateElement( AttributeError: 'lxml.etree._Element' object has no attribute 'setcontent' diff -r 49f1763a5613 -r 270dba8bf87b PLCControler.py --- a/PLCControler.py Mon Apr 18 18:48:15 2016 +0300 +++ b/PLCControler.py Mon Apr 18 18:51:59 2016 +0300 @@ -2062,6 +2062,8 @@ if element_infos["Type"][0] == "array": array_type, base_type_name, dimensions = element_infos["Type"] array = PLCOpenParser.CreateElement("array", "dataType") + baseType = PLCOpenParser.CreateElement("baseType", "array") + array.setbaseType(baseType) element_type.setcontent(array) for j, dimension in enumerate(dimensions): dimension_range = PLCOpenParser.CreateElement("dimension", "array") @@ -2072,7 +2074,7 @@ else: array.appenddimension(dimension_range) if base_type_name in self.GetBaseTypes(): - array.baseType.setcontent(PLCOpenParser.CreateElement( + baseType.setcontent(PLCOpenParser.CreateElement( base_type_name.lower() if base_type_name in ["STRING", "WSTRING"] else base_type_name, "dataType"))