Sign In Help
Schneider Electric
HelpSign In
Schneider Electric Exchange
  • Home
  • Collaborate
  • Develop
  • Shop
Home Collaborate Develop Shop Log in or Register Help

Invite a Co-worker

Send a co-worker an invite to the Exchange portal.Just enter their email address and we’ll connect them to register. After joining, they will belong to the same company.
You have entered an invalid email address. Please re-enter the email address.
This co-worker has already been invited to the Exchange portal. Please invite another co-worker.
Please enter email address
Send Invite Cancel

Invitation Sent

Your invitation was sent.Thanks for sharing Exchange with your co-worker.
Send New Invite Close
  • Home
  • Collaborate
  • Exchange Community
  • :
  • SCADA & Telemetry Solutions
  • :
  • Geo SCADA Expert Forum
  • :
  • Re: Retrieving configuration error information on objects with the .NET API
Community Menu
  • Forums
    • By Topic
        • EcoStruxure IT
          • EcoStruxure IT forum
        • Industrial Automation
          • Industry Automation and Control Forum
          • Alliance System Integrators Forum
          • Machine Solutions in the Digital Transformation
          • EcoStruxure Automation Expert / IEC 61499 Forum
          • Industrial Edge Computing Forum
          • Level and Pressure Instrumentation Forum
          • Modicon User Group
          • PLC Club Indonesia
          • SEE Automation Club Forum
          • Fabrika ve Makina Otomasyonu Çözümleri
          • Форум по промышленной автоматизации СНГ
        • SCADA & Telemetry Solutions
          • Geo SCADA Expert Forum
          • SCADA and Telemetry Devices Forum
        • Power Distribution IEC
          • Power Distribution and Digital
          • Power Standards & Regulations
          • Paneelbouw & Energie Distributie
        • Power Distribution Softwares
          • EcoStruxure Power Design Forum
          • SEE Electrical Building+ Forum
          • LayoutFAST User Group Forum
        • Solutions for your Business
          • Solutions for Food & Beverage Forum
          • Solutions for Healthcare Forum
    • By Segment
        • Food & Beverage
          • Solutions for Food & Beverage Forum
        • Healthcare
          • Solutions for Healthcare Forum
      • EcoStruxure IT
        • EcoStruxure IT forum
      • Industrial Automation
        • Industry Automation and Control Forum
        • Alliance System Integrators Forum
        • Machine Solutions in the Digital Transformation
        • EcoStruxure Automation Expert / IEC 61499 Forum
        • Industrial Edge Computing Forum
        • Level and Pressure Instrumentation Forum
        • Modicon User Group
        • PLC Club Indonesia
        • SEE Automation Club Forum
        • Fabrika ve Makina Otomasyonu Çözümleri
        • Форум по промышленной автоматизации СНГ
      • SCADA & Telemetry Solutions
        • Geo SCADA Expert Forum
        • SCADA and Telemetry Devices Forum
      • Power Distribution IEC
        • Power Distribution and Digital
        • Power Standards & Regulations
        • Paneelbouw & Energie Distributie
      • Power Distribution Softwares
        • EcoStruxure Power Design Forum
        • SEE Electrical Building+ Forum
        • LayoutFAST User Group Forum
      • Solutions for your Business
        • Solutions for Food & Beverage Forum
        • Solutions for Healthcare Forum
      • Food & Beverage
        • Solutions for Food & Beverage Forum
      • Healthcare
        • Solutions for Healthcare Forum
  • Blogs
    • By Topic
        • Industrial Automation
          • Industrial Edge Computing Blog
          • Industry 4.0 Blog
          • Industrie du Futur France
        • SCADA & Telemetry Solutions
          • SCADA and Telemetry Blog
        • Power Distribution IEC
          • Power Events & Webinars
          • Power Foundations Blog
        • Power Distribution NEMA
          • NEMA Power Foundations Blog
        • Power Distribution Softwares
          • EcoStruxure Power Design Blog
          • SEE Electrical Building+ Blog
        • Solutions for your Business
          • Solutions for Food & Beverage Blog
          • Solutions for Healthcare Blog
          • Solutions for Retail Blog
    • By Segment
        • Food & Beverage
          • Solutions for Food & Beverage Blog
        • Healthcare
          • Solutions for Healthcare Blog
        • Retail
          • Solutions for Retail Blog
      • Industrial Automation
        • Industrial Edge Computing Blog
        • Industry 4.0 Blog
        • Industrie du Futur France
      • SCADA & Telemetry Solutions
        • SCADA and Telemetry Blog
      • Power Distribution IEC
        • Power Events & Webinars
        • Power Foundations Blog
      • Power Distribution NEMA
        • NEMA Power Foundations Blog
      • Power Distribution Softwares
        • EcoStruxure Power Design Blog
        • SEE Electrical Building+ Blog
      • Solutions for your Business
        • Solutions for Food & Beverage Blog
        • Solutions for Healthcare Blog
        • Solutions for Retail Blog
      • Food & Beverage
        • Solutions for Food & Beverage Blog
      • Healthcare
        • Solutions for Healthcare Blog
      • Retail
        • Solutions for Retail Blog
  • Ideas
        • Industrial Automation
          • Modicon Ideas & new features
        • SCADA & Telemetry Solutions
          • Geo SCADA Expert Ideas
          • SCADA and Telemetry Devices Ideas
  • Knowledge Center
    • Building Automation Knowledge Base
    • Industrial Automation How-to videos
    • Ask Exchange
    • Digital E-books
    • Success Stories Corner
    • Power Talks
  • Events & Webinars
  • Support
    • User Guide
    • Leaderboard
    • Releases Notes
