TIA V11 SCL Problem mit DB zugriff

epy

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

arbeite mit TIA V11 SP1 + UDP1.
Habe den Inhalt von einem Baustein von V5.5 einfach in den von V11 kopiert.
Ist ein kleines SCL Programm leider habe ich mit dem DW zugriff ein Problem.
In der Doku steht nur das aus DW jetzt DBW wird, aber es funktioniert nicht.
Bekomme aber einen Syntax Fehler.

Kann mir jemand sagen was ich Falsch mache ???

Danke !
 

Anhänge

  • Schnittstelle.JPG
    Schnittstelle.JPG
    59,6 KB · Aufrufe: 49
  • SCL_Prog.JPG
    SCL_Prog.JPG
    59,1 KB · Aufrufe: 57
  • Syntax.JPG
    Syntax.JPG
    54,2 KB · Aufrufe: 39
Du mußt nun runde Klammern verwenden, statt der eckigen.

attachment.php



Die erste Zeile ist falsch, die 3 nächsten funktionieren.
 

Anhänge

  • SCL_Klammern.jpg
    SCL_Klammern.jpg
    15,6 KB · Aufrufe: 112
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich muss mich jetzt nach ein paar Monaten hier nochmal einklinken, weil ich gerade vor dem gleichen Problem stehe.
Wie realisiere ich denn nun einen Zugriff, wenn zur Laufzeit die DB-Adresse noch nicht bekannt ist. Die Lösung von Ralle basiert ja darauf, dass man absolut adressiert.
Genau wie epy übergebe ich an einen FB eine BLOCK_DB-Variable. Im FB möchte ich nun eine Variable aus diesem von außen parametrierten DB haben (zum lesen und beschreiben).

Nach alter Schreibweise müsste eine stinknormale Zuweisung so lauten:

InterneFBVariable := BlockDBVariable.DX0.0;
Das wird allerdings als Fehlerhaft angekreidet.

Wenn ich es nach der Methode von Ralle mache und direk z.B. %DB201.DW(1) eingebe, dann ersetzt er das sofort durch die symbolischen Namen der vorhandenen Objekte. Die Syntax funktioniert also, allerdings bringt mir das nichts, da die DB-Adresse ja erst zur Laufzeit anliegt. Wie löst man das Problem?
 
Ich arbeite nicht mit TIA, aber es könnte so in etwa wahrscheinlich funktionieren :
Code:
InterneFBVariable := BlockDBVariable.DX(0,0);
Wenn es nicht passen sollte dann schau doch mal in der TIA-Hilfe nach, wie das mit der indizierter Adressierung gelösst wird.
 
Zurück
Oben