Welcome to our new forum
All users of the legacy CODESYS Forums, please create a new account at account.codesys.com. But make sure to use the same E-Mail address as in the old Forum. Then your posts will be matched. Close

Problem mit Array-Index-Variable in Webvisu auf WAGO 841

e-pappy
2014-09-16
2014-12-08
  • e-pappy - 2014-09-16

    Hallo zusammen...

    hab mal wieder ein Problem, wo ich etwas Hilfe benötige.
    Hab mir einen neuen Datentyp folgendermaßen deklariert:

    TYPE typChangeLog :
    STRUCT
       User      : ARRAY [0..63] OF STRING;
       Zeit      : ARRAY [0..63] OF DT;
       Wertname   : ARRAY [0..63] OF STRING;
       Wert_alt   : ARRAY [0..63] OF STRING;
       Wert_neu   : ARRAY [0..63] OF STRING;
    END_STRUCT
    END_TYPE
    

    Und diese Variable entsprechend deklariert

    VAR
            Logdatei   : typChangeLog;
    END_VAR
    

    Nun habe ich mir 10 Zeilen in der Visu angelegt, wo ich pro Zeile alle 5 Datensätze visualisiere.
    Also beim Visuelement unter Text -> Inhalt und unter Variable -> Textausgabe
    nächste Zeile dann , dann usw.
    und dasselbe für alle anderen anzuzeigenden Felder.

    Die 0, 1, 2, etc. in dem Array-Index habe ich jetzt aber durch eine Variable ersetzt, damit man über entsprechende Buttons diese Liste scrollen kann.
    Ich hoffe ihr versteht wie ich das meine.

    Also steht da jetzt im Grunde bei Textausgabe in der Visumaske ->
    Denn mit jedem Klick auf einen Button wird u um 1 erhöht, sodass man durch die Arrays scrollen kann.

    Und genau da hab ich jetzt ein Problem mit der WebVisu, weil die mir, sobald ich das u in das Indexfeld schreibe einfach mal gar nichts mehr anzeigt!?
    In der Target-Visu funktioniert das tadellos, nur in der Webvisu bleibt das Feld nun komplett leer.
    Schreibe ich wieder 0 oder 5 oder 23 in das Index-Feld steht wieder der entsprechende Text dort, der eigentlich auch drin stehen sollte!

    Warum funktioniert das in der Webvisu nicht???

    Danke

     
  • baschdi - 2014-09-18

    mach nen punkt ".Logdatei.User[u]" davor. dann könnte es klappen.
    hilft relativ häufig bei differenzen zwischen web- und target-visu.

     
  • Anonymous - 2014-12-08

    Originally created by: 61131

    (Etwas spät, aber für Interessierte Forenleser folgender Hinweis aus dem VISU-Handbuch)

    Zitat:
    Variablenzugriffe Dynamische Indizierung innerhalb eines Arrays „Array1[Index].a“ ist nicht möglich, „Array1[10].a“ dagegen schon. Die dynamische Indizierung wird ab CoDeSys 3.0 realisiert werden.
    Platzhalterersetzungen die im Platzhalter einen Ausdruck enthalten
    Platzhalter: $abc$ + 5
    Ersetzung: PLC_PRG.n + 500
    -> würde PLC_PRG.n + 500 + 5 ergeben, ist allerdings innerhalb der Web-Visualisierung nicht möglich.
    Diese Funktion wird ab CoDeSys 3.0 realisiert werden.
    Pointervariablen Pointervariablen wie PLC_PRG.pdw2^ können nicht "gemonitort" werden.
    Diese Funktion wird ab CoDeSys 3.0 realisiert werden.

     

Log in to post a comment.