Beschreibung
Mit der Anweisung erzeugen Sie im Anwenderprogramm einen Datenbaustein, der keine vorbesetzten Werte enthält. Er enthält stattdessen Zufallsdaten. Die Anweisung erzeugt einen Datenbaustein mit einer Nummer aus einem angegebenen Bereich sowie mit vorgegebener Größe. Aus dem angegebenen Bereich vergibt die Anweisung die kleinste mögliche Nummer an den DB. Einen DB mit bestimmter Nummer erzeugen Sie, indem Sie der Ober- und Untergrenze des vorzugebenden Bereichs die gleiche Nummer geben. Die Nummern der im Anwenderprogramm bereits enthaltenen DBs können Sie nicht mehr vergeben. Die Länge des DBs müssen Sie in einer geraden Zahl angeben.
Je nach Wahl des Parameters ATTRIB hat der erzeugte DB entweder die Eigenschaft RETAIN oder NON_RETAIN:
-
RETAIN (=remanent) bedeutet, dass der DB im remanenten Teil des Arbeitsspeichers erzeugt wird, d. h. die Aktualwerte des DB bleiben bei jedem Netz-Aus/Netz-Ein-Übergang und jedem Neustart (Warmstart) erhalten.
-
NON_RETAIN (= nicht remanent) bedeutet, dass der DB im nicht remanenten Teil des Arbeitsspeichers erzeugt wird, d. h. die Aktualwerte des DB sind nach jedem Netz-Aus/Netz-Ein-Übergang und nach jedem Neustart (Warmstart) undefiniert.
Falls nicht zwischen remanentem und nicht remanentem Arbeitsspeicher unterschieden wird, wird der Parameter ATTRIB ignoriert, d. h. die Werte des DB bleiben nach jedem Netz-Aus/Netz-Ein-Übergang und nach jedem Neustart (Warmstart) erhalten.
Unterbrechbarkeit
Die Anweisung "CREA_DB" kann unterbrochen werden durch höherpriore OBs. Wenn in einem höherprioren OB wiederum eine Anweisung "CREA_DB" aufgerufen wird, wird dieser Aufruf mit dem Fehlercode W#16#8091 abgewiesen.
Parameter
Die folgende Tabelle zeigt die Parameter der Anweisung "CREA_DB":
|
Parameter |
Deklaration |
Datentyp |
Speicherbereich |
Beschreibung |
|---|---|---|---|---|
|
LOW_LIMIT |
Input |
WORD |
E, A, M, D, L oder Konstante |
Der untere Grenzwert ist die kleinste Nummer in dem Bereich der Nummern, die Sie Ihrem Datenbaustein zuordnen können. |
|
UP_LIMIT |
Input |
WORD |
E, A, M, D, L oder Konstante |
Der obere Grenzwert ist die größte Nummer in dem Bereich der Nummern, die Sie Ihrem Datenbaustein zuordnen können. |
|
COUNT |
Input |
WORD |
E, A, M, D, L oder Konstante |
Der Zählwert gibt die Anzahl der Datenbytes an, die Sie für ihren Datenbaustein reservieren möchten. Sie müssen hier eine gerade Zahl an Bytes (maximal 65534) angeben. |
|
ATTRIB |
Input |
BYTE |
E, A, M, D, L oder Konstante |
DB-Attribute:
|
|
RET_VAL |
Return |
INT |
E, A, M, D, L |
Tritt während der Bearbeitung der Anweisung ein Fehler auf, enthält der Rückgabewert einen Fehlercode. |
|
DB_NUMBER |
Output |
WORD |
E, A, M, D, L |
Die Datenbausteinnummer ist die Nummer des erstellten Datenbausteins. Im Fehlerfall (Bit 15 von RET_VAL wurde gesetzt) wird in DB_NUMBER der Wert "0" eingetragen. |
Weitere Informationen zu den gültigen Datentypen finden Sie unter "Übersicht über die gültigen Datentypen".
Parameter RET_VAL
|
Fehlercode |
Erläuterung |
|---|---|
|
0000 |
kein Fehler |
|
8091 |
Sie haben CREA_DB geschachtelt aufgerufen. |
|
8092 |
Die Funktion "Erzeugen eines DB" ist momentan nicht durchführbar, weil
|
|
8094 |
Unzulässiger Wert in ATTRIB |
|
80A1 |
Fehler in der Nummer des DB:
|
|
80A2 |
Fehler in der Länge des DB:
|
|
80B1 |
Es ist keine DB-Nummer frei. |
|
80B2 |
Es steht nicht genügend freier Speicherplatz zur Verfügung. |
|
80B3 |
Es steht nicht genügend zusammenhängender Speicher zur Verfügung. (Komprimieren durchführen!) |
|
8xyy |
allgemeine Fehlerinformation Siehe auch: Fehlerauswertung mit dem Ausgangsparameter RET_VAL |