SCL Datenbaustein kann nicht erzeugt werden

Django2012

Level-1
Beiträge
157
Reaktionspunkte
3
Zuviel Werbung?
-> Hier kostenlos registrieren
Wieder ein SCL Problem. Hab die Hilfe jetzt schon paar mal gelesen, ich sehe aber nicht was falsch sein soll..... Problem ist, er erstellt mir keinen DB2 , bringt aber auch keinen Fehler. Wennn ich selber nen DB2 ins Programm einfüge, sagt SCL mir beim Übersezten ob ich den Baustein überschreiben will. Trotzdem ist der DB immer leer....

Code:
DATA_BLOCK DB2

STRUCT
meins: ARRAY [1..20] OF DINT
test:INT;
test2: INT;
END_STRUCT
BEGIN
test1:21; test:23;
END_DATA_BLOCK
 
Zuviel Werbung?
-> Hier kostenlos registrieren
?? Also bei mir meckert er nicht beim Übersetzen. Leer heißt, er erstellt den DB2 überhaupt nicht . und wenn ich einen DB2 in den Bausteinordner einfüge, fragt er zwar ob er ihn überschreiben soll, was ich mit ja bestätige, aber im DB2 steht nichts drin. Also keine Struktur. Gar nix. Wie ein leerer DB hald .
 
.... habe den Beispielcode mit STRG+C Strg+V jetzt in den SCL Editor eingefügt und er übersetzt einwandfrei. Also daran kanns normal nicht liegen?
 
Ja, Step 7. Ok, das hab ich übersehen, berichtige das gleich... ABER Er meckert wirklich nicht! So , Code jetzt:
Code:
DATA_BLOCK DB2
STRUCT
meins: ARRAY [1..20] OF DINT
test:INT;
test2: INT;
END_STRUCT
BEGIN
test:=21; test2:=23;
END_DATA_BLOCK
Ergebnis das gleiche. Es wird kein DB2 erzeugt. Übersetzen 0 Fehler 0 Warnungen....
 
Hier der Screenshot :

scree.jpg
.
Nix manipuliert oder sonstwas. Ich wäre über ne Fehlermeldung froh, dann würd ich evtl. mal rausfinden warum er den DB2 nicht erstellt....
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Mal abgesehen davon dass da immer noch ein Fehler drin ist (fehlendes Semikolon hinter DINT).
Wo schaust du denn nach ob der DB erzeugt wurde? Der DB wird im Baustein-Ordner erzeugt, und nicht im Quellen-Ordner.
 
Also ich bin SCL NEuling, nicht totaler S7 Trollo :) War n Scherz, zurück zum Thema: Im Bausteinordner taucht nix auf! . Hab ja schon geschrieben wenn ich selber einen einfüge.....
 
Zuletzt bearbeitet:
JAAAA!!!!!! DANKE!!! Das fehlende Semicolon wars!!! ohne Scheiß !! Warum meckert der Editor da nicht? Der hat doch sonst IMMER was zu meckern :)))))))
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Füge mal hinter dem DINT ein Semikolon ein, also
Code:
DATA_BLOCK DB2

STRUCT    
meins: ARRAY [1..20] OF DINT;
test:INT;
test2: INT;
END_STRUCT
BEGIN
test:=21; test2:=23;
END_DATA_BLOCK

Das wundert mich dass dein SCL das ohne Fehler übersetzt, das kann ich gar nicht glauben. Welche Step7 / SCL Version hast du denn? Meine Version gibt bei fehlendem Semikolon eine Fehlermeldung aus. Kann mir fast nicht vorstellen dass es so einen Bug mal gab.
 
Mich wundert das auch, weil wie gesagt, sonst meckert er immer wenn n ; vergessen wurde. Habe Step7 Professional V5.5 SP2 . SCL :V5.3 + SP 6.
Ehrlich gesagt ich schau oft nicht auf die ; bei übersetzten kommts hald dann immer auf.
 
Seltsam, ich habe sogar noch eine ältere SCL Version (5.3 + SP5 + HF1).
Ich würde mir schonmal angewöhnen den Code mit Tabulator/Leerzeichen passend einzurücken. Und nicht unbedingt mehr als eine Anweisung in eine Zeile zu packen.
Also etwa so:
Code:
DATA_BLOCK DB2

STRUCT    
    meins: ARRAY [1..20] OF DINT;
    test : INT;
    test2 : INT;
END_STRUCT

BEGIN
    test := 21;
    test2 := 23;
END_DATA_BLOCK

Dann siehst du auch besser wenn du am Ende der Zeile mal ein Semikolon vergessen hast.
 
Zurück
Oben