Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  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
  
Eplan Network 2024 Ganz in Ihrer Nähe: Hannover, Veranstaltung am 24.10.2024
Autor Thema:  Skript für Alle Sprachen PDF Export (85 / 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: 8
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

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)2024 CAD.de | Impressum | Datenschutz