Blog

>Blog>

EPLAN Data Portal API

Durch Zufall bin ich auf diese API Dokumentation für das Data Portal aufmerksam gemacht worden.
Meines Wissens ist diese Nirgendwo verlinkt, darum mach ich das hier.

Es handelt sich um eine schöne REST API mit netten Funktionen. Habe noch keinen Anwendungsfall dafür, aber immer schön wenn es sowas gibt!

Falls Jemand hier schon mal was programmiert hat, und es gerne bereitstellen möchte… gerne an mich schicken. Dann poste ich es hier :^)

By |2019-06-12T10:55:09+02:002019-06-12|EPLAN|

Festival Holledau App – 1.3

Und wieder ein Update das die Musikherzen höher schlagen lässt:

  • Prost: Krüge Archiv hinzugefügt
  • Zelt wiederfinden: Standorte speichern & teilen*
  • Musik auf die Ohren: Spotify Player Integration
  • Fit For Festival: App ist schlanker und schneller

*Deine Daten sind sicher: Es werden / wurden zu keiner Zeit personenbezogene Daten irgendwo gespeichert

 

By |2019-05-09T20:00:57+02:002019-05-09|Coding, Festival Holledau App, Xamarin|

Navigator aktualisieren

Um Navigatoren in EPLAN zu aktualisieren (wie F5 drücken), könnt ihr folgenden Action verwenden:

GfDlgMgrActionReload /DialogName:<Name des Dialogs>

Der Seitennavigator hat hier eine eigene Methode, da hier noch der Filter mit dran hängt:

EventParameterString eventParameterString = new EventParameterString(); 
eventParameterString.String = "RefreshPageFilter"; 
new EventManager().Send("RefreshPageFilter", eventParameterString);
By |2019-04-10T13:12:11+02:002019-04-11|EPLAN, EPLAN-Scripts|

API-Addins & Scripte auslesen

Im CAD.de-Forum gab es die Frage wie man auslesen kann welche API-Addins und Scripte geladen sind. Ich habe das mal ausprogrammiert:

using System.Windows.Forms;
using Eplan.EplApi.Base;
using Eplan.EplApi.Scripting;
using System.Collections.Generic;
using System.Collections.Specialized;

public class ReadApiAddinsAndScripts
{
  [Start]
  public void Action()
  {
    // API addins
    List<string> apiAddins = GetApiAddins();
    string apiAddinsText = string.Join("\n", apiAddins);
    MessageBox.Show(apiAddinsText, "ApiAddins", MessageBoxButtons.OK, MessageBoxIcon.Information);

    // scripts
    List<string> scripts = GetScripts();
    string scriptsText = string.Join("\n", scripts);
    MessageBox.Show(scriptsText, "Scripts", MessageBoxButtons.OK, MessageBoxIcon.Information);
  }

  public List<string> GetApiAddins()
  {
    List<string> list = new List<string>();
    Settings settings = new Settings();
    SettingNode settingsNode = new SettingNode("STATION.EplanEplApiModule.Module");
    StringCollection nodes = new StringCollection();
    settingsNode.GetListOfNodes(ref nodes, false);
    foreach (string node in nodes)
    {
      SettingNode subNode = settingsNode.GetSubNode(node);
      string name = subNode.GetNodePath() + ".AssemblyName";
      var text = settings.GetStringSetting(name, 0);
      list.Add(text);
    }
    return list;
  }

  private List<string> GetScripts()
  {
    List<string> list = new List<string>();
    Settings settings = new Settings();
    string settingsPath = "STATION.EplanEplApiScriptGui.Scripts";
    var count = settings.GetCountOfValues(settingsPath);
    for (var index = 0; index < count; index++)
    {
      var text = settings.GetStringSetting(settingsPath, index);
      list.Add(text);
    }
    return list;
  }
}
By |2019-04-01T11:15:12+02:002019-04-01|EPLAN, EPLAN-API, EPLAN-Scripts|