Step 7 DB umkopieren

spirit

Level-1
Beiträge
961
Reaktionspunkte
23
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich finde den Fehler, den ich wohl selbst verursacht habe, nicht.

In einem DB sollen Daten einfach umkopiert und noch drei Nullen vorangestellt werden, wenn M33.0 TRUE ist:

FC.jpg

DB.jpg

Soweit funktioniert es auch; allerdings steht an Adresse 36.0 anstatt einer '0' eine ',' - wo kommt das her? :confused:

Vielen Dank für Ideen ...
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Schreibt vielleicht ein anderer Programmteil oder vernetzter Teilnehmer in "DB".DBB36?
(Test: Kannst Du mit der Variablentabelle den Wert in "DB".DBB36 ändern wenn M33.0 FALSE ist?)

Kannst du den "DB" nochmal komplett in die Steuerung laden, ggf. vorher Konsistenzprüfung machen?

Dein Code ist zwar etwas konfus (ich würde die Programmabschnitte anders anordnen), er sollte aber funktionieren.

Harald
 
Soweit ich das auf den ersten Blick sehe, kann das nicht von dem geposteten Codeschnipsel kommen. Du schreibst absolut adressiert nur '0' auf DBB36 und indirekt kommst du gar nicht auf DBB36 weill du den Offset auf P#39.0 gestellt hast.

Was passiert wenn du den M33.0 auf false stellst und dann das DBB36 manuell veränderst?
 
kürzer ist ja vielleicht nicht immer das Mittel der Wahl, aber z.B. gibt es für die Folge SPB und SPA die Alternative SPBN
und als Ersatz für deine selber gebaute Schleife kann man durchaus zu LOOP greifen...

Code:
        U         M33.0
        FP        M33.1
        SPBN     end
        L        '0'
        T        "DB".Daten_neu[1]
        T        "DB".Daten_neu[2]
        T        "DB".Daten_neu[3]
        
        AUF     "DB"
        L        7
next:    T        MW10
        +        27
        SLD        3
        LAR1
        L        DBB[AR1,P#0.0]
        T        DBB[AR1,P#11.0]
        L        MW10
        LOOP    next
        
end:    NOP        0
 
Zurück
Oben