[OSGeoJapan-discuss] QGIS3.0.2のPythonコントロールのバグ

石崎 一隆 ishizaki @ hcc.co.jp
2018年 6月 7日 (木) 02:22:34 PDT


皆様

北海道地図の石崎です。

QGIS3.0.2のPythonコントロールでProcessingを利用すると
バグがありましたので共有させて頂きます。

processing.run('qgis:addfieldtoattributestable',parameters)
と実行すると

NameError: name 'QgsProcessingFeedback' is not defined
とエラーになります。


《 解決策1 》
feedback = QgsProcessingFeedback()を追加して実行する。

以下のように記述します。
processing.run('qgis:addfieldtoattributestable',parameters,
feedback = QgsProcessingFeedback())



《 解決策2 》
Processing.pyを修正する。

C:\Program Files\QGIS 3.0\apps\qgis\python
 \plugins\processing\core\Processing.py

Processing.pyの47行目に"QgsProcessingFeedback"を追加します。
---------------------------------------------------------------------
from qgis.PyQt.QtCore import Qt, QCoreApplication
from qgis.PyQt.QtWidgets import Qapplication
from qgis.PyQt.QtGui import Qcursor
from qgis.utils import iface
from qgis.core import (QgsMessageLog,
	              QgsApplication,
                               QgsMapLayer,
                               QgsProcessingProvider,
                               QgsProcessingAlgorithm,
                               QgsProcessingException,
                               QgsProcessingParameterDefinition,
                               QgsProcessingOutputVectorLayer,
                               QgsProcessingOutputRasterLayer,
                               QgsProcessingOutputMapLayer,
                               QgsProcessingOutputMultipleLayers)
                                  ⇒ 47行目
---------------------------------------------------------------------

以下、追加した後
---------------------------------------------------------------------
from qgis.PyQt.QtCore import Qt, QCoreApplication
from qgis.PyQt.QtWidgets import Qapplication
from qgis.PyQt.QtGui import Qcursor
from qgis.utils import iface
from qgis.core import (QgsMessageLog,
	              QgsApplication,
                               QgsMapLayer,
                               QgsProcessingProvider,
                               QgsProcessingAlgorithm,
                               QgsProcessingException,
                               QgsProcessingParameterDefinition,
                               QgsProcessingOutputVectorLayer,
                               QgsProcessingOutputRasterLayer,
                               QgsProcessingOutputMapLayer,
                               QgsProcessingOutputMultipleLayers,
                               QgsProcessingFeedback)
---------------------------------------------------------------------

以上です。





OSGeoJapan-discuss メーリングリストの案内