versuch das mal du hast da ein paar fehler drinn mit 2 Lade befehlen hinter einander oder bei dir fehlt die Syntax ID vll hilfts dir jaLAR1 P##tmp_quell_anypointer
L W#16#10 //SyntaxID. bei S7 immer 10
T LB [AR1,P#0.0]
L W#16#2 //Typ byte
T LB [AR1,P#1.0]
L 16 //Anzahl bytes
T LW [AR1,P#2.0]
L #DBNR_Messdaten //Quell-DB
T LW [AR1,P#4.0]
L #tmp_laufvariable1 //Anfang der Quelle
SLD 3
T LD [AR1,P#6.0]
L B#16#84 //Speicherbereich (hier DB)
T LB [AR1,P#6.0]
Also ich benutze "den anderen Fall" und suche halt die Lösung an welcher Stelle ich das AR2 aufrechnen muss!Im Falle von "call FB1 , DB100" sollte der Code, so wie du ihn hast funktionieren.
Im anderen Fall mußt du dem "LAR1 P##iKopplung" danach noch den Inhalt des AR2 hinzufügen.
LAR1 P##iKopplung
+AR2
// ... und dann weiter im Text (wie in deinem Code)
LAR1 P##iKoppeladresse
+AR2
L W [AR1,P#4.0] // Datenbausteinnummer
T #tDB
L D [AR1,P#6.0] // Bereichszeiger
SLD 8
SRD 8
LAR1
AUF DB [#tDB]
AUF iDB_Nr
L iKoppeladresse
SLD 3
LAR1
LAR1 P##iKopplung
+AR2
L W [AR1,P#0.0]
T LW 0
L W [AR1,P#2.0]
T LW 2
L W [AR1,P#4.0]
T LW 4
L D [AR1,P#6.0]
T LD 6
L LW 4
T #tDB_No
L D [AR1,P#6.0]
SLD 8
SRD 8
LAR1 // hier legst du den übergebenen Pointer ins AR1
AUF DB [tDB_No] // hier schlägst du den im Pointer übergebenen DB auf
L W [AR1,p#0.0] // mit den nun folgenden Lade-Befehlen würdest du den ANY-Pointer verwenden
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?