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

Seite 4 von 5 ErsteErste ... 2345 LetzteLetzte
Ergebnis 31 bis 40 von 49

Thema: Werte in einem DB suchen und vergleichen

  1. #31
    Registriert seit
    07.03.2004
    Beiträge
    4.369
    Danke
    946
    Erhielt 1.158 Danke für 831 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Welche Version nutzt Du denn? Damit wir vom gleichen schreiben.

    Die VAT ist so aufgebaut das ganz ober der Suchbegriff eingegeben wird (das soll das "//gesuchte Produkt ID" anzeigen).

    Dann Kommt das Ergebnis ("Result") Elementnummer (alte Version MW220 und im neuen MW20) und der Inhalt des gefundenen Elements.

    Und am Schluss der VAT ist ein Ausschnitt aus dem Array ab dem Eintrag "//Ausschnitt aus dem Array".

    Array beschreiben, Suchbegriff eingeben und Ergebnis anschauen.
    If you open your Mind too much, your Brain will fall out.

  2. #32
    Kodan ist offline Benutzer
    Themenstarter
    Registriert seit
    02.03.2007
    Beiträge
    43
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Habe eben deine "letzte" Version aufgespielt...
    Gruß

  3. #33
    Kodan ist offline Benutzer
    Themenstarter
    Registriert seit
    02.03.2007
    Beiträge
    43
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Also,

    ich verstehe es so...
    In der Var steht von DB20.DBB922-941 die 20 Zeichen des Stings die gesucht werden!

    Soweit o.k.

    Aber warum steht am Anfang auf Speicherstelle DBB920/921 ein Dez-Wert und Steuerwerte A-Z?

    Seh den Zusammenhang noch nicht...

    Ich hoffe ich bin nicht zu dumm hierfür....


    Gruß

  4. #34
    Registriert seit
    07.03.2004
    Beiträge
    4.369
    Danke
    946
    Erhielt 1.158 Danke für 831 Beiträge

    Standard

    Zitat Zitat von Kodan Beitrag anzeigen
    Also,

    ich verstehe es so...
    In der Var steht von DB20.DBB922-941 die 20 Zeichen des Stings die gesucht werden!

    Soweit o.k.

    Aber warum steht am Anfang auf Speicherstelle DBB920/921 ein Dez-Wert und Steuerwerte A-Z?

    Seh den Zusammenhang noch nicht...

    Ich hoffe ich bin nicht zu dumm hierfür....


    Gruß
    Ein String in der S7 ist wie folgt aufgebaut.

    1. Byte: Maximale Länge des Strings (hier 20)
    2. Byte: Aktuelle Länge des Strings (z.B. 4)
    3. bis 22. Byte: Daten

    Wenn in Byte 2 eine 4 steht werden nur die bytes 3 bis einschließlich 6 verwendet.
    If you open your Mind too much, your Brain will fall out.

  5. #35
    Kodan ist offline Benutzer
    Themenstarter
    Registriert seit
    02.03.2007
    Beiträge
    43
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard

    o.k.

    Nun aber wie bekomme ich Daten in den DB...Kenne es mit Deklarationsansicht... Geht hier aber nicht wegen dem UDT..

    Und wenn ich es testen möchte..Wie geh ich dann vor...

    Und noch zum Schluß...Ich kann dies aber nachher auch den Db für bis zu 400 Produkt-IDs erweitern sofern es die CPU kann oder dann wieder ein größerer Aufwand...

    Gruß Kodan... Bin halt in solchen Sachen Anfänger....

  6. #36
    Registriert seit
    07.03.2004
    Beiträge
    4.369
    Danke
    946
    Erhielt 1.158 Danke für 831 Beiträge

    Standard

    Wenn Du SCL hättest wäre die erweiterung auf 400 Einträge ein klax solange die CPU mit dem Monster DB klar käme (was ich aber bezweifele).

    Zum DB das geht bei mir eigentlich Super einfach Quelle des DBs generieren und Aktualwerte eintragen:

    Code:
    DATA_BLOCK "myDB"
    TITLE =
    VERSION : 0.0
    
    
      STRUCT     
       myArray : ARRAY  [0 .. 19 ] OF "myUDT";    
       Target : STRING  [20 ];    
       Result : "myUDT";    
      END_STRUCT ;    
    BEGIN
       myArray[0].ID := 'P001'; 
       myArray[0].P_NAME := 'Fritz'; 
       myArray[0].VALUE := 1; 
       myArray[1].ID := 'P002'; 
       myArray[1].P_NAME := 'Hans'; 
       myArray[1].VALUE := 2; 
       myArray[2].ID := 'P003'; 
       myArray[2].P_NAME := 'Klaus'; 
       myArray[2].VALUE := 3; 
       myArray[3].ID := ''; 
       myArray[3].P_NAME := ''; 
       myArray[3].VALUE := 0; 
       myArray[4].ID := ''; 
       myArray[4].P_NAME := ''; 
       myArray[4].VALUE := 0; 
       myArray[5].ID := ''; 
       myArray[5].P_NAME := ''; 
       myArray[5].VALUE := 0; 
       myArray[6].ID := ''; 
       myArray[6].P_NAME := ''; 
       myArray[6].VALUE := 0; 
       myArray[7].ID := ''; 
       myArray[7].P_NAME := ''; 
       myArray[7].VALUE := 0; 
       myArray[8].ID := ''; 
       myArray[8].P_NAME := ''; 
       myArray[8].VALUE := 0; 
       myArray[9].ID := ''; 
       myArray[9].P_NAME := ''; 
       myArray[9].VALUE := 0; 
       myArray[10].ID := ''; 
       myArray[10].P_NAME := ''; 
       myArray[10].VALUE := 0; 
       myArray[11].ID := ''; 
       myArray[11].P_NAME := ''; 
       myArray[11].VALUE := 0; 
       myArray[12].ID := ''; 
       myArray[12].P_NAME := ''; 
       myArray[12].VALUE := 0; 
       myArray[13].ID := ''; 
       myArray[13].P_NAME := ''; 
       myArray[13].VALUE := 0; 
       myArray[14].ID := ''; 
       myArray[14].P_NAME := ''; 
       myArray[14].VALUE := 0; 
       myArray[15].ID := ''; 
       myArray[15].P_NAME := ''; 
       myArray[15].VALUE := 0; 
       myArray[16].ID := ''; 
       myArray[16].P_NAME := ''; 
       myArray[16].VALUE := 0; 
       myArray[17].ID := ''; 
       myArray[17].P_NAME := ''; 
       myArray[17].VALUE := 0; 
       myArray[18].ID := ''; 
       myArray[18].P_NAME := ''; 
       myArray[18].VALUE := 0; 
       myArray[19].ID := ''; 
       myArray[19].P_NAME := ''; 
       myArray[19].VALUE := 0; 
       Target := ''; 
       Result.ID := ''; 
       Result.P_NAME := ''; 
       Result.VALUE := 0; 
    END_DATA_BLOCK
    Geändert von zotos (23.02.2009 um 10:49 Uhr)
    If you open your Mind too much, your Brain will fall out.

  7. #37
    Kodan ist offline Benutzer
    Themenstarter
    Registriert seit
    02.03.2007
    Beiträge
    43
    Danke
    3
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo Zotos,

    also langsam glaub ich das das Problem aus dem Ruder läuft....

    Aber ob das mit der Datenflut überhaupt funktioniert so...Bezweifelst du ja selbst... Und es in mehere DB´s aufteilen verringert den Aufwand sicher nicht...

    Was rätst du mir?...

    Gruß Kodan..



    Dachte es ginge Leichter in einem DB einen Datensatz zu lesen....

  8. #38
    Registriert seit
    11.12.2008
    Beiträge
    73
    Danke
    39
    Erhielt 9 Danke für 8 Beiträge

    Standard

    nimm doch einen integer als index statt nem string...

    verlagert das problem in die visu

    ich weiß ja nicht, was das OP7 kann, aber vielleicht kommste mit nem integer und textlisten im OP weiter

  9. #39
    Registriert seit
    07.03.2004
    Beiträge
    4.369
    Danke
    946
    Erhielt 1.158 Danke für 831 Beiträge

    Standard

    Du hast ja im ersten Post die Vorgaben gemacht.

    Also 20 Zeichen für die ID und 20 Zeichen für den Produktnamen so wie ein INT für einen Wert.

    Wenn die ID nicht 20 Zeichen lang sein müsste würde das schon was sparen genau so beim Produktnamen. Da bei 400 Datensätzen jedes gesparte Byte in der Struktur gleich 400Bytes im gesamten DB sind.

    Wenn sich daran nichts ändern läst könnte man auch drei DBs nehmen und auf die UDT verzichten also einen DB für die ID einen DB für den Produktnamen und einen DB für den wert. Jeweils ein Array mit 400 Elementen.

    Wie hast Du Dir das ganze denn so vorgestellt?
    If you open your Mind too much, your Brain will fall out.

  10. #40
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Mangokind Beitrag anzeigen
    ich weiß ja nicht, was das OP7 kann, aber vielleicht kommste mit nem integer und textlisten im OP weiter
    ... und das zum montag
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  11. Folgender Benutzer sagt Danke zu vierlagig für den nützlichen Beitrag:

    zotos (23.02.2009)

Ähnliche Themen

  1. 8 Integer Werte vergleichen
    Von HarryH im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 20.09.2011, 08:00
  2. Antworten: 27
    Letzter Beitrag: 07.04.2011, 22:56
  3. DB-Werte nacheinander einem FB zuweisen
    Von Herrminator im Forum Programmierstrategien
    Antworten: 11
    Letzter Beitrag: 26.02.2009, 16:50
  4. Antworten: 2
    Letzter Beitrag: 26.09.2006, 09:04
  5. 2 versch. werte an einem analogen ausgang mit der ps3
    Von Anonymous im Forum Sonstige Steuerungen
    Antworten: 4
    Letzter Beitrag: 01.08.2004, 19:54

Stichworte

Lesezeichen

Berechtigungen

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