Welcome to the new Schneider Electric Community

It's your place to connect with experts and peers, get continuous support, and share knowledge.

  • Explore the new navigation for even easier access to your community.
  • Bookmark and use our new, easy-to-remember address (community.se.com).
  • Get ready for more content and an improved experience.

Contact SchneiderCommunity.Support@se.com if you have any questions.

Close
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.
Send Invite Cancel
84611members
353910posts

[Imported] Quality Classifications and CurrentQuality

EcoStruxure Geo SCADA Expert Forum

Find out how SCADA systems and networks, like EcoStruxure Geo SCADA Expert, help industrial organizations maintaining efficiency, processing data for smarter decision making with IoT, RTU and PLC devices.

Solved
sbeadle
Janeway Janeway
Janeway
0 Likes
1
407

[Imported] Quality Classifications and CurrentQuality

>>Message imported from previous forum - Category:ClearSCADA Software<<
User: brcgomezle, originally posted: 2019-01-08 21:45:43 Id:346
Hi.

I have a system where is common to do maintenance to the sensors we are reading. Each time a maintenance is started, the corresponding points in ClearScada are tagged using Quality Classifications feature, but the CurrentQuality of the point and the quality of the historic value never change from "Good" to "Bad". I'm using this feature such that all maintenances that will generate "bad" qualities won't be considered in my reports (Using historic views).

How can I set a "Bad" quality on my historic values when a Quality Classification is associated to a point?

Thanks for your help.


Accepted Solutions
sbeadle
Janeway Janeway
Janeway
0 Likes
0
406

Re: [Imported] Quality Classifications and CurrentQuality

>>Responses imported from previous forum


Reply From User: sbeadle, posted: 2019-01-09 08:56:45
Approaches I have seen used:
1) Enable 'Put Aside' on the historic tab of all points. Then change your practice to override points in maintenance. This causes storage of data received while overridden into the Put Aside classification, which is not usually displayed on trends or history lists, but can be shown as another trace on trends or queried with slightly different SQL.
2) When the maintenance ends, script code to modify historic data from the start to the end of maintenance period - modified data can have a different quality, such as Bad or Uncertain.
3) Use the historic Validation feature. Validation would then need to be done on all history, because the default state is unvalidated.

 

Reply From User: brcgomezle, posted: 2019-01-09 13:14:31
Your first comment almost leave me hopeless. Cannot believe this feature seems something fancy but useless to its purpose.


I will try your approaches in my local database and then in the real system, I will let you know how it ends. Thanks a lot for your help.


Reply From User: sbeadle, posted: 2019-01-09 13:33:36
Sorry for the first comment - I believe you may be the first to try Quality Classifications! Your feedback is welcome.


Reply From User: brcgomezle, posted: 2019-01-09 13:53:28
Don't worry, is good to know that there are other options anyway. I know how it feels to find a problem that seems nobody knows about.


Reply From User: brcgomezle, posted: 2019-01-10 20:56:42
Hi sbeadle!

I'm trying to script and modify the values stored while the maintenance was performed. I'm using the following function:

oPoint.Interface.Historic.ModifyValue

But this inserts data into the historic values of the point with the quality I set. Do you know the function used in trends called "Modify Range of Values" but through script? I haven't found it.

Thank you


Reply From User: sbeadle, posted: 2019-01-11 09:10:49
ModifyValues is not (yet) available from the API. I believe ModifyValue will change/overwrite the value if the timestamp is exactly the same as the original. This may be a problem in script as vbscript does not support fractional seconds. You could use script to call a Logic program written to read and write values in a range?


Reply From User: brcgomezle, posted: 2019-01-11 15:21:36
I will try it. Once I have the results will let you know.


Reply From User: brcgomezle, posted: 2019-06-26 20:50:34
Hi sbeadle,

I tried with scripts and definitely the best option is to enable Put Aside feature. At the time you need to tag values with 'bad' quality the corresponding point must be overriden. Once the condition is normalized, release the override value.

The put aside values won't appear in a normal CDBHISTORIC query and won't be consider into any HistoricView.

If it is necessary to see the variations while override value is set, at the end of the process Put aside values can be captured from CDBHISTORICALL and inserted into CDBHISTORIC using oPoint.Interface.Historic.InsertValue method with bad quality.

Thanks for your help.

See Answer In Context

1 Reply 1
sbeadle
Janeway Janeway
Janeway
0 Likes
0
407

Re: [Imported] Quality Classifications and CurrentQuality

>>Responses imported from previous forum


Reply From User: sbeadle, posted: 2019-01-09 08:56:45
Approaches I have seen used:
1) Enable 'Put Aside' on the historic tab of all points. Then change your practice to override points in maintenance. This causes storage of data received while overridden into the Put Aside classification, which is not usually displayed on trends or history lists, but can be shown as another trace on trends or queried with slightly different SQL.
2) When the maintenance ends, script code to modify historic data from the start to the end of maintenance period - modified data can have a different quality, such as Bad or Uncertain.
3) Use the historic Validation feature. Validation would then need to be done on all history, because the default state is unvalidated.

 

Reply From User: brcgomezle, posted: 2019-01-09 13:14:31
Your first comment almost leave me hopeless. Cannot believe this feature seems something fancy but useless to its purpose.


I will try your approaches in my local database and then in the real system, I will let you know how it ends. Thanks a lot for your help.


Reply From User: sbeadle, posted: 2019-01-09 13:33:36
Sorry for the first comment - I believe you may be the first to try Quality Classifications! Your feedback is welcome.


Reply From User: brcgomezle, posted: 2019-01-09 13:53:28
Don't worry, is good to know that there are other options anyway. I know how it feels to find a problem that seems nobody knows about.


Reply From User: brcgomezle, posted: 2019-01-10 20:56:42
Hi sbeadle!

I'm trying to script and modify the values stored while the maintenance was performed. I'm using the following function:

oPoint.Interface.Historic.ModifyValue

But this inserts data into the historic values of the point with the quality I set. Do you know the function used in trends called "Modify Range of Values" but through script? I haven't found it.

Thank you


Reply From User: sbeadle, posted: 2019-01-11 09:10:49
ModifyValues is not (yet) available from the API. I believe ModifyValue will change/overwrite the value if the timestamp is exactly the same as the original. This may be a problem in script as vbscript does not support fractional seconds. You could use script to call a Logic program written to read and write values in a range?


Reply From User: brcgomezle, posted: 2019-01-11 15:21:36
I will try it. Once I have the results will let you know.


Reply From User: brcgomezle, posted: 2019-06-26 20:50:34
Hi sbeadle,

I tried with scripts and definitely the best option is to enable Put Aside feature. At the time you need to tag values with 'bad' quality the corresponding point must be overriden. Once the condition is normalized, release the override value.

The put aside values won't appear in a normal CDBHISTORIC query and won't be consider into any HistoricView.

If it is necessary to see the variations while override value is set, at the end of the process Put aside values can be captured from CDBHISTORICALL and inserted into CDBHISTORIC using oPoint.Interface.Historic.InsertValue method with bad quality.

Thanks for your help.