How can we help?
cancel
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
Showing results for 
Show  only  | Search instead for 
Did you mean: 
49234members
Join Now
242449posts
Join Now

Retrieving configuration error information on objects with the .NET API

Options
  • Subscribe to RSS Feed
  • Mark Topic as New
  • Mark Topic as Read
  • Float this Topic for Current User
  • Bookmark
  • Subscribe
  • Mute
  • Printer Friendly Page
Solved Go to Solution
Back to Geo SCADA Expert Forum
Solved
stevenfaulkner
Crewman stevenfaulkner
Crewman
‎2020-07-30 12:26 PM
0 Likes
11
1164
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content
‎2020-07-30 12:26 PM

Retrieving configuration error information on objects with the .NET API

I'm looking for a way of replicating something that ViewX does through the .NET API. In ViewX when there is a configuration error on an object there will be a red X on the object, and also on all of the groups that are parents of that object so users can follow the tree down to find where the actual error is. When editing the properties on that object the configuration error message is displayed.

 

Is there a method or something that can be called on DBObject to return this configuration error information? In looking through the API nothing is jumping out at me but I might just be missing it. It seems in ViewX to work similarly to the GetAlarms() method but I'm not seeing an equivalent "GetErrors()" method or something similar. Any way to retrieve this information would be fantastic.

 

Thank you for any help.

Solved! Go to Solution.

Labels
  • Scripting
Tags (1)
  • Tags:
  • english
Share
Reply

Accepted Solutions
BevanWeiss
Admiral BevanWeiss
Admiral
‎2020-08-01 05:30 PM
0 Likes
2
1098
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content
‎2020-08-01 05:30 PM

Re: Retrieving configuration error information on objects with the .NET API

From what @AndrewScott has said, there is an easier way to get this information for now.

From the .NET API, if you have an object, then you can call the ValidateConfiguration Method on it, which will return an array of strings containing the errors

Not quite as much 'full' information as the Warning class would provided (since you wouldn't get a property name etc), but it should be good enough for most porpoises 🙂


Lead Control Systems Engineer for Alliance Automation (VIC).
All opinions are my own and do not represent the opinions or policies of my employer, or of my cat..

See Answer In Context

Tags (1)
  • Tags:
  • english
Share
Reply
  • All forum topics
  • Previous Topic
  • Next Topic
11 Replies 11
BevanWeiss
Admiral BevanWeiss
Admiral
‎2020-07-30 06:17 PM
0 Likes
10
1151
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content
‎2020-07-30 06:17 PM

Re: Retrieving configuration error information on objects with the .NET API

@stevenfaulkner darn good question this... and I felt that there was 'something'.

I've had a quick look, so far what I've found is this:

2020-07-31 11_03_55-Clipboard.png

But this obviously don't provide any enumerator to get the list of errors themselves, which is a little weird, because when writing a driver, you definitely assemble a list of configuration errors to return if there are any problems.  So code wise, there's definitely a list floating around inside Geo SCADA of the configuration errors.

 

And then this class looks like it might actually hold the Configuration Error data itself (i.e. an instance of this class might represent a single line in the Configuration Error list)... interesting that the name is 'Warning' though, so I may be entirely wrong.

2020-07-31 11_08_01-EcoStruxure Geo SCADA Expert 2019 Client API.png

 

Hmmm... and then I come up blank.

My thought was that you'd need to instantiate a Client.Simple Connection object, and then somehow get a Client.Advanced Interface from that (but I can't find what Client.Advanced Interface that might be), and then hopefully that Interface exposes a Method or Property which returns a set of all Warnings (likely sorted by ObjectId... or not...) and you'd need to filter this list down by ObjectId to get the warnings associated with the object that you care about.

 

