2 Replies Latest reply on Oct 18, 2012 2:08 AM by inform2prabhat

    Question about changing input and output tags of ACE Module



      Sorry about  amateurish question but is it possible to change input and output tags of ACE Mosule via ACE Manager ot Managment Tools? I'm not talking about applying different contexts, but changing input and output tags.

      Thank you in advance!

        • Re: Question about changing input and output tags of ACE Module

          Hello Varban,


          To my knowledge what you are asking for isn't possible. You've recently raised a similar question about dynamic creation of PI Points and I am wondering about what you would like to achieve.


          PI ACE is an easy to use product that allows users with basic programming knowledge creating their own calculation modules. At the same time it's very flexible. You can do almost everything within your PI ACE code. You can use PI Data Access products like PI SDK, AF SDK, PI OLEDB, PI OLEDB Enterprise to access your PI System data directly. You can use Windows, .NET Framework and 3rd party libraries of any kind. This said you have all the flexibility to e.g. just use the scheduling (clock or event driven) functionality of PI ACE and to do whatever you want within your PI ACE code.  


          From what I understand, you would like to assign input and output tags during runtime. How about storing this information in a place where you can easily modify it, from what you can retrieve and evaluate information during runtime? You can use PI Module Database properties or PI AF attributes to store information. You can use e.g. comma separated or text files, a table in a relational database, Windows Registry or a web service. This is just to give you some ideas and far from being a complete list. Whatever solution you chose, please think about security, accessibility and more that impacts the reliability and robustness of your solution.



            • Re: Question about changing input and output tags of ACE Module

              Hello Varban,


              I agree with above comment of Greg on the use of PI ACE. The best way for now is to use the MDB to store input/output tag aliases and change them whenever needed.


              You may or may not require to restart the context based on the way you have initialize the modules on your code.


              Whatever way you use to create the an calculation in ACE, all the information will get stored in the %OSI/ACEClassLibraries location of MDB.


              Hope that helps.