Page 1 of 1

DataTypeManager.ParseValue does not support typeSystemId

Posted: 14 Apr 2021, 10:18
by Bastian_Roessl
Hi All,

I have an Information Model with a simple costum structure type and an instance of such structure. I am using "Unified Automation UA .NET SDK Bundle 3.0.9 (Evaluation Edition)" on Serverside and Clientside.

The Server loads the XML perfectly fine but the UAExpert can not display the structure.
So I tried to read the structure instance with the console client application, pretty much the same as the SDK Client example code.

There already are some lines of code to parse ExtensionObjects, but DataTypeManager.ParseValue exits with an Exception

Using Body.ToString() on the ExtensionObject gives me a (good looking) XML representation of my structure, but the parsing to a GenericEncodeableObject fails:

[StatusException] The type system is not supported.
Parameter name: typeSystemId
at UnifiedAutomation.UaBase.AsyncResultBase.ThrowOnError()
at UnifiedAutomation.UaBase.AsyncResultBase.WaitForComplete()
at UnifiedAutomation.UaBase.AsyncResultBase.WaitForComplete(IAsyncResult ar)
at UnifiedAutomation.UaClient.DataTypeManager.EndGetDictionary(IAsyncResult result)
at UnifiedAutomation.UaClient.DataTypeManager.OnGetDescriptionFromEncodingGetDictionaryComplete(IAsyncResult result)
[ArgumentException] The type system is not supported.
Parameter name: typeSystemId
at UnifiedAutomation.UaClient.DataTypeManager.AddDictionaryToCache(NodeId typeSystemId, ExpandedNodeId dictionaryId, Byte[] schemaData)
at UnifiedAutomation.UaClient.DataTypeManager.OnGetDictionaryReadDataComplete(IAsyncResult result)

I double checked the code with following: https://documentation.unified-automation.com/uasdkdotnet/2.5.3/html/L3ClientTutExample28.html but looks like the example code is not the issue.

Am i missing something? What should i try to figure out the root cause?
Thanks in advance!

Re: DataTypeManager.ParseValue does not support typeSystemId

Posted: 14 Apr 2021, 15:34
by Support Team
Hello Bastian,

Can you reproduce the issue with the Read Structure dialog in the GettingStarted example? Is your application build with .NET Framework or .NET standard?
Using Body.ToString() on the ExtensionObject gives me a (good looking) XML representation of my structure
This is a hint that the ExtensionObject is sent in XML format. This can have two reasons:
  1. The value of the variable is set in a NodeSet XML file and this value is not parsed by the server application. In this case you should generate code with UaModeler and register the structured DataType at the communication stack (http://documentation.unified-automation.com/uamodeler/1.6.5/html/howgennet_sec.html#howgen_net_st4)
  2. When reading the value XML data encoding is requested. In this case please do not request a data encoding.

Re: DataTypeManager.ParseValue does not support typeSystemId

Posted: 16 Apr 2021, 13:11
by Bastian_Roessl
The value of the variable is set in a NodeSet XML file
Yes, this is true.
What I want is to export a NodeSet XML with UAModeler, then (at the server) to load the XML without any knowledge about Structure Types and Instances.

For my use case, it is not possible to use generated code or to write custom code. I expect it to work as it does for any other Objects, Types, Enumerations and so on, therefore I am a little bit confused why Structures do not work as expected.
Do Structures need extra lines of code? And if yes, why do Structures need costum code while all the other work out-of-the-box?