@sbeadle / @AndrewScott Is this possible a gap between the internal 'private' interface and that exposed through the .NET API?  I feel that I've been able to do this before, but perhaps that was using the Automation Interface...

Was I on the right track, and the just missing the connections in the middle to get from Client.Connection -> Client.Advanced.ISomething -> enumeration/set of Warning


Lead Control Systems Engineer for Alliance Automation (VIC).
All opinions are my own and do not represent the opinions or policies of my employer, or of my cat..
Tags (1)
  • Tags:
  • english
Share
Reply
AndrewScott
Lieutenant AndrewScott
Lieutenant
‎2020-07-31 02:20 AM
0 Likes
9
1141
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content
‎2020-07-31 02:20 AM

Re: Retrieving configuration error information on objects with the .NET API

There is an undocumented method in the ClearScada.Client.Advanced namespace to get the configuration validation errors of an object:

Warning[] IObjectHierarchy.GetValidationErrors( ObjectId objectId )

 

There is also the database method ValidateConfiguration() in the CDBObject table which revalidates an object's configuration and returns the list validation error messages.


Andrew Scott, Lead Engineer, AVEVA
Tags (1)
  • Tags:
  • english
Share
Reply
stevenfaulkner
Crewman stevenfaulkner
Crewman
‎2020-07-31 06:29 AM
0 Likes
5
1134
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content
‎2020-07-31 06:29 AM

Re: Retrieving configuration error information on objects with the .NET API

Thank you both so much for the replies but to be honest I'm still a little confused here. Is there a class that implements the interface IObjectHierarchy? With just the interface I have no idea how to implement that methods if I were to write my own class that implements the interface.

 

Also ObjectDetails looks like it only accepts a Stream in it's constructor, but I'm not seeing a way to Serialize a DBObject into a memory stream. When I tried to do it with BinaryFormatter it doesn't know how to do it. I'm assuming what I need to be doing is calling some other method that returns ObjectDetails rather than trying to instantiate it on its own but I'm not finding a method that does that.

 

//
        // Summary:
        //     Initializes a new instance of the ClearScada.Client.Advanced.ObjectDetails class.
        //
        // Parameters:
        //   stream:
        //     The stream.
        public ObjectDetails(Stream stream);

 

Is that web documentation in your screenshots @BevanWeiss something that is included in the documentation of GeoSCADA or something you generated yourself from the XML documentation?

 

Thanks again for any assistance.

Tags (1)
  • Tags:
  • english
Share
Reply
BevanWeiss
Admiral BevanWeiss
Admiral
‎2020-08-01 12:20 AM
0 Likes
2
1115
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content
‎2020-08-01 12:20 AM

Re: Retrieving configuration error information on objects with the .NET API

@AndrewScott Any chance of getting this 'documented' into the next release of the .NET API CHM?

