Help
  • Explore Community
  • Get Started
  • Ask the Community
  • How-To & Best Practices
  • Contact Support
Notifications
Login / Register
Community
Community
Notifications
close
  • Forums
  • Knowledge Center
  • Events & Webinars
  • Ideas
  • Blogs
Help
Help
  • Explore Community
  • Get Started
  • Ask the Community
  • How-To & Best Practices
  • Contact Support
Login / Register
Sustainability
Sustainability

Join our "Ask Me About" community webinar on May 20th at 9 AM CET and 5 PM CET to explore cybersecurity and monitoring for Data Center and edge IT. Learn about market trends, cutting-edge technologies, and best practices from industry experts.
Register and secure your Critical IT infrastructure

Connect Visual Studio ClearScada.Client.Simple to Second CS Instance

EcoStruxure Geo SCADA Expert Forum

Schneider Electric support forum about installation, configuration, integration and troubleshooting of EcoStruxure Geo SCADA Expert (ClearSCADA, ViewX, WebX).

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: 
  • Home
  • Schneider Electric Community
  • Remote Operations
  • EcoStruxure Geo SCADA Expert Forum
  • Connect Visual Studio ClearScada.Client.Simple to Second CS Instance
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
Invite a Co-worker
Send a co-worker an invite to the 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
Top Experts
User Count
sbeadle
Kirk sbeadle Kirk
307
AndrewScott
Admiral AndrewScott
95
BevanWeiss
Spock BevanWeiss
89
AdamWoodlandToo
Lt. Commander AdamWoodlandToo
36
View All
Related Products
product field
Schneider Electric
EcoStruxure™ Geo SCADA Expert

Invite a Colleague

Found this content useful? Share it with a Colleague!

Invite a Colleague Invite
Solved Go to Solution
Back to EcoStruxure Geo SCADA Expert Forum
Solved
du5tin
Lt. Commander du5tin
Lt. Commander

Posted: ‎2020-09-14 04:27 PM . Last Modified: ‎2023-05-03 12:10 AM

0 Likes
3
1711
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content

Link copied. Please paste this link to share this article on your social media post.

Posted: ‎2020-09-14 04:27 PM . Last Modified: ‎2023-05-03 12:10 AM

Connect Visual Studio ClearScada.Client.Simple to Second CS Instance

Hi, 

 

I am trying to edit trends in bulk on a ClearSCADA server that has two databases (just for dev, not running full time this way). We can connect to the first instance running on the default port (5481) just fine but I cannot seem to get onto the second instance even when we specify the system name and host name. I assume we need to specify the port somehow. 

 

using (Connection connection = new Connection(_systemName))
{
connection.Connect(_hostName); // I cannot specify port on this line? Should be able to, no? Simple Client doesn't have more arguments for this function...

WriteVerbose("Connected to ClearSCADA");
WriteVerbose(string.Format("Try to get ID for object '{0}'", ObjFullName));

string templateIdQuery = string.Format("SELECT ID, FULLNAME FROM CTEMPLATE WHERE FULLNAME='{0}'",
ObjFullName);
int templateId = -1;
using (var query = connection.Server.PrepareQuery(templateIdQuery, new QueryParseParameters()))
{
var results = query.ExecuteSync(new QueryExecuteParameters());
if (results.Rows.Count == 0)
{
throw new Exception("Did not find template");
}
WriteVerbose(string.Format("Query returned {0} rows", results.Rows.Count));

templateId = (int)results.Rows.ElementAt(0).Data[0];

WriteVerbose(string.Format("ID for '{0}' is {1}", ObjFullName, templateId));

}

// ... more code here...

}

 

Labels
  • Labels:
  • SCADA
  • ViewX
  • Tags:
  • english
Reply

Link copied. Please paste this link to share this article on your social media post.

  • All forum topics
  • Previous Topic
  • Next Topic

Accepted Solutions
BevanWeiss
Spock BevanWeiss
Spock

Posted: ‎2020-09-14 05:50 PM . Last Modified: ‎2020-09-14 07:07 PM

0 Likes
2
1706
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content

Link copied. Please paste this link to share this article on your social media post.

Posted: ‎2020-09-14 05:50 PM . Last Modified: ‎2020-09-14 07:07 PM

There is an overload for the Connection.Connect() which takes a ServerNode object.

 

So instead of

 

connection.Connect(_hostName);

 

try (untested)

 

var srvNode = new ServerNode(ConnectionType.Standard, _hostName, _portNum);
connection.Connect(srvNode);

 

 

You could inline them into just the one line if you wanted.. although there might be a few more tickboxes that you want to adjust on the ServerNode object (like whether to use Compression, what Timeout settings to use, etc).

 

