Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  EPLAN Electric P8
  Skript für Alle Sprachen PDF Export

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für EPLAN
  
Rittal und Eplan auf der „The Smarter E Europe“ 2024: Mit Industry Standards schneller zur All Electric Society, eine Pressemitteilung
Autor Thema:  Skript für Alle Sprachen PDF Export (997 / mal gelesen)
XerXes777
Mitglied
Techniker fuer Elektrotechnik


Sehen Sie sich das Profil von XerXes777 an!   Senden Sie eine Private Message an XerXes777  Schreiben Sie einen Gästebucheintrag für XerXes777

Beiträge: 12
Registriert: 10.06.2024

EPLAN P8 2024

erstellt am: 23. Jul. 2024 18:52    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo zusammen,

ich möchte mir gerne ein EPLAN Skript für einen festgelegten Ablauf schreiben.

Leider habe ich nur die kleinste EPLAN Lizenz und kann daher nur auf wenige Funktionen zurückgreifen. Alle Textfelder, die mehrsprachig sind, habe ich bereits komplett gefüllt.

Manuell gehe ich momentan wie folgt vor:

Im Menüband habe ich mir neue Funktionen angelegt mit der Befehlszeile: SetProjectLanguage /DISPLAY:en_US /VARIABLE:en_US
Darauf klicke ich, um die Sprache umzustellen.
Dann klicke ich auf Datei, Exportieren, als PDF und wähle mein Schema "PDF Export AF" aus.
Dies wiederhole ich für alle Sprachen.

Nun möchte ich mit einem Skript alle verfügbaren Sprachen als PDF exportieren. Da ich keine C# Kenntnisse habe, wollte ich fragen, ob ihr mir dabei helfen könnt.

Anbei findet ihr einen VBS Pseudo-Code als Ausgangspunkt:

Code:

' Array of languages
languages = Array("de_DE", "en_US", "es_ES", "fr_FR", "nl_NL", "sv_SE", "da_DK", "ru_RU", "zh_CN", "pl_PL", "pt_BR", "cs_CZ", "it_IT", "hu_HU", "pt_PT", "ko_KR", "ja_JP", "tr_TR", "ro_RO", "zh_TW")

' Loop through each language
For Each lang In languages
    ' Set project language
    SetProjectLanguage lang

    ' Export project as PDF
    ExportPDF
Next

Sub SetProjectLanguage(lang)
    Dim command
    command = "SetProjectLanguage /DISPLAY:" & lang & " /VARIABLE:" & lang
    ' Execute the command in EPLAN
    Call Shell("cmd.exe /c " & command, vbHide)
End Sub

Sub ExportPDF()
    Dim command
    ' Export the PDF using the existing schema without specifying a destination
    command = "Export /SCHEMA:'PDF Export AF'"
    ' Execute the command in EPLAN
    Call Shell("cmd.exe /c " & command, vbHide)
End Sub


EDIT:
Ich habe mich mal etwas selbst damit beschäftigt. Mein Export Schema fügt am ende des Dateinamens den Ländercode automatisch hinzu.

Hier ist mein Code als C#:

Code:

public class ExportToPDFAllLanguages
{
    // ************************* Parameter für das Skript *************************
//
   
// Name des Export-Schemas
private string exportSchemeName = "PDF Export AF";
   
// Sprachen, die durchlaufen werden sollen
private string[] languages =
{
            "de_DE", "en_US", "es_ES", "fr_FR", "nl_NL", "sv_SE", "da_DK",
            "ru_RU", "zh_CN", "pl_PL", "pt_BR", "cs_CZ", "it_IT", "hu_HU",
            "pt_PT", "ko_KR", "ja_JP", "tr_TR", "ro_RO", "zh_TW"
};

    [Start]
    public void Execute()
    {
        foreach (string language in languages)
        {
            // Sprache setzen
            SetLanguage(language);

            // Projekt als PDF exportieren
            ExportProjectToPDF();
        }

// Setze Sprache zurück auf Deutsch
        SetLanguage(languages[0]);
    }

    public void SetLanguage(string language)
    {
        // Erstellen des Kontexts für die Aktion
        ActionCallingContext setLanguageContext = new ActionCallingContext();
       
        // Setzen der Parameter
        setLanguageContext.AddParameter("DISPLAY", language);
        setLanguageContext.AddParameter("VARIABLE", language);

        // Ausführen der Aktion
        new CommandLineInterpreter().Execute("SetProjectLanguage", setLanguageContext);
    }

