Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 5 von 5

Thema: Interne Variable per VBS aus Faceplate beschreiben

  1. #1
    Registriert seit
    09.01.2012
    Beiträge
    58
    Danke
    19
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Huhu nochmal,

    der nächste Stolperstein den ich gefunden habe ist, dass ich es nicht schaffe aus einem Faceplate heraus eine einfache interne Variable zu beschreiben.

    Ich habe in meinem Faceplate einen Button, der bei Klick dieses tun soll. Das VBScript in dem Button:
    Code:
    Sub OnClick(Byval Item)                     
    	SmartTags("Testvariable").Value = "Test"
    End Sub
    "Testvariable" ist im Variablenhaushalt als 8-Bit Textvariable mit Länge 255 angelegt. Folgende Varianten habe ich durch probiert:
    HMIRuntime.SmartTags("Testvariable").Value = "Test"
    HMIRuntime.Tags("Testvariable").Write "Test"
    HMIRuntime.Tags("Testvariable").Value = "Test"
    SmartTags("Testvariable").Value = "Test"
    Tags("Testvariable").Write "Test"
    Tags("Testvariable").Value = "Test"

    Ich lasse den Inhalt der Variablen in meinem Hauptbild in einem statischen Textfeld anzeigen. Und wenn ich genau das selbe mit einem Button im Hauptbild mache geht es auch! Aber ich komme aus meinem Faceplate heraus einfach nicht da dran.

    Ich habe ebenfalls auch schon versucht es über eine Faceplate-Variable zu machen, die ich an eine dafür erstellte Property gebunden habe, welche ich im Hauptbild dann bei der FP-Instanz an meine interne Variable angebunden habe. Ich hätte dann erwartet, dass wenn ich im Faceplate die Faceplate-Variable beschreibe, der Wert durch diese Verknüpfungen an die interne Variable "Testvariable" weiter gereicht würde. Wird es aber leider nicht. (Die FP-Variable ist allerdings richtig versorgt.)

    Wie könnte ich das noch anstellen?
    Zitieren Zitieren Interne Variable per VBS aus Faceplate beschreiben  

  2. #2
    Registriert seit
    29.03.2004
    Beiträge
    5.379
    Danke
    134
    Erhielt 1.588 Danke für 1.160 Beiträge

    Standard

    Der Weg über die Faceplate-Eigenschaften ist der richtige. Wichtig ist nur, der Eigenschaft ein "Properties\ " voranzustellen
    Über ein Skript mit

    SmartTags("Properties\NameDerEigenschaft") = 1234

    Würde der Wert 1234 auf die Eigenschaft "NameDerEigenschaft" geschrieben. Wenn dann an der Faceplateinstanz an dieser Eigenschaft eine Variable angebunden ist, wird der Wert auf diese Variable geschrieben.

    Das HMIRuntime Objekt gibt es in einem Faceplate nicht, darum funktionieren auch die Lösungen aus dem anderen Thread mit den ScreenItems nicht.
    Die Genialität einer Konstruktion liegt in ihrer Einfachheit – Kompliziert bauen kann jeder.

    (Sergei Pawlowitsch Koroljow, sowjetischer Konstrukteur von Raketen und Weltraumpionier)

  3. #3
    Registriert seit
    16.04.2014
    Ort
    Hamburg
    Beiträge
    46
    Danke
    2
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Zitat Zitat von Thomas_v2.1 Beitrag anzeigen

    Das HMIRuntime Objekt gibt es in einem Faceplate nicht, darum funktionieren auch die Lösungen aus dem anderen Thread mit den ScreenItems nicht.
    Hast du mal Me.HMIRuntime probiert ?

    Gruß Thomas

  4. #4
    Registriert seit
    29.03.2004
    Beiträge
    5.379
    Danke
    134
    Erhielt 1.588 Danke für 1.160 Beiträge

    Standard

    Zitat Zitat von IckeSI Beitrag anzeigen
    Hast du mal Me.HMIRuntime probiert ?
    Ja, bei WinCC 7.3 funktioniert das nicht. Ist auch nicht dokumentiert, aber hätte ja sein können.
    Die Genialität einer Konstruktion liegt in ihrer Einfachheit – Kompliziert bauen kann jeder.

    (Sergei Pawlowitsch Koroljow, sowjetischer Konstrukteur von Raketen und Weltraumpionier)

  5. #5
    Medium ist offline Benutzer
    Themenstarter
    Registriert seit
    09.01.2012
    Beiträge
    58
    Danke
    19
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Huhu! Danke für eure Hilfe. Ich bin zwischenzeitlich allerdings hierfür auf eine Bildinstanz gewechselt, und um dort "Parameter" zu übergeben missbrauche ich einfach unsichtbare Textfelder. Dann kann mein Pop-Up leider nur rechteckig sein und die Versorgung muss via Script statt Variablenanbindung geschehen, aber zumindest konnte ich so innerhalb des "Faceplates" alles so scripten wie ich es brauchte. Das mit dem "Properties" werde ich aber bei nächster Gelegenheit mal probieren! (Schade, dass solche Finessen nicht im Guide erwähnt werden.)

Ähnliche Themen

  1. Antworten: 2
    Letzter Beitrag: 07.01.2016, 09:23
  2. WinCC Faceplate Variable
    Von Medium im Forum HMI
    Antworten: 4
    Letzter Beitrag: 02.07.2015, 14:11
  3. Antworten: 1
    Letzter Beitrag: 07.07.2014, 17:55
  4. WinCC 7.0 SP2 Faceplate Variable
    Von Bounty1148 im Forum HMI
    Antworten: 0
    Letzter Beitrag: 21.03.2011, 10:00
  5. Antworten: 1
    Letzter Beitrag: 01.07.2009, 11:56

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •