ElementOperand QML Type

OPC UA ElementOperand型。詳細...

Import Statement: import QtOpcUa
Since: QtOpcUa 5.13

プロパティ

詳細説明

ElementOperandはOPC UA 1.05 part 4の7.7.4.2で定義されています。これは、フィルター内の別の要素をインデックスで識別するために使用されます(最初の要素のインデックスは0です)。

例えば、((Severity > 500) AND (Message == "TestString"))のAND演算の2つのオペランドを参照するなど、複雑なフィルタを作成する際に必要となります。最初のステップは、(Severity > 500) と (Message == "TestString") の 2 つの条件に対するコンテンツ・フィルタ要素を作成することです。2 つの条件の AND の組み合わせを作成するには、3 番目のコンテンツ・フィルタ要素が必要です。これは、AND 演算子と、前に作成した 2 つの条件のインデックスを持つ 2 つの要素オペランドで構成されます:

import QtOpcUa as QtOpcUa

QtOpcUa.EventFilter {
    select : [ ... ]
    where: [
        QtOpcUa.FilterElement {
            operator: QtOpcUa.FilterElement.GreaterThan
            firstOperand: QtOpcUa.SimpleAttributeOperand {
                browsePath: [
                    QtOpcUa.NodeId {
                        identifier: "Severity"
                        ns: "http://opcfoundation.org/UA/"
                    }
                ]
            }
            secondOperand: QtOpcUa.LiteralOperand {
                value: 500
                type: QtOpcUa.Constants.UInt16
            }
        }
        QtOpcUa.FilterElement {
            operator: QtOpcUa.FilterElement.Equals
            firstOperand: QtOpcUa.SimpleAttributeOperand {
                browsePath: [
                    QtOpcUa.NodeId {
                        identifier: "Message"
                        ns: "http://opcfoundation.org/UA/"
                    }
                ]
            }
            secondOperand: QtOpcUa.LiteralOperand {
                value: "TestString"
                type: QtOpcUa.Constants.String
            }
        }
        QtOpcUa.FilterElement {
            operator: QtOpcUa.FilterElement.And
            firstOperand: QtOpcUa.ElementOperand {
                index: 0
            }
            secondOperand: QtOpcUa.ElementOperand {
                index: 1
            }
        }
    ]
}

プロパティー ドキュメント

index : int

オペランドとして使用されるフィルター要素のインデックス。


このドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します このドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。