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

Results 1 to 3 of 3

Thread: Länge einer Struktur im DB ermitteln

  1. #1
    Join Date
    12.12.2007
    Location
    im schönen Paderborner Land
    Posts
    68
    Danke
    13
    Erhielt 3 Danke für 3 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Leute,

    habe mal wieder ein kleines Problem.

    Ich habe eine DB, der aus einem Header von wechselnder Länge besteht und dann mit einem n-fachen einer Struktur gefüllt ist. Die Struktur ist in einem UDT zusammengefasst, kann aber von Maschine zu Maschine unterschiedlich lang sein. Gibt es eine Möglichkeit, aus dem DB die Startadressen der ersten zwei UDT's auszulesen, um daraus die Gesamtlänge einer Struktur zu errechnen?
    Es geht darum, daß die erste Struktur einen aktuellen Datensatz enthält und dieser entweder auf einer der nachfolgenden Strukturen gespeichert werden kann oder von dort geladen werden kann. Dafür benötige ich die Länge der Struktur.
    Gibt es in der Richtung was sinnvolles?

    Knut (nicht der Eisbär)
    Siemens ist keine Produktbezeichnung sondern ein Warnhinweis!
    Reply With Quote Reply With Quote Länge einer Struktur im DB ermitteln  

  2. #2
    Join Date
    06.10.2003
    Posts
    4,481
    Danke
    619
    Erhielt 773 Danke für 607 Beiträge

    Default

    Hallo Knut,

    die Länge einer Struktur kannst du einfach ermitteln, indem du sie über einen Any-Pointer an den Baustein übergibst.

    Code:
     
    FUNCTION "xyz" : BOOL
    TITLE =
    AUTHOR : Onkel
    VERSION : 0.1
     
    VAR_INPUT
      DATENBEREICH : ANY ;
    END_VAR
     
    BEGIN
    NETWORK
    TITLE =
    //*** AR2 auf Datenbereich
          L     P##DATENBEREICH; 
          LAR2  ; 
     
    //*** Größe Datenbereich
          L     W [AR2,P#2.0]; // Anzahl Typ im DATENBEREICH
     
    // usw......
     
    END_FUNCTION

    Gruß, Onkel
    Der höchste Lohn für unsere Bemühungen ist nicht das, was wir dafür bekommen, sondern das, was wir dadurch werden.
    John Ruskin

  3. Folgende 2 Benutzer sagen Danke zu Onkel Dagobert für den nützlichen Beitrag:

    gingele (16.07.2010),Knut333 (22.01.2009)

  4. #3
    Join Date
    12.12.2007
    Location
    im schönen Paderborner Land
    Posts
    68
    Danke
    13
    Erhielt 3 Danke für 3 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Probiere ich morgen mal aus!

    Vielen Dank für die prompte Antwort!

    Knut


    Edith meint: Ich konnte es nicht bis morgen abwarten und .... das ist genau das, was ich brauche!!!!!!!!!!!!!!!!
    (Muß mir bei Gelegenheit die Verwendung von Pointern und Any-Pointern mal genauer erklären lassen)
    Last edited by Knut333; 22.01.2009 at 18:14.
    Siemens ist keine Produktbezeichnung sondern ein Warnhinweis!

Similar Threads

  1. Replies: 7
    Last Post: 24.04.2015, 12:42
  2. Step 7 Länge eines Datentyps ermitteln
    By HelmiMUC in forum Simatic
    Replies: 5
    Last Post: 18.03.2015, 13:35
  3. Replies: 2
    Last Post: 05.02.2012, 20:14
  4. SCL DB Länge ermitteln
    By Dotzi in forum Simatic
    Replies: 7
    Last Post: 03.07.2010, 20:01
  5. DB-Länge ermitteln
    By Fliegertiger in forum Hochsprachen - OPC
    Replies: 4
    Last Post: 18.12.2007, 15:39

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •