Mass creation of Tags and Alarms in xml

To be fair, i will take your point in the right spirit. I agree that, it’s not possible to engineer a decent Ignition project without Jython scripting skills. But writing Jython script to import 100,000+ tags and alarms is NOT acceptable for me. This will be a disaster. I will never do that. There must be better ways to convert a csv file into Ignition compatible xml file.

1 Like

Its impossible if you dont try. The existing Ignition documentation provides everything an SI needs to accomplish the conversion. Once you dive into and succeed then this becomes an imporant part of your toolbag. A toolbag that gives you an advantage amongst your peers.

3 Likes

ok. I wil try and let you know. Thanks :slight_smile:

1 Like

Script for importing 100 000 tags or script for importing 10 tags will be almost, if not the same…

3 Likes

Compared to the top 3 SCADA vendors, one key thing missing in Ignition camp is, the support base has not spread beyond the primary IA domain. It’s easy to find tools, tips and tricks for WW, FTV, WinCC in the internet. We can find a lot of tutorials, code snippets and project ideas from their user base and freelancers in social media. I am sure, some of them are hired by the respective vendor’s marketing division.

There are excellent freelance tutors and programmers with a huge number of followers in Youtube, Udemy and social media. IA can hire few of them to spread the Ignition ecosystem.

1 Like

I found this technique very interesting for converting large amount of Tags and Alarms into Ignition compatible xml file. I found this idea in youtube just few hours back and still experimenting. I thought, i will post it here immediately so that you can also try and share your experience. Cheers :slight_smile:

  1. First, we have to create an XML schema xsd file. Schema is our template.
  2. In Ignition, basically we can create UDTs and 5 different types of tags.
  3. Create some sample tags (or UDTs) under each type, export as xml and save it as .xsd schema file . Let’s say, we have 6 sample schemas.
  4. Classify your csv list of tags and alarms which needs to be converted as xml, into 6 types as per your 6 schemas. Save it into 6 Excel sheets.
  5. Now, you have to just map your Tags and Alarms in Excel sheets with the respective schema.
  6. Watch these videos and dig deeper.

Convert Excel Spreadsheet data to XML

Converting XLS to XML

Converting data from Excel to XML Template

Import & export XML data, XML maps and schema in exce

2 Likes

I am interested in seeing how this compares to this forum. Other than plcs.net, do you have links to these freelance tutors?

These are some of my favourites:

Maximilian Schwarzmüller
https://www.udemy.com/react-the-complete-guide-incl-redux/

Jose Portilla
https://www.udemy.com/python-for-data-science-and-machine-learning-bootcamp/

I suggest, IA can invite them to dig into Ignition and roll out their own training courses, in their own style. They have a huge following and this will help Ignition spread. They are looking for opportunities.

1 Like

If you are asking about freelance tutors and private training institutes for WW, FTV, WinCC etc, just search plc SCADA training in Youtube. You will find a lot worldwide. I wish, Ignition too spreads like this.

I think you missed my favourite topic USD 99/- license. May be you will find it interesting.

I went to youtube and searched that terms, and I didn’t find anything overly helpful. It seems like IA is much farther ahead, mainly because of Inductive University. Just my opinion however.

I saw the discussion about the $99 license, I chose not to comment.

As for importing tags, writing a csv parser that adds the tags to the tag engine should be relatively easy.

3 Likes

yeah, I developed a window that has the properties of tags I normally use in tables. I also can import from csv into those tables if it is a large amount of tags. I then have a script that will run thru the dataset and create all of the associated tags. Took a few hours to setup but has saved me many more. Im not sure how newer versions of wonderware work but fooling with that crappy csv file that would never import right was painful compared to using the tag creating and editing methods available via scripting.

2 Likes

I found a lot of interesting free online tools to generate XML to XSD and XSD to XML:

https://www.freeformatter.com/xsd-generator.html#ad-output

http://xmlgrid.net/genXml.html

https://devutilsonline.com/xsd-xml/generate-xsd-from-xml

Introduction to XML Schema Development with Eclipse

I know I’m late to this post, but it came up as I’m searching for tips and tricks to exporting and importing tags. I am kind of disappointed in some of the responses to the original author. What he’s asking seems perfectly reasonable. A lot of Automation Engineers and SI’s are not software developers. And we still love Ignition! And we can still be successful in Ignition and work really hard to learn and write scripts to solve problems as needed, but it doesn’t come easy.

I’m about to go down a huge, XML, XSD, JSON and scripting hole in order to solve this problem. And I do believe it would be nice if people that have done this effortlessly would share the knowledge. There isn’t a day that goes by that I don’t have to google an LED or a question about something I run into. I’ll figure it out, probably tomorrow. But, I have lots to do:) I’m a long time Ignition supporter!

3 Likes

Don’t be intimidated by scripting. Python is easier than complex Excel formulas (which I’ve also worked plenty with). See system.tag.configure. It’s not hard to figure out (there are examples there) and it is very flexible–more useful; and less time consuming than Excel based solutions I’ve used in other SCADA systems. You can also search this forum for system.tag.configure.

Play around with it in script console until you have what you want. If you get stuck, start a new post here showing what you’ve done, what you got, and what you expected to get and chances are people will jump in to help you figure out anything you’re stuck with. The community here is definitely one of the best going in the automation world. Show us what you want to do and there’s a good chance you’ll get help. The more detail you give in your question the better the answers will be.

I am also pretty disappointed in this feature, and I am relatively comfortable with scripting. Ignition is generally quite intuitive for new SCADA engineers, and this is one area that is not intuitive. For a new project, the tag creation tools are great, but in situations like migrating a tag database from one platform to another – this can be done in like 15 minutes with CSV exports, but with Ignition I need to build my own tools to transfer tag data from CSV format to XML or some other custom approach?

You still can import CSV tag exports into every Ignition version, including Ignition 8 - you’ll have to manipulate them into the appropriate format, but the same is true of any other import tool.

A genuine question - how would you like the experience to be better? Moving away from XML (or JSON, in Ignition 8+) for Ignition tag import/export isn’t feasible, because the CSV format simply doesn’t support the complexity of Ignition tags. If you’ve got specific ideas, though, we’re happy to hear them - we do genuinely want to make the experience as good as possible.

I’ve seen that you can import CSV, but I don’t know what the appropriate format is since I cannot create a CSV export. Maybe just obtaining an example CSV export is all I need.

I understand why the XML/JSON format is necessary to support the structure of the Ignition tag database – the way tags are handled in Ignition is a big improvement over platforms with “simpler” tag databases, like iFix or InTouch. There a serious limitations with having the tags all lumped together like that, but it does make it so much easier to go through the tag exports and modify as needed.

I appreciate the complexity and flexibility of the Ignition tag database, but some projects don’t require that level of organization and detail (and usually these are ones that are more budget constrained, or dealing with legacy tag structures – i.e. lack of structure), so it’d be convenient if there was some sort of bridge between an unorganized tag import/export and the current method. Where you could do the basic CSV export/import if you wanted, and it doesn’t have the full capability of the XML/JSON method, but it allows you to get the tags into the project easily and you can go from there.

Or otherwise, developing a tool in Ignition that aids the import/export process, rather than requiring the user to develop custom scripts that automate the tag creation process. It seems like most people replying to this thread have their own specific way of doing this, so it’d be great if something like that was just built-in. It seems to be the kind of tribal knowledge that I usually see among the older platforms that I’m not accustomed to seeing with Ignition (I will admit, I am spoiled. With any other platform, I would just accept the futility of it all – the fact that I reached a developer within minutes of a spontaneous frustrated forum post is a great illustration of how far ahead of the pack Ignition is).

1 Like

Consider installing v7.9.13 in a VM just to play with this and get your sample CSV.

1 Like

Another user has already taken the time to do this for you.

2 Likes

I don’t think that there is such a ‘tool’ in any (or for any) of the existing SCADA systems out there…
Yes, you can export tags to the CSV but only to import them in the same SCADA software you exported them from.
How you would import the tags from iFix to Wincc for example or vise versa…
The ‘beauty’ of importing tags with python scripting in the Ignition is, that CSV format doesn’t matter.
With 20 (10 if you don’t have alarms) lines of code in the Script console you/I can import tags from any other software out here. From any CSV… or from multi CSVs at once.
Show me any other existing SCADA software out there that can do that.
Don’t be afraid of scripting. 10-15 minutes of scripting for importing ten thousands of tags… and next time is far less, because you just make corrections to the existing script…