(If you'd like me to submit a ticket with Tech Support for the traceability just let me know)


Lead Control Systems Engineer for Alliance Automation (VIC).
All opinions are my own and do not represent the opinions or policies of my employer, or of my cat..
Tags (1)
  • Tags:
  • english
Share
Reply
BevanWeiss
Admiral BevanWeiss
Admiral
‎2020-08-01 12:31 AM
0 Likes
4
1113
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content
‎2020-08-01 12:31 AM

Re: Retrieving configuration error information on objects with the .NET API

@stevenfaulkner I'm not sure which 'web documentation' you refer to... but I suspect it's the .NET API CHM (which you should have found in the Start Menu 😉

 

What's the XML documentation that you're looking at?  It sounds a bit more painful than just looking in the help file.

 


Is that web documentation in your screenshots @BevanWeiss something that is included in the documentation of GeoSCADA or something you generated yourself from the XML documentation?


For most of the Client.Advanced functionality you just need to 'cast' it across from a Client.Simple object.

So I would expect for ObjectDetails there would be like a GetDetails(), or ObjectDetails property on the Client.Simple DBObject

 

Or perhaps a method on the Client.Advanced session/connection thing, that might accept a DBObject and would return an ObjectDetails reference.

 

 

I'll have a look in a few hours...


Lead Control Systems Engineer for Alliance Automation (VIC).
All opinions are my own and do not represent the opinions or policies of my employer, or of my cat..
Tags (1)
  • Tags:
  • english
Share
Reply
stevenfaulkner
Crewman stevenfaulkner
Crewman
‎2020-08-01 09:41 AM
0 Likes
3
1104
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content
‎2020-08-01 09:41 AM

Re: Retrieving configuration error information on objects with the .NET API

Thanks I didn't see the .NET API help chm file. I was just using the object browser in Visual Studio based on the ClearSCADA.Client.dll XML comments. I thought your screenshots were something you did yourself so it inspired me to use docfx to generate a site from those XML comments for myself. Turns out I should've had the official documentation help file all along and just didn't find it!

 

Thanks for the explanations, I haven't delved into the ClearScada.Client.Advanced stuff much, most of what I do is all based on the DBObject or Connection classes. I'll dig into it more when I get back in the office but if anyone has an examples of what methods will return an ObjectDetails class or which classes implement the IObjectHierarchy interface that I can call that method I would greatly appreciate it.

 

Thanks again for all the help.

Tags (1)
  • Tags:
  • english
Share
Reply
BevanWeiss
Admiral BevanWeiss
Admiral
‎2020-08-01 05:30 PM
0 Likes
2
1099
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content
‎2020-08-01 05:30 PM

Re: Retrieving configuration error information on objects with the .NET API

From what @AndrewScott has said, there is an easier way to get this information for now.

From the .NET API, if you have an object, then you can call the ValidateConfiguration Method on it, which will return an array of strings containing the errors

Not quite as much 'full' information as the Warning class would provided (since you wouldn't get a property name etc), but it should be good enough for most porpoises 🙂


Lead Control Systems Engineer for Alliance Automation (VIC).
All opinions are my own and do not represent the opinions or policies of my employer, or of my cat..

See Answer In Context

Tags (1)
  • Tags:
  • english
Share
Reply
AndrewScott
Lieutenant AndrewScott
Lieutenant
‎2020-08-03 02:33 AM
0 Likes
1
1089
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content
‎2020-08-03 02:33 AM

Re: Retrieving configuration error information on objects with the .NET API

@BevanWeiss, the ClearScada.Client.Advanced namespace was only intended to be used internally by ViewX, but over time a few small bits of it have 'leaked out' into the documentation. You're welcome to request that more of this namespace is documented.


Andrew Scott, Lead Engineer, AVEVA
Tags (1)
  • Tags:
  • english
Share
Reply
AndrewScott
Lieutenant AndrewScott
Lieutenant
‎2020-08-03 02:37 AM
0 Likes
0
1088
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content
‎2020-08-03 02:37 AM

Re: Retrieving configuration error information on objects with the .NET APIT

The undocumented IObjectHierarchy interface is part of the IServer interface, see the Connection.Server property.


Andrew Scott, Lead Engineer, AVEVA
Tags (1)
  • Tags:
  • english
Share
Reply
stevenfaulkner
Crewman stevenfaulkner
Crewman
‎2020-08-03 05:42 AM
0 Likes
1
1080
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content
‎2020-08-03 05:42 AM

Re: Retrieving configuration error information on objects with the .NET API

Thank you both so much for all the information and options. I think Andrew accidentally had a typo in his answer because I tried ValidationConfiguration but got the error that the method didn't exist when I tried to InvokeMethod on it. So thanks for clarifying that it should be ValidateConfiguration that gives me the functionality that I need.

 

Thank you both again.

Tags (1)
  • Tags:
  • english
Share
Reply
AndrewScott
Lieutenant AndrewScott
Lieutenant
‎2020-08-03 05:56 AM
0 Likes
0
1074
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content
‎2020-08-03 05:56 AM

Re: Retrieving configuration error information on objects with the .NET API

@stevenfaulkner you're right correct about my typo, I've corrected the original reply.


Andrew Scott, Lead Engineer, AVEVA
Tags (1)
  • Tags:
  • english
Share
Reply
Top Experts
User Count
BevanWeiss
Admiral BevanWeiss
2
sbeadle
Sisko sbeadle Sisko
1
geoffpatton
Lieutenant geoffpatton
1
See More Top Experts
Find a Service Provider
Find a certified partner to help you address your integration, installation, maintenance and project needs.
View all Providers
Support

Have a question? Please contact us with details, and we will respond.

Contact Us
FAQ

Look through existing questions to find popular answers.

Learn More
About

Want to know more about Exchange and its possibilities?

Learn More

Full access is just steps away!

Join Exchange for FREE and get unlimited access to our global community of experts.

Connect with Peers & Experts

Discuss challenges in energy and automation with 30,000+ experts and peers.

Get Support in Our Knowledge Base

Find answers in 10,000+ support articles to help solve your product and business challenges.

Ask Questions. Give Solutions

Find peer based solutions to your questions. Provide answers for fellow community members!

Register today for FREE

Register Now

Already have an account?Log in

About Us FAQ Terms & Conditions Privacy Notice Change your cookie settings
©2020, Schneider Electric