| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für EPLAN |
| |
| Eplan Cable proD: Kabelwege in 3D planen, eine Pressemitteilung
|
Autor
|
Thema: Script --> Auswahl eines Seienmakros (2991 / mal gelesen)
|
lin23 Mitglied Elektrotechnikerm.
Beiträge: 6 Registriert: 15.01.2015 EPlan P8 V2.5
|
erstellt am: 01. Feb. 2016 21:02 <-- editieren / zitieren --> Unities abgeben:
Hallo ist es möglich über ein Script Seitenmakros auszuwählen!? Wollte mir ein popup Fenster bauen mit der jeweiligen möglichkeit, ein Seitenmakro z.B. Einspeisung Variante 1,2,3 auswählen zu können.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
AlFu Mitglied Elektroniker / Technischer Zeichner
Beiträge: 155 Registriert: 02.02.2015 Windows 10 Pro, 64 Bit (Uiuiui... :rolleyes:) Intel i7-7700 3,6 GHz 16 GB RAM 2x Matrox M9120 PCIe x16, 1024 MB 4x 24"-Monitor EPLAN Electric P8, Version 2.7 HF5
|
erstellt am: 02. Feb. 2016 07:05 <-- editieren / zitieren --> Unities abgeben: Nur für lin23
Also möglich ist das auf jeden Fall. Allerdings darfst du mich nicht frage, wie das geht. Ich hab nämlich vom scripten keine Ahnung. Allerdings habe ich durch die Einrichtung von P8 viel mit unserem Programmierer zu tun. Hast du denn schon in erfahrung gebracht, das Makros XML-Dateien sind? Die kannst du über ein Script öffnen, Inhalte kopieren, über "Suchen und Ersetzen" manipulieren und einfügen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cad_hans Ehrenmitglied V.I.P. h.c. Techn. Angestellter
Beiträge: 2188 Registriert: 25.08.2003 ruplan4.70 eplan5.x P8 V1.9 bis V2.7
|
erstellt am: 02. Feb. 2016 07:43 <-- editieren / zitieren --> Unities abgeben: Nur für lin23
hallo, ja das geht. ich hab mit die Auswahl der seitenmakros allerdings in VBA programmiert. da tu ich mir leichter. aus vba schreib ich die namen der makros in eine Textdatei. diese dient dann als quelle für dem Import via c# ins eplan. einziges Manko derzeit ist noch die abfrage und Bestätigung in eplan beim Import jeder seite. der Vorteil ist, dass ich alles mit bordmitteln von eplan ohne zusätzliche module oder kosten realisieren konnte. lizenzumfang ist derzeit eplan professional. ------------------ ruplan4.61 ruplan4.70 eplan5.x P8 V1.9 HF1 Build 3297 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Mr Burns Mitglied
Beiträge: 183 Registriert: 22.11.2010 Eplan 5.7 & P8 2.5 HF4 Professional, Menüumfang "Experte"
|
erstellt am: 02. Feb. 2016 10:04 <-- editieren / zitieren --> Unities abgeben: Nur für lin23
Hallo cad_hans, Sowas suche ich schon lange. Ich habe grundsätzlich auch VBA-Code, der mir bei der Auswahl der Seitenmakros hilft bzw. mir diese in einen temporären Ordner kopiert. Nun ziehe ich aber nacheinander alle diese emp's per Drag'n'Drop ins Projekt rein. Dies ist etwas aufwändig, weil es durchschnittlich so gegen 30 Makros sind und ich jedesmal noch die Dialoge bestätigen muss. Aber du bist ja noch einen Schritt weiter, da du via c# importierst? Verstehe ich das richtig? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cad_hans Ehrenmitglied V.I.P. h.c. Techn. Angestellter
Beiträge: 2188 Registriert: 25.08.2003 ruplan4.70 eplan5.x P8 V1.9 bis V2.7
|
erstellt am: 02. Feb. 2016 10:20 <-- editieren / zitieren --> Unities abgeben: Nur für lin23
hallo, kurz gesagt ja. so eine schleife wurde schon mal gepostet, ich verrat also nichts neues. mein Skript anbei: using System; using System.IO; using Eplan.EplApi.Base; using Eplan.EplApi.Scripting; class Test { [Start] // [DeclareAction("Projektkonfigurator")] public static void Main() { CommandLineInterpreter eBefehlszeile = new CommandLineInterpreter(); ActionCallingContext eParameter = new ActionCallingContext(); eParameter.AddParameter("PAGENAME", "&ALLG/1"); eParameter.AddParameter("FORMAT", "XDLTxtImporterExporter"); eParameter.AddParameter("X", "0"); eParameter.AddParameter("Y", "0"); eBefehlszeile.Execute("edit", eParameter); string strScripts = PathMap.SubstitutePath("$(MD_SCRIPTS)"); string sourcepath = strScripts+@"\Plankonfigurator\Seitenliste.txt"; // string sourcepath = @"W:\EPLAN_DATA\Eplan_P8\Skripte\xxxxxx_GmbH\Plankonfigurator\Seitenliste.txt"; string macropath = @"W:\EPLAN_DATA\Eplan_P8\Makros\Seitenmakros\"; try { // if (File.Exists(path)) // { // File.Delete(path); // } //using (StreamWriter sw = new StreamWriter(path)) //{ // sw.WriteLine("This"); // sw.WriteLine("is some text"); // sw.WriteLine("to test"); // sw.WriteLine("Reading"); //} using (StreamReader sr = new StreamReader(sourcepath)) { while (sr.Peek() >= 0) { string strFilename = sr.ReadLine(); string fullname = macropath+strFilename; ActionCallingContext oAcc = new ActionCallingContext(); CommandLineInterpreter oCLI = new CommandLineInterpreter(); oAcc.AddParameter("filename", fullname); oCLI.Execute("XMInsertPageMacro", oAcc); // Console.WriteLine(sr.ReadLine()); } } } catch (Exception e) { Console.WriteLine("The process failed: {0}", e.ToString()); } } } ------------------ ruplan4.61 ruplan4.70 eplan5.x P8 V1.9 HF1 Build 3297
[Diese Nachricht wurde von cad_hans am 02. Feb. 2016 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ePlanVirus Mitglied CAD Konstrukteur
Beiträge: 9 Registriert: 23.08.2018
|
erstellt am: 06. Aug. 2019 20:41 <-- editieren / zitieren --> Unities abgeben: Nur für lin23
Hallo cad-hans, würde die Auswahl der Seitenmakros auch gerne über eine Text Datei oder Excel vorwählen und anschließend per Script in ePlan einfügen, kannst du mir einen Tipp geben (Wie die Text Datei aussehen muss). Vielen Dank im Voraus.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cad_hans Ehrenmitglied V.I.P. h.c. Techn. Angestellter
Beiträge: 2188 Registriert: 25.08.2003 ruplan4.70 eplan5.x P8 V1.9 bis V2.7
|
erstellt am: 07. Aug. 2019 08:10 <-- editieren / zitieren --> Unities abgeben: Nur für lin23
hallo, das ist eine ganz normale Textdatei in der pro zeile ein dateiname eines seitenmakros steht. ist eigentlich eh im script ersichtlich. ------------------ ruplan4.70 eplan5.x P8 V1.9 bis V2.7 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |