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

Ergebnis 1 bis 5 von 5

Thema: WinCC flexible Bildnavigation über Skript

  1. #1
    Registriert seit
    14.06.2011
    Beiträge
    16
    Danke
    4
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Leute,
    ich habe eine WinCC flex RT und möchte über zwei Buttons (vor und zurück) komplett durch die ganzen Bilder klicken können. Hierfür gibt es ja eigentlich die Bildnavigation. Leider steht bereits schon die gesamte VISU. Somit müsste ich händisch in jedes Bild diese Buttons einpflegen. Am liebsten würde ich diese in die Vorlage legen. Dies geht jedoch nicht.

    Dann dachte ich mir, ich mach's einfach über ein kleines Skript und Bildnummer.
    1. Lese aktuelle Bildnummer
    2. Erhöhe diese um 1 und versuche das Bild zu öffnen
    3. Geht dieses nicht, da die Bildnummer nicht vergeben ist, erhöhe weiter um 1 und versuchs erneut.
    Dieses Spiel bis wieder ein Bild gefunden wird.

    Das Problem ist, dass jedoch trotz "On Error Resume Next" ein Fehler im Meldefenster sowie Archiv generiert wird und das Skript abbricht.. Habt ihr vielleicht eine andere Idee bzw. wo habe ich einen Fehler gemacht?

    Skript:

    Dim Obj, ScreenNumber, error_Number, temp

    On Error Resume Next

    'Aktuelle Bildnummer herausfinden
    Set Obj = HmiRuntime
    temp = (Split(Obj.BaseScreenName, "_"))
    ScreenNumber = CInt(temp(0))

    error_Number=99

    While (ScreenNumber<100) And (error_Number<>0)
    ScreenNumber=ScreenNumber+1
    ActivateScreenByNumber ScreenNumber, 0
    error_Number=Err.Number
    Wend

    Achja, die Bilder heißen immer : 01_Startbild, 10_Menü usw. Also die Bildnummer klappt. Wenn die Bildnummern vorhanden sind, klappt das ganze auch. Nur wenn diese nicht zusammenhängen nicht.

    Vielen Dank

    Gruß
    Zitieren Zitieren WinCC flexible Bildnavigation über Skript  

  2. #2
    Registriert seit
    13.10.2007
    Beiträge
    12.064
    Danke
    2.793
    Erhielt 3.288 Danke für 2.168 Beiträge

    Standard

    Schau doch erstmal händisch nach was du an Bildnummern hast,
    dann erstelle eine 'Case' Anweisung wo du für das Aktuelle Bild
    ein jeweiligen Case-Fall erstellst wo du zwei Variablen für die vorstehende
    und Folgende Bildnummern zuweist.

  3. #3
    Registriert seit
    06.10.2004
    Ort
    Kopenhagen.
    Beiträge
    4.639
    Danke
    377
    Erhielt 803 Danke für 644 Beiträge

    Standard

    Welchen Skript Fehler wird angezeigt ?

    Mit diesen WHILE Schleife blätterst du durch zämtlichen Bilder bis Nummer 100 erreicht wird. Das kann wohl nicht der Sinn sein ?
    Vielleicht hat es damit zu tun.
    Code:
    While (ScreenNumber<100) And (error_Number<>0)
    ScreenNumber=ScreenNumber+1
    ActivateScreenByNumber ScreenNumber, 0
    error_Number=Err.Number
    Wend
    Ich wurde CASE vorschlagen.
    Code:
    SELECT CASE ScreenNumber OF
    
    CASE 1 ActivateScreenByNumber 2, 0
    CASE 2 ActivateScreenByNumber 3, 0
    CASE 3 ActivateScreenByNumber 10, 0
    CASE 10 ActivateScreenByNumber 11, 0
    .....
    .....
    CASE ELSE ActivateScreenByNumber 1, 0
    END SELECT
    * Ah ! 'rostiger' was schneller als ich.
    Geändert von JesperMP (03.09.2013 um 12:31 Uhr)
    Jesper M. Pedersen

  4. #4
    Egon88 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    14.06.2011
    Beiträge
    16
    Danke
    4
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ja, das mit der Case-Geschichte ist eine gute Sache. Das bedeutet aber, dass wenn einmal zusätzlich Bilder dazwischengeschoben werden, muss man das Skript wieder anfassen.

    Als Fehler kommt, "Anwahl von Bild mit Nummer: XXX nicht möglich."

    Hätte jetzt erwartet, dass das "On Error Resume Next" diesen Fehler unterdrückt und einfach weiter macht.
    Trotzdem danke für eure Ideen!

  5. #5
    Registriert seit
    06.10.2004
    Ort
    Kopenhagen.
    Beiträge
    4.639
    Danke
    377
    Erhielt 803 Danke für 644 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Wie du sagst, funtioniert das Skript, nur es kommt diese Fehlermeldung.
    Das ist genau was ON ERROR RESUME macht. Ohne ON ERROR RESUME bricht das Skript ab bei den ersten Fehler.
    Jesper M. Pedersen

Ähnliche Themen

  1. Antworten: 18
    Letzter Beitrag: 14.04.2014, 15:31
  2. Skript WinCC Flexible
    Von Ruud im Forum HMI
    Antworten: 7
    Letzter Beitrag: 23.05.2011, 08:27
  3. Antworten: 0
    Letzter Beitrag: 12.11.2010, 12:17
  4. WinCC flexible 2007 Bildnavigation
    Von franzlurch im Forum HMI
    Antworten: 1
    Letzter Beitrag: 16.11.2007, 08:59
  5. WinCC Flexible Bildnavigation
    Von Heinz im Forum HMI
    Antworten: 4
    Letzter Beitrag: 30.10.2006, 10:13

Lesezeichen

Berechtigungen

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