tests/logging/py_ext_0@py_ext/pyfile.xml
author Andrey Skvortsov <andrej.skvortzov@gmail.com>
Tue, 05 Mar 2019 11:43:20 +0300
changeset 2520 3a1c0c161f80
parent 1639 1953c268a194
permissions -rw-r--r--
Fix backtrace on printing localized (non-ascii) error message in PLCGenerator.

traceback:
File "C:\Beremiz\targets\st\beremiz\..\..\..\beremiz\beremiz\BeremizIDE.py", line 811, in OnMenu
getattr(self.CTR, method)()
File "C:\Beremiz\targets\st\beremiz\..\..\..\beremiz\beremiz\ProjectController.py", line 1134, in _Build
IECGenRes = self._Generate_SoftPLC()
File "C:\Beremiz\targets\st\beremiz\..\..\..\beremiz\beremiz\ProjectController.py", line 746, in _Generate_SoftPLC
if self._Generate_PLC_ST():
File "C:\Beremiz\targets\st\beremiz\..\..\..\beremiz\beremiz\ProjectController.py", line 763, in _Generate_PLC_ST
self._getIECgeneratedcodepath())
File "C:\Beremiz\targets\st\beremiz\..\..\..\beremiz\beremiz\PLCControler.py", line 466, in GenerateProgram
errors.append(str(ex))
<type 'exceptions.UnicodeEncodeError'>: 'ascii' codec can't encode characters in position 0-9: ordinal not in range(128)
Fix backtrace on printing localized (non-ascii) error message in PLCGenerator.

traceback:
File "C:\Beremiz\targets\st\beremiz\..\..\..\beremiz\beremiz\BeremizIDE.py", line 811, in OnMenu
getattr(self.CTR, method)()
File "C:\Beremiz\targets\st\beremiz\..\..\..\beremiz\beremiz\ProjectController.py", line 1134, in _Build
IECGenRes = self._Generate_SoftPLC()
File "C:\Beremiz\targets\st\beremiz\..\..\..\beremiz\beremiz\ProjectController.py", line 746, in _Generate_SoftPLC
if self._Generate_PLC_ST():
File "C:\Beremiz\targets\st\beremiz\..\..\..\beremiz\beremiz\ProjectController.py", line 763, in _Generate_PLC_ST
self._getIECgeneratedcodepath())
File "C:\Beremiz\targets\st\beremiz\..\..\..\beremiz\beremiz\PLCControler.py", line 466, in GenerateProgram
errors.append(str(ex))
<type 'exceptions.UnicodeEncodeError'>: 'ascii' codec can't encode characters in position 0-9: ordinal not in range(128)


Close #67
<?xml version='1.0' encoding='utf-8'?>
<PyFile xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <variables/>
  <globals>
    <xhtml:p><![CDATA[import threading, time

MyT = None
Stop = False

def StartLog():
    global MyT
    MyT=threading.Thread(target = DoLog)
    MyT.start()

def DoLog():
    global Stop
    while not Stop:
        PLCObject.LogMessage("Python side Logging (PLC is %s)"%PLCObject.PLCStatus)
        time.sleep(0.3)

def StopLog():
    global MyT,Stop
    Stop=True

_runtime_init.append(StartLog)
_runtime_cleanup.append(StopLog)
]]></xhtml:p>
  </globals>
  <init>
    <xhtml:p><![CDATA[]]></xhtml:p>
  </init>
  <cleanup>
    <xhtml:p><![CDATA[]]></xhtml:p>
  </cleanup>
  <start>
    <xhtml:p><![CDATA[]]></xhtml:p>
  </start>
  <stop>
    <xhtml:p><![CDATA[]]></xhtml:p>
  </stop>
</PyFile>