Archiv für den Monat: Dezember 2015

Rückblick 2015

Es stimmt wohl was die Leute immer sagen: “Mit dem Alter vergeht die Zeit schneller

Jedes Jahr verzieht spürbar schneller und ich bin schon der Typ Mensch, der sich am Ende des Jahres fragt, was denn alles passiert ist.

Privat ist das heuer ziemlich einfach: Habe im Sommer geheiratet, was einem natürlich am besten in Erinnerung bleibt.

Beruflich ist es eigentlich eine Kombination aus unterschiedlichen Eindrücken & Erlebnissen.
Was mich das ganze Jahr über bewegt hat, war der Release unseres ShopForProcess.com, der mich sehr positiv überrascht hat.

Mir war klar dass die Tools viele EPLAN Anwender benötigen, aber die Schwierigkeit ist die Anwender zu erreichen dass es solche Lösungen gibt. Die Rückmeldungen der Kunden waren sehr positiv. Darüber sind wir sehr glücklich, denn Qualität und die Leistung liegt uns sehr am Herzen.
In diesem Zusammenhang war es auch das 2. Jahr bei Firma ibKastl und ich bin sehr glücklich und dankbar über den tollen Arbeitsplatz.

Auch die neuen Kontakte und Kunden die man über das Jahr kennengelernt hat, haben mir sehr viel Freude bereitet. Viele Eindrücke erhalten und vielen EPLAN Anwendern helfen können. Diese Kombination macht einen als Consultant glücklich.

Freue mich sehr auf nächstes Jahr, beruflich wie privat. Aber das ist eh nicht so klar zu unterscheiden bzw. will ich nicht unterscheiden. Irgendwie ist es eigentlich ein Hobby für das man Geld bekommt, denn es macht so viel Spaß dass man sich gerne auch am Wochenende / Abend damit beschäftigt. Meiner Meinung nach ist das auch die beste Kombination aus persönlicher Sicht bzw. der Sicht der Kunden. Denn ich hoffe man bemerkt das Herzblut dass in unserer Arbeit, Leistungen und Produkten steckt.

Bin dankbar über jeden Menschen der mich dieses Jahr unterstützt, gefördert & geholfen hat, allem voran Michael Kastl, der Chef  und Freund meines Vertrauens.

Auch danke an die EPLAN Community, die immer wieder neue Ideen und Lösungen entwickelt.

In diesem Sinne einfach Danke!

Von |2015-12-19T21:47:15+01:002015-12-19|Allgemein|

XPrjActionProjectCreateBaseProject

Mit dieser inoffiziellen Action ist es möglich per Script aus einem Projekt ein Basisprojekt zu erstellen:

XPrjActionProjectCreateBaseProject

Parameter:

  • PROJECTfull name of the project
  • TARGETfull name of the target file
Von |2017-11-09T11:22:18+01:002015-12-15|EPLAN, EPLAN-Scripts|

EPLAN5 Konvertierung

Ach… auf meine alten P8 Tage darf ich noch EPLAN5 Projekte konvertieren… das freut mich.
Weniger freut es mich dass man im Scripting dann garnicht weiß, wo EPLAN die *.elk Datei erzeugt.

Komischerweise wird hier eine Großbuchstabenkonvertierung gemacht…

Darum hier mal die Routine wie man von einem EPLAN5 Projekt die Projektdatei von P8 ermittelt:

private string GetNewP8ProjectFromEplan5Import(string path)
{
	var diffWithFilename = path.Replace(ProjectsPath, ""); // FolderA\ProjectA.P

	FileInfo fi = new FileInfo(diffWithFilename);

	var diffWithoutFilename = diffWithFilename.Replace(fi.Name, "").ToUpper(); // FOLDERA\ProjectA.P
	var filename = fi.Name.Replace(".P", ".elk"); // ProjectA.elk			

	var project = Path.Combine(DestinationPath, diffWithoutFilename, filename);

	return project;
}

Danach kann z.B. das Projekt geöffnet, oder auch Actions ausgeführt werden.

Von |2017-11-09T11:22:18+01:002015-12-04|EPLAN, EPLAN-Scripts|

Script Debugging

Da schreibt man ein Buch… denkt man kennt sich einigermaßen aus mit dem Thema…
Und fast eineinhalb Jahre später, kann man Scripte debuggen und ich weiß von nichts… keiner schreibt was in dieses Internet. Dann mach ich das mal.

Seit EPLAN 2.4 ist es möglich Scripte zu debuggen. Es gibt kleine Einschränkungen aber man kann sich endlich die unendlichen MessageBoxen und Scripte Neulad-Szenarien sparen.

Es gibt, wie so oft, eine versteckte Einstellung welche gesetzt werden muss, damit das Debuggen funktioniert.
Ich habe es mal in das kostenlose Script ExtendedSettings gepackt.

Der Einstellungspfad ist folgender:
USER.EplanEplApiScriptLog.DebugScripts

 

In Visual Studio dann einfach:

  • Debug > Attach to Process…
  • EPLAN.exe auswählen
  • Attach

In EPLAN:

  • Script laden/ausführen

 

EPLAN kopiert beim Laden/Ausführen eines Scriptes das Script in den Temp-Ordner.
Der Dateiname ist wie folgt aufgebaut:
Debug_[Scriptname]

Leider können dadurch keine Haltepunkte in EPLAN gesetzt werden. Dies muss per Code geschehen:

System.Diagnostics.Debugger.Break();

Aber: Ist einmal ein Breakpoint gesetzt worden, kann auch wie gewohnt in Visual Studio ein Haltepunkt gesetzt werden.

Wichtig: Wenn die EPLAN-Einstellung bzgl. Script Debugging nicht gesetzt ist, müssen diese Haltepunkte entfernt werden.

Als Workaround habe ich folgendes herausgefunden:
Mit der Compiler-Abfrage auf #if DEBUG kann dieses Problem umgangen werden.

#if DEBUG
	System.Diagnostics.Debugger.Break(); 
#endif

 

Hier noch ein kleines Demo Video:

 

Ich bin ziemlich traurig darüber dass ich das jetzt erst erfahren habe. Ich sollte mal die Emails zählen welche ich die letzten 1,5 Jahre beantwortet habe mit der Frage “ist debugging bei Scripten nicht möglich?”.
Vielleicht denkt jeder der diesen Weg schon kannte einfach dass ich das schon wüsste…
Naja, ich bin einfach nur froh um diese Funktion!

Anbei noch mein Beispiel:

using System;
using System.Linq;
using System.Windows.Forms;
using Eplan.EplApi.Base;
using Eplan.EplApi.ApplicationFramework;
using Eplan.EplApi.Scripting;
using System.Windows.Forms;
using Eplan.EplApi.Scripting;

namespace ibKastl.Scripts.Test
{
    public class Test
    {
        [Start]
        public void Action()
        {
#if DEBUG
			System.Diagnostics.Debugger.Break();
#endif
			MessageBox.Show("Start walking...");

#if DEBUG
	        System.Diagnostics.Debug.WriteLine("Walk 500 miles...");
#endif
	        for (int i = 1; i <= 500; i++)
	        {
#if DEBUG
				System.Diagnostics.Debug.WriteLine("Mile {0}: still walking...", i); 
#endif
			}

	        MessageBox.Show("End");
        }
    }
}
Von |2017-11-09T11:22:18+01:002015-12-04|EPLAN, EPLAN-Scripts|
Nach oben