    public void ExportProjectToPDF()
    {
        // Erstellen des Kontexts für die Aktion
        ActionCallingContext exportContext = new ActionCallingContext();
       
        // Setzen der Parameter
        exportContext.AddParameter("TYPE", "PDFPROJECTSCHEME");
        exportContext.AddParameter("EXPORTSCHEME", exportSchemeName);

        // Ausführen der Aktion
        new CommandLineInterpreter().Execute("export", exportContext);
    }
}



[Diese Nachricht wurde von XerXes777 am 23. Jul. 2024 editiert.]

[Diese Nachricht wurde von XerXes777 am 26. Jul. 2024 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

audcar
Mitglied
Elektrotechniker

Sehen Sie sich das Profil von audcar an!   Senden Sie eine Private Message an audcar  Schreiben Sie einen Gästebucheintrag für audcar

Beiträge: 1
Registriert: 11.10.2024

erstellt am: 11. Okt. 2024 14:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für XerXes777 10 Unities + Antwort hilfreich

Hallo XerXes777

Ich interessiere mich sehr für die automatische Erstellung von PDFs in mehreren Sprachen, nur bin ich leider ein absoluter Anfänger was den Umgang mit Scripten angeht..
Könntest du vielleicht mal näher erklären wie genau das Funktioniert? Ich habe den Code in den Editor eingefügt und als .cs Datei gespeichert, aber ich kann diese nicht ausführen. Ebenso weiß ich nicht wo ich den als schema auswählen kann

LG
audcar

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP



Dipl.-Ing./M./BA/Techniker Elektro-Konstrukteur (m/w/d)

Die Hinterkopf GmbH ist ein inhabergeführtes, mittelständisches Unternehmen in zweiter Generation mit Sitz in Eislingen/Fils bei Göppingen (BaWü), das 1962 gegründet wurde. Das Familienunternehmen hat es bei der Entwicklung und Herstellung von großen Maschinen und Produktionslinien zur Herstellung und Dekoration zylindrischer Hohlkörper zur Weltmarkt- und Technologieführerschaft geschafft....

Anzeige ansehenFeste Anstellung
XerXes777
Mitglied
Techniker fuer Elektrotechnik


Sehen Sie sich das Profil von XerXes777 an!   Senden Sie eine Private Message an XerXes777  Schreiben Sie einen Gästebucheintrag für XerXes777

Beiträge: 12
Registriert: 10.06.2024

EPLAN P8 2024

erstellt am: 11. Okt. 2024 16:38    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


PDs.PDF_Export_AF.xml.zip

 
Voraussetzungen

Vorab ist es wichtig zu wissen, dass das von mir beschriebene Script keine Texte übersetzt.
Es greift auf die EPLAN API zu und automatisiert einen Ablauf, den du auch manuell durch Mausklicks durchführen könntest.

Hinweis zur Lizenz:
Ich selbst verwende die kleinste EPLAN-Lizenz:
Start -> Hilfe -> Lizenzumfang -> EPLAN Electric P8 Compact.

Diese Lizenz erlaubt zwar die grundlegende Nutzung von EPLAN, jedoch müssen alle mehrsprachigen Felder manuell übersetzt werden.
Das betrifft sämtliche Felder, angefangen bei den Strukturkennzeichen bis hin zu den Funktionstexten.
Für eine automatisierte Übersetzung bräuchtest du eine erweiterte Lizenz.


Vorbereitung der Zusatzfelder

Für die Exportvorlage benötigst du zwei spezifische Variablen, die in den Projekteigenschaften definiert werden.
Diese werden für den Dateinamen des PDFs verwendet:

    Zusatzfeld [100] (<10901 100> ):
    Hier trägst du für jede Sprache die entsprechende Artikelnummer ein. Diese Nummer fungiert später als Präfix im Dateinamen.

    Zusatzfeld [101] (<10901 101> ):
    In diesem Feld trägst du das Länderkürzel für jede Sprache ein, z.B.:
        Deutsch: de_DE
        Englisch: en_US
        Spanisch: es_ES

    Dieses Feld wird als Suffix im Dateinamen verwendet.

So fügst du die Felder hinzu:

    Gehe zu Start -> Information -> Eigenschaften.
    Nutze das Plus-Symbol, um die Felder <10901 100> und <10901 101> hinzuzufügen.
    Falls diese Felder bereits belegt sind, kannst du andere Felder aus der Liste der Zusatzfelder wählen.


Export-Einstellungen konfigurieren

Für den PDF-Export musst du ein neues Schema erstellen, das deinen Anforderungen entspricht. Dies sind die Schritte:

    Gehe zu Start -> Einstellungen -> Benutzer -> Schnittstellen -> PDF-Export.

    Klicke auf Neues Schema erstellen und benenne es z.B. "PDF Export AF".

    Allgemein:
    Im Reiter "Allgemein" findest du einige Texte, die in der Navigationsstruktur der PDF-Datei verwendet werden.
    Diese musst du manuell in die verschiedenen Sprachen übersetzen, da das System diese nicht automatisch übersetzt.

    Export-Verzeichnis:
    Im Reiter Export kannst du das Zielverzeichnis für den PDF-Export festlegen.

    Dateinamen-Formatierung:
    Unter Dateiname erzeugen wählst du die Option "2 Aus Eigenschaft" und klickst auf die … Schaltfläche.
    Hier erstellst du den Dateinamen aus den beiden vorher definierten Eigenschaften:
        Projekt (Zusatzfeld [100]) für die Artikelnummer (Präfix).
        Trennzeichen: _ (Unterstrich als Trennzeichen zwischen Präfix und Suffix).
        Projekt (Zusatzfeld [101]) für das Länderkürzel (Suffix).

Beispielhafter Dateiname:

Wenn du einen Artikel mit der Nummer 12345 und dem Länderkürzel de_DE exportierst, sieht der Dateiname wie folgt aus:
12345_de_DE.pdf

    Optional: Unterverzeichnis erstellen:
    Du kannst optional auch ein Unterverzeichnis erstellen lassen, das z.B. die Projektnummer enthält. Dafür musst du die Eigenschaft Projektnummer (<10013> ) pflegen:
        Gehe zu Start -> Information -> Eigenschaften.
        Füge die Projektnummer ein.

    Der Dateipfad könnte dann so aussehen:
    \Projektnummer\12345_de_DE.pdf


Beispiel-Export-Schema anhängen

Damit du nicht alles selbst konfigurieren musst, habe ich mein Export-Schema angehängt.
Dieses kannst du gerne importieren und verwenden.
Sollte es Probleme mit dem Import geben, stelle sicher,
dass die Variablen in deinem Projekt korrekt definiert sind und keine Konflikte mit bestehenden Exportvorlagen bestehen.


Testen der Funktion

Um zu überprüfen, ob alles funktioniert, empfehle ich,
das Script zunächst mit nur zwei Sprachen (Deutsch und Englisch) zu testen.
So kannst du schneller Ergebnisse sehen und eventuelle Fehler leichter beheben.
Lösche dafür alle anderen Sprachen aus dem Script und führe den Exportvorgang für diese beiden Sprachen durch.


Skript in die Benutzeroberfläche einbinden

Das Script kannst du in der Werkzeugleiste von EPLAN einbinden, sodass du es einfach per Mausklick starten kannst. Hier ist die Anleitung:

    Menüband anpassen:
    Gehe zu Werkzeuge -> Rechtsklick -> Menübänder anpassen.

    Neue Befehlsgruppe erstellen:
    Unter "Werkzeuge" erstelle eine neue Befehlsgruppe, z.B. "PDF export".

    Neuen Befehl erstellen:
    Klicke auf die neu erstellte Gruppe und nehme dir von links irgendein Befehl.

    Symbol und Name zuweisen:
    Wähle ein passendes Symbol und einen aussagekräftigen Namen für den Befehl.

    Befehlszeile einfügen:
    Gib in der Befehlszeile Folgendes ein:
    ExecuteScript /ScriptFile:"C:\Pfad\ExportToPDF_de_en.cs"

    Hinweis: Passe den Pfad und den Scriptnamen an deine eigenen Gegebenheiten an!
    Hinweis2: Du musst das Projekt links im Navigator angeklickt haben, bevor du den PDF-Export startest.
              Sonst wird evtl. nur eine Seite exportiert.

Zusammenfassung und Schlusswort

Mit diesen Schritten solltest du in der Lage sein,
einen mehrsprachigen PDF-Export in EPLAN zu konfigurieren und mithilfe eines Skripts zu automatisieren.
Wenn du noch Fragen hast oder Hilfe beim Import des Export-Schemas benötigst, stehe ich gerne zur Verfügung.

[Diese Nachricht wurde von XerXes777 am 11. Okt. 2024 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2025 CAD.de | Impressum | Datenschutz