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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: WinCC Flexible 2008 Rezpetur-Datensatznamen nach der Eingabe auslesen

  1. #1
    Registriert seit
    20.08.2013
    Beiträge
    5
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen,

    ich habe ein Problem mit Wincc Flexible / PC-Runtime und komme nicht weiter. Ich habe eine Rezeptur angelegt wo neue Datensätze eingegeben werden können. Der Datensatzname setzt sich aus mehreren Komponenten zusammen.
    Wie z.B. 4567300.

    Kunde: 456
    Material: 7
    Materialbreite 300

    Nun möchte ich gerne die Rezeptvariabeln nach der Eingabe des Datensatznamens füllen. Und dort fängt mein Problem an. Mit einem Skript, Beispiel siehe unten, kann ich zwar über die Datensatznummer den entsprechenden Namen auslesen, dafür muss ich aber erst den neuen Datensatz speichern. Ich möchte aber gerne z.B. durch Bestätigung mit einer beliebigen Taste oder wenn es so etwas gibt wie ein Event den String auslesen und in die einzelnen Komponenten spliten und dann erst speichern. Im Moment muss ich immer die Daten bei einen Neuen Datensatz zweimal eingeben. Erstens als Datensatznamen und danach muss ich diese in der Rezeptur ausfüllen. Kann mir jemand dabei weiterhelfen? Ist dieses Überhaupt möglich?

    Code:
    'DATENSATZ LADEN'
    
    
    Dim Ausgabe, Abfrage
    GetDataRecordName "Kommission",SmartTags("DB_Kommission.DatensatzNr"),M_Rezeptname,M_Datensatzname, M_FehlerSkript
    
    
    Do While M_FehlerSkript = 2
        'Nichts'
    Loop
    If M_FehlerSkript = 4     Then
      
      Set Ausgabe = CreateObject("WScript.Shell")
      Abfrage = Ausgabe.Popup( "Erfolgreich")
      SmartTags("DB_Kommission.KommissionNr") = CDbl(M_Datensatzname) 
    End If
    If M_FehlerSkript = 12     Then
        Set Ausgabe = CreateObject("WScript.Shell")
      Abfrage = Ausgabe.Popup( "Fehler")
    End If
    Step 7
    WinCC Flexible 2008 SP3
    PC Runtime als Visuoberfläche
    Angehängte Grafiken Angehängte Grafiken
    Zitieren Zitieren WinCC Flexible 2008 Rezpetur-Datensatznamen nach der Eingabe auslesen  

  2. #2
    Registriert seit
    17.10.2007
    Beiträge
    263
    Danke
    5
    Erhielt 52 Danke für 48 Beiträge

    Standard

    Hallo Hotte,

    ehrlicherweise verstehe ich dein Problem nicht so richtig (Wobei ich zugeben muss, dass ich die Rezepturanzeige nie verwendet habe):

    Du möchtest also alle Rezeptparameter eingeben, aus bestimmten Werten den Datensatznamen erstellen und den Datensatz dann unter diesem abspeichern, richtig?

    Was spricht gegen die Abarbeitung eines Skriptes, welche den Datensatznamen selbst zusammensetzt, anstatt ihn auszulesen?


    Gruß, Fred

  3. #3
    Hotte5 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    20.08.2013
    Beiträge
    5
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Halle Fred,

    eigentlich genau anders herum. Ich möchte über den Datensatznamen die Rezeptparameter ausfüllen lassen und dann das ganze speichern.

  4. #4
    Registriert seit
    17.10.2007
    Beiträge
    263
    Danke
    5
    Erhielt 52 Danke für 48 Beiträge

    Standard

    Musst/Willst du zwingend die Rezepturanzeige einsetzen?

    Ich weiß jetzt nicht, wieviele Parameter zu 'befeuern' sind, aber eine Seite mit einem Eingabefeld (Rezeptname) und vielleicht 3 Ausgabefeldern (Parameter, um bei deinem Beispiel zu bleiben) sollte schnell erstellt sein. Nach Eingabe des Rezeptnamens führst du ein Skript aus, welches zuerst den Namen aufteilt, die so gewonnenen Werte an die Rezeptvariablen übergibt und danach mittels Systemfunktion des Datensatz unter dem gegebenen Namen speichert.

    Gruß, Fred

  5. #5
    Hotte5 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    20.08.2013
    Beiträge
    5
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Erstmal Danke für die schnellen Antworten und den Denkanstoss.

    Nur habe ich das Problem, dass der Bediener schon vorhandene Rezepte per drop down aus der Rezeptur auswählen kann und wenn der Datensatz nicht vorhanden ist, sich einen neuen anlegen kann.
    Wenn ich dich Richtig verstanden habe, lege ich doch so nur neue Datensätze an.

  6. #6
    Registriert seit
    17.10.2007
    Beiträge
    263
    Danke
    5
    Erhielt 52 Danke für 48 Beiträge

    Standard

    Dann wäre ein Paralleleinsatz denkbar:
    einmal mein Vorschlag zur Neuanlage von Datensätzen, daneben die Rezeptanzeige zur Auswahl bereits bestehender.

    BTW: Ist denn eine Änderung von Datensatzwerten erlaubt bzw. angedacht? Wäre nach deinem Modell ja so nicht erlaubt, da dann Datensatzname und Werte nicht mehr 'gleich' sind.

    Gruß, Fred

  7. #7
    Hotte5 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    20.08.2013
    Beiträge
    5
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Guten Abend,

    ja leider es ist auch angedacht die Datensätze jeweils anzupassen. Du musst dir das so Vorstellen nach Eingabe des Namen ist es Fa. Müller die zwar immer das gleiche Material haben (siehe Datensatzname), aber z.B. andere Verpackungsart. Dieses wird alles mit der Rezeptur festgelegt. Die Rezeptur hat 12 Eingabefelder wobei ich drei davon aus dem Datensatznamen vorbelegen möchte. Ich werde das Gefühl nicht los, dass es so etwas nicht mit der Rezeptur von Siemens funktioniert.

    MfG
    Hotte

  8. #8
    Registriert seit
    17.10.2007
    Beiträge
    263
    Danke
    5
    Erhielt 52 Danke für 48 Beiträge

    Standard

    Doch, das geht...

    Stell dir einen Dialog vor, in welchem sich Ausgabefelder für die drei automatisch zu besetzenden Parameter und Eingabefelder für die restlichen befinden. Dazu packst du ein Eingabefeld (für die Eingabe eines neuen Datensatznamens), welches du von einer reduzierten WinCC-Rezeptanzeige (und zwar nur die Datensatzauswahl sichtbar) ÜBERDECKST. Dann noch zwei Schaltflächen für 'Neu' und 'Speichern', fertig.

    Vorgehensweise bei Neuanlage eines Datensatzes:
    1. Bediener betätigt 'Neu' ->Datensatzauswahl ausblenden, ggf. Vorbesetzung der Paraameter mit Defaultwerten.
    2. Bediener gibt den Datensatznamen und die Parameter ein.
    3. Bediener betätigt 'Speichern' -> Skript prüft den Rezeptnamen, besetzt die 3 nichteditierbaren Parameter und speichert den Datensatz. Danach wird die Datensatzauswahl wieder eingeblendet.

    Vorgehensweise bei Bearbeitung eines bestehenden Datensatzes:
    1. Bediener wählt einen Datensatz aus -> Datensatz wird geladen.
    2. Bediener editiert die Parameter.
    3. Bediener betätigt 'Speichern' -> siehe oben

    Zusätzlich könnte man z.B. die Eingabefelder ausblenden/deaktivieren, wenn kein Datensatz ausgewählt bzw. solange kein neuer Datensatzname ejngegeben wurde, etc.

    Gruß, Fred

  9. #9
    Hotte5 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    20.08.2013
    Beiträge
    5
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Guten Abend Fred,

    erstmal herzlichen Dank für deine Mühe.

    Der Vorschlag ist gar nicht schlecht, nur hast du das in WinCC schon mal umgesetzt? Ich habe es nicht hinbekommen dass ich eine E/A-Feld über das drop down Menu der Rezepturanzeige legen kann. Irgendwie scheint die Rezepturanzeige immer in den Vordergrund gestellt zu sein. Oder ich mache etwas falsch?

    MfG

    Hotte

  10. #10
    Registriert seit
    17.10.2007
    Beiträge
    263
    Danke
    5
    Erhielt 52 Danke für 48 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Musst du genau umgekehrt anordnen, leider meint Siemens nämlich, dass gewisse Controls unbedingt immer bedienbar bleiben müssen.

    Besonders toll fand ich dabei immer, dass ich die Reihenfolge der besagten Controls wahlfrei projektieren konnte und nicht einmal der Compiler gemeckert hat...


    Gruß, Fred

Ähnliche Themen

  1. Antworten: 2
    Letzter Beitrag: 08.10.2014, 08:07
  2. Antworten: 4
    Letzter Beitrag: 27.11.2012, 19:16
  3. Antworten: 5
    Letzter Beitrag: 21.08.2012, 20:45
  4. Antworten: 1
    Letzter Beitrag: 30.12.2010, 09:30
  5. Antworten: 1
    Letzter Beitrag: 30.06.2009, 19:23

Lesezeichen

Berechtigungen

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