People ask me what the difference is between API and Scripts in Eplan P8.
At the core, both offer you a way to customize your Eplan environment by adding your own “Actions”.
Actions are the building block of most functions in Eplan P8. Even built-in commands, such as wire numbering, are really Actions that get called by a menu or a Toolbar. Having the possibility to create your own Action is thus a great way to automate some of the repetitive tasks in your electrical design workflow.
So, if both API and Scripts can be used to create custom Actions, what is then the difference between the two ?
Both are based on the .NET Framework, so you can actually use any .NET compatible language for their development. I use C# and my language of choice.
Scripts don’t require a special license to be used. You can edit those scripts in a text editor, and load them in Eplan P8. What you can do with them is limited because you can only access classes from the following .NET assemblies:
Scripts are compiled on the fly by Eplan P8 when you load them, so the available assemblies are fixed and, according to the documentation, There is no way to reference additional assemblies (.Net framework, EPLAN or other providers)! Scripts allow you to set properties to selected objects, or to automate a series of repetitive steps. What you can do from the Graphical Editor (GED), you can do from a script. They could be assimilated to macros in other software.
On the other hand, API (Application Programming Interface), are full fledged .NET assemblies that you compile using your choice editor/IDE (I use Visual Studio 2010). While this allows you to access any Assembly in either the .NET Framework or Eplan’s own API Assemblies, it does require an additional license (please contact your local Eplan office for details).
API is really the way to go if you need to manipulate the Eplan Data Model. For example, you could iterate over all the parts in a project, filter them, process them in any way you want and finally write them to a third party MRP/ERP system through a database connection. Or you might want to add parts automatically to every terminal strip in your project. The possibilities are virtually endless.
(Shameless plug following)
As a freelance Eplan consultant and API programmer, I can help my customers by developing custom Actions to help them automating their design workflow.
Please see my contacts page for details