EDIT: Replaced use of 'auto' (C++) for 'var' (C#)


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:
  • english
Reply

Link copied. Please paste this link to share this article on your social media post.

du5tin
Lt. Commander du5tin
Lt. Commander

Posted: ‎2020-09-14 06:36 PM . Last Modified: ‎2020-09-14 06:37 PM

In response to BevanWeiss
0 Likes
1
1701
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content

Link copied. Please paste this link to share this article on your social media post.

Posted: ‎2020-09-14 06:36 PM . Last Modified: ‎2020-09-14 06:37 PM

That is really close! I ended up having to tweak a little bit for my app (the auto keyword didn't work for me):

 

 

using (Connection connection = new Connection(_systemName))
{
    ServerNode srvNode = new ServerNode(ConnectionType.Standard, _hostName, Int32.Parse(_portNumber));
    connection.Connect(srvNode);

// code here...

}

 


Thanks Bevan!

See Answer In Context

  • Tags:
  • english
Reply

Link copied. Please paste this link to share this article on your social media post.

Replies 3
BevanWeiss
Spock BevanWeiss
Spock

Posted: ‎2020-09-14 05:50 PM . Last Modified: ‎2020-09-14 07:07 PM

0 Likes
2
1707
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content

Link copied. Please paste this link to share this article on your social media post.

Posted: ‎2020-09-14 05:50 PM . Last Modified: ‎2020-09-14 07:07 PM

There is an overload for the Connection.Connect() which takes a ServerNode object.

 

So instead of

 

connection.Connect(_hostName);

 

try (untested)

 

var srvNode = new ServerNode(ConnectionType.Standard, _hostName, _portNum);
connection.Connect(srvNode);

 

 

You could inline them into just the one line if you wanted.. although there might be a few more tickboxes that you want to adjust on the ServerNode object (like whether to use Compression, what Timeout settings to use, etc).

 

EDIT: Replaced use of 'auto' (C++) for 'var' (C#)


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:
  • english
Reply

Link copied. Please paste this link to share this article on your social media post.

du5tin
Lt. Commander du5tin
Lt. Commander

Posted: ‎2020-09-14 06:36 PM . Last Modified: ‎2020-09-14 06:37 PM

In response to BevanWeiss
0 Likes
1
1702
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content

Link copied. Please paste this link to share this article on your social media post.

Posted: ‎2020-09-14 06:36 PM . Last Modified: ‎2020-09-14 06:37 PM

That is really close! I ended up having to tweak a little bit for my app (the auto keyword didn't work for me):

 

 

using (Connection connection = new Connection(_systemName))
{
    ServerNode srvNode = new ServerNode(ConnectionType.Standard, _hostName, Int32.Parse(_portNumber));
    connection.Connect(srvNode);

// code here...

}

 


Thanks Bevan!

  • Tags:
  • english
Reply

Link copied. Please paste this link to share this article on your social media post.

BevanWeiss
Spock BevanWeiss
Spock

Posted: ‎2020-09-14 07:06 PM

In response to du5tin
0 Likes
0
1695
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Email to a Friend
  • Report Inappropriate Content

Link copied. Please paste this link to share this article on your social media post.

Posted: ‎2020-09-14 07:06 PM

Sorry on the 'auto'.. that's me slipping between languages too fluidly.

In C# it should have been 'var'

 

It just means, don't make me explicitly list the type here, deduce it from the right hand value.

i.e. = new ServerNode() clearly returns a ServerNode, so I shouldn't have to write ServerNode node = new ServerNode()

 

The compiler can work that out, so (in C++) I could just write:

auto node = new ServerNode()

and in C#

var node = new ServerNode()

 

I think I prefer the auto keyword myself, but I believe that C# used it elsewhere for a different meaning 


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:
  • english
Reply

Link copied. Please paste this link to share this article on your social media post.

Preview Exit Preview

never-displayed

You must be signed in to add attachments

never-displayed

 
To The Top!

Forums

  • APC UPS Data Center Backup Solutions
  • EcoStruxure IT
  • EcoStruxure Geo SCADA Expert
  • Metering & Power Quality
  • Schneider Electric Wiser

Knowledge Center

Events & webinars

Ideas

Blogs

Get Started

  • Ask the Community
  • Community Guidelines
  • Community User Guide
  • How-To & Best Practice
  • Experts Leaderboard
  • Contact Support
Brand-Logo
Subscribing is a smart move!
You can subscribe to this board after you log in or create your free account.
Forum-Icon

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.

Register today for FREE

Register Now

Already have an account? Login

Terms & Conditions Privacy Notice Change your Cookie Settings © 2025 Schneider Electric

This is a heading

With achievable small steps, users progress and continually feel satisfaction in task accomplishment.

Usetiful Onboarding Checklist remembers the progress of every user, allowing them to take bite-sized journeys and continue where they left.

of