plcopen/plcopen.py
changeset 557 0f591ac019f3
parent 552 a387f258814a
child 566 6014ef82a98a
equal deleted inserted replaced
556:69214983dd03 557:0f591ac019f3
  2353     setattr(cls, "getrelPositionXY", getrelPositionXY)
  2353     setattr(cls, "getrelPositionXY", getrelPositionXY)
  2354 
  2354 
  2355 cls = PLCOpenClasses.get("value", None)
  2355 cls = PLCOpenClasses.get("value", None)
  2356 if cls:
  2356 if cls:
  2357     def setvalue(self, value):
  2357     def setvalue(self, value):
       
  2358         value = value.strip()
  2358         if value.startswith("[") and value.endswith("]"):
  2359         if value.startswith("[") and value.endswith("]"):
  2359             arrayValue = PLCOpenClasses["value_arrayValue"]()
  2360             arrayValue = PLCOpenClasses["value_arrayValue"]()
  2360             self.content = {"name" : "arrayValue", "value" : arrayValue}
  2361             self.content = {"name" : "arrayValue", "value" : arrayValue}
  2361         elif value.startswith("(") and value.endswith(")"):
  2362         elif value.startswith("(") and value.endswith(")"):
  2362             structValue = PLCOpenClasses["value_structValue"]()
  2363             structValue = PLCOpenClasses["value_structValue"]()
  2406     
  2407     
  2407     def getvalue(self):
  2408     def getvalue(self):
  2408         values = []
  2409         values = []
  2409         for element in self.value:
  2410         for element in self.value:
  2410             repetition = element.getrepetitionValue()
  2411             repetition = element.getrepetitionValue()
  2411             if repetition is not None and repetition > 1:
  2412             if repetition is not None and int(repetition) > 1:
  2412                 values.append("%s(%s)"%(repetition, element.getvalue()))
  2413                 value = element.getvalue()
       
  2414                 if value is None:
       
  2415                     value = ""
       
  2416                 values.append("%s(%s)"%(repetition, value))
  2413             else:
  2417             else:
  2414                 values.append(element.getvalue())
  2418                 values.append(element.getvalue())
  2415         return "[%s]"%", ".join(values)
  2419         return "[%s]"%", ".join(values)
  2416     setattr(cls, "getvalue", getvalue)
  2420     setattr(cls, "getvalue", getvalue)
  2417 
  2421