# CODESYS 3: Enum Name (string) in Visu anzeigen



## stseme04 (23 Oktober 2017)

Hallo,

ich habe eine Hersteller Lib mit verschiedenen Bausteinen die als Diagnosemeldungen Enumerationen ausspucken. 
Jetzt würde ich gerne von dem daraus resultierenden Zahlenwert wieder auf den Klartext zurückschließen und diesen in meiner Visualisierung anzeigen lassen.

Wenn ich einfach die Variable eDiagnosemeldung: eOEM_DiagnoseEnum in ein Textfeld mit %s im Text angebe, erscheint jedoch der dazugehörige Integer Wert. 

Leider stehe ich gerade etwas auf dem Schlauch und komme nicht weiter. __Varinfo liefert mir leider nur den Namen des Enums zurück. Eine eigene Funktion mit einer hardgecodeten Auflösung von int zu string würde ich gerne vermeiden da ich keine Lust habe diese zu Pflegen wenn sich in der Lib etwas ändert und neue Meldungen hinzukommen / auf einmal anders zugewiesen werden. 

Ich hoffe jemand hat eine Idee, bin eigentlich davon ausgegangen das es "total einfach" sein müsste...


----------



## oliver.tonn (23 Oktober 2017)

Das geht relativ einfach. Du legst eine Textliste an und trägst dort die Texte aus dem ENUM ein und als ID die entsprechende Nummer aus dem ENUM. In der Visu platzierst Du ein Rechteck und trägst dort unter "Dynamische Texte" den Namen der Textliste und die Variable die den Index enthält ein, fertig.


----------



## stseme04 (23 Oktober 2017)

oliver.tonn schrieb:


> Das geht relativ einfach. Du legst eine Textliste an und trägst dort die Texte aus dem ENUM ein und als ID die entsprechende Nummer aus dem ENUM. In der Visu platzierst Du ein Rechteck und trägst dort unter "Dynamische Texte" den Namen der Textliste und die Variable die den Index enthält ein, fertig.



Danke für die schnelle Antwort!

Die Textliste kann man dann automatisch aus dem Enum erzeugen lassen? Oder muss ich es trotzdem aus der Lib Definition abtippen?


----------



## oliver.tonn (23 Oktober 2017)

So leid wie es mir tut, aber da ist Handarbeit gefragt, da musst Du leider selber tippen.


----------



## stseme04 (24 Oktober 2017)

Okay, vielen Dank nochmals! 
Dann werd ich überlegen ob ich nicht doch eine Funktion schreibe, den (Pflege-) Aufwand hat man ja dann in beiden Fällen.


----------

