Qt に問題があります。open 6254 で QOpcUa を使用して PLC でタグの読み取りと書き込みを行っていますが、次のエラーが発生することがあります。問題を特定しました。これは、PLC がこのタグに同時に書き込みを行っているために発生します。書き込む前にタグが利用可能かどうかを確認する方法があれば教えてください。
この件については既に学習済みで、StatusCode や monitoringStatus などの機能がありますが、適切に使用できません。
void NodeLoad::writeOrderNumber(QString value)
{
//if("method that checks the availability of the tag" == true)
OrderNumber->writeAttribute(QOpcUa::NodeAttribute::Value,value,QOpcUa::Types::String);
//else qDebug() << "Error";
}
執筆時点でタグが利用できない場合、次のエラーが発生します: [2019-08-30 09:07:07.019 (UTC+0100)] エラー/サブスクリプション 36 のクライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 35 のエラー/クライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 36 のエラー/クライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 35 のエラー/クライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 34 のエラー/クライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 33 のエラー/クライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 32 のエラー/クライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 31 のエラー/クライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 30 のエラー/クライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 29 のエラー/クライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 28 のエラー/クライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 27 のエラー/クライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 26 のエラー/クライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 25 のエラー/クライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 24 のエラー/クライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 23 のエラー/クライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 22 のエラー/クライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 21 のエラー/クライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 20 のエラー/クライアントの非アクティブ。
- [2019-08-30 09:07:07.019 (UTC+0100)] サブスクリプション 19 のエラー/クライアントの非アクティブ。
- 09:07:07: プログラムが予期せず終了しました。
- 09:07:07: プロセスが強制終了されました。