EcoStruxure Geo SCADA Expert Forum
Schneider Electric support forum about installation, configuration, integration and troubleshooting of EcoStruxure Geo SCADA Expert (ClearSCADA, ViewX, WebX).
Link copied. Please paste this link to share this article on your social media post.
Posted: 2020-02-12 09:39 AM . Last Modified: 2023-05-03 12:17 AM
I am trying to change the properties of a button symbol based on the mimc that is open. For example, I have 5 menu buttons that open/navigate to other mimics via pick action hyperlink, but I want Button 1 to be yellow or disappear (in the code below) since the mimic that opens, is the one that is currently open. I'm not real handy with VB/Scripting.
I have the following in the Mimic Script
sub Mimic_Load()
call ButtonMod()
end sub
sub ButtonMod()
if Mimic.FullName = "SA.Sites.Overview.Communication Statistics Overview L1" then
btn_Booster1.Visible = False
else
btn_Booster1.Visible = True
end if
end sub
I know that the fullname property is correct as I've done a MsgBox and returned that name and the error happens at the success point where btn_Booster1.Visible happens. The error I get is "Object required: 'btn_Booster1'". And yes, there is a button symbol on the Mimic and its name is btn_Booster1.
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2020-02-12 01:08 PM . Last Modified: 2020-02-12 01:11 PM
As @geoffpatton recommends, use the Visible animation for this.
On the animations dialog...
It's where other people will expect such animations to be located.
As for your actual script, I've got a terrible memory for these things and the exact syntax. But I believe you may have to specify the full path to the object, ie. with the appropriate layer also.
I thought there was an example for this in the help, but maybe it was in the Schneider training material.
I found it 🙂
file:///C:/ProgramData/Schneider%20Electric/ClearSCADA/Help_en-US/Content/ScriptingGuide/Mimic.Layers.htm%3FTocPath%3DCore%2520Reference%7CCoding%7CScripting%7CMimic%2520Functions%2520and%2520Properties%7CMimic%2520Properties%7CMimic.Layers%7C_____0
hmm... it seems copying the shortcut, or trying to Open in new Window with GeoSCADA help doesn't work...
You want the scripting section, and then Mimic Properties, and then Mimic.Layers
Core Reference > Coding > Scripting > Mimic.Layers
So you should be doing
Mimic.Layers("{NAME OF LAYER HERE}").Item("{NAME OF ITEM HERE"}).Visible = False
I just tested it.. and now I've lost a good button...
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2020-02-12 01:11 PM
Oh duh, I was thinking of writing to a database object.
Something like this
Mimic.Layers("Graphical").Item("ForcePoll").Visible = True
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2020-02-12 12:45 PM
I would just use the Animations for Color and Visible and not a script.
But to answer your question you want
btn_Booster1.Visible, False
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2020-02-12 01:08 PM . Last Modified: 2020-02-12 01:11 PM
As @geoffpatton recommends, use the Visible animation for this.
On the animations dialog...
It's where other people will expect such animations to be located.
As for your actual script, I've got a terrible memory for these things and the exact syntax. But I believe you may have to specify the full path to the object, ie. with the appropriate layer also.
I thought there was an example for this in the help, but maybe it was in the Schneider training material.
I found it 🙂
file:///C:/ProgramData/Schneider%20Electric/ClearSCADA/Help_en-US/Content/ScriptingGuide/Mimic.Layers.htm%3FTocPath%3DCore%2520Reference%7CCoding%7CScripting%7CMimic%2520Functions%2520and%2520Properties%7CMimic%2520Properties%7CMimic.Layers%7C_____0
hmm... it seems copying the shortcut, or trying to Open in new Window with GeoSCADA help doesn't work...
You want the scripting section, and then Mimic Properties, and then Mimic.Layers
Core Reference > Coding > Scripting > Mimic.Layers
So you should be doing
Mimic.Layers("{NAME OF LAYER HERE}").Item("{NAME OF ITEM HERE"}).Visible = False
I just tested it.. and now I've lost a good button...
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2020-02-12 01:11 PM
Oh duh, I was thinking of writing to a database object.
Something like this
Mimic.Layers("Graphical").Item("ForcePoll").Visible = True
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2020-02-12 01:20 PM
Thanks! That worked wonderfully!
Link copied. Please paste this link to share this article on your social media post.
Link copied. Please paste this link to share this article on your social media post.
Posted: 2020-02-12 01:20 PM
Thanks! That worked wonderfully!
Link copied. Please paste this link to share this article on your social media post.
Create your free account or log in to subscribe to the board - and gain access to more than 10,000+ support articles along with insights from experts and peers.