Diese Subanweisungen führen Änderungen in Textelementen durch. Sie werden bis zur MODIFY-ELEMENT-Subanweisung END-MODIFY aus dem Anweisungsstrom gelesen.
Übersicht der MODIFY-ELEMENT-Subanweisungen
Diese Subanweisungen sind nur für Textelemente erlaubt.
MODIFY-ELEMENT-Subanweisung | Funktion |
ADD-RECORD | Einfügen von Sätzen |
END-MODIFY | Beenden der Änderungen |
REMOVE-RECORD | Ausfügen von Sätzen |
Hinweise
Als MODIFY-ELEMENT-Subanweisungen sind auch die SDF-Standardanweisungen (siehe "SDF-Standardanweisungen für LMS") zulässig.
Es werden nur Elementsätze der Länge ≤ 251 bearbeitet. Längere Sätze werden abgeschnitten. In diesem Fall gibt LMS eine Warnung aus.
Definition der Satzidentifikation für Textelemente
Die Satzidentifikation kann eine Satznummer oder eine Satzkennung sein.
Satznummer: | Die Satznummer ist die relative Position des Elementsatzes bezogen auf |
Satzkennung: | Lage und Länge der Satzkennung werden mit dem Operanden INPUT- |
Satznummer und Satzkennung können in den Subanweisungen gemischt angegeben werden. Sie müssen in den Subanweisungen und Datensätzen immer aufsteigend angegeben werden.
Wurde im Dialog ein Fehler erkannt, muss die Korrektur mit END-MODIFY beendet und die Korrektur neu gestartet werden. Nach einer ADD-RECORD-Subanweisung muss zusätzlich ein *END eingegeben werden.
ADD-RECORD
Einfügen von Sätzen
Die MODIFY-ELEMENT-Subanweisung ADD-RECORD fügt die der Anweisung folgenden Sätze an der angegebenen Position ein. Die einzufügenden Sätze müssen mit einem *END-Satz abgeschlossen werden.
ADD-RECORD |
RECORD-ID = *NONE / <integer 0..99999999> / <c-string 1..16 with-low> |
RECORD-ID = *NONE / <integer 0..99999999> / <c-string 1..16 with-low>Angabe des Datensatzes, der eingefügt werden soll.
RECORD-ID = *NONE
Ist der Operand INPUT-RECORD-ID der MODIFY-ELEMENT-Anweisung ungleich *NONE, werden die der ADD-RECORD-Subanweisung folgenden Datensätze gemäß ihrer Satzkennung in das zu modifizierende Element aufgenommen.
Gibt es einen Satz mit der angegebenen Satzkennung, wird er durch den Datensatz ersetzt. Gibt es keinen Satz mit der angegebenen Satzkennung, wird der Datensatz vor dem ersten Satz mit der höheren Satzkennung eingefügt. Datensätze mit leerer Satzkennung, oder wenn INPUT-RECORD-ID=*NONE gesetzt ist, werden an aktueller Position eingeordnet.
RECORD-ID = <integer 0..99999999> / <c-string 1..16 with-low>
Angabe der Elementposition, hinter der die der Anweisung folgenden Datensätze eingefügt werden sollen. Ist die angegebene Satznummer oder Satzkennung nicht vorhanden, werden die Datensätze vor dem ersten Satz eingefügt, dessen Satznummer/Satzkennung größer ist als die angegebene Satznummer/Satzkennung.
Anweisungs-Returncode
(SC2) | SC1 | Maincode | Bedeutung |
0 | CMD0001 | Ohne Fehler | |
1 | CMD0230 | Syntaxfehler |
END-MODIFY
Beenden der MODIFY-ELEMENT-Subanweisungen für Textelemente
END-MODIFY schließt die Folge der MODIFY-ELEMENT-Subanweisungen ab.
END-MODIFY |
Diese Subanweisung besitzt keine Operanden.
Anweisungs-Returncode
(SC2) | SC1 | Maincode | Bedeutung |
0 | CMD0001 | Ohne Fehler | |
2 | 0 | LMS0129 | Anweisung abgebrochen durch Benutzer |
1 | CMD0230 | Syntaxfehler | |
32 | LMS1002 | Interner Fehler | |
64 | LMS1003 | Fehler während Mengenverarbeitung (Wildcard) bei mindestens einem Element oder einer Datei | |
64 | LMS1004 | Sonstige Fehler | |
130 | LMS0041 | Systemadressraum erschöpft |
REMOVE-RECORD
Ausfügen von Sätzen
Die MODIFY-ELEMENT-Subanweisung REMOVE-RECORD löscht den angegebenen Satz oder Satzbereich im Element.
REMOVE-RECORD | ||||||||||||||||
|
RECORD-ID = <integer 0..99999999> / <c-string 1..16 with-low> / *RANGE(...) Satznummer oder Satzkennung des zu löschenden Satzes.
RECORD-ID = *RANGE(...)
Der zu löschende Satzbereich wird bestimmt.
FROM = <integer 0..99999999> / <c-string 1..16 with-low>
Beginn des Bereichs durch Angabe der ersten Satznummer oder Satzkennung.
TO = <integer 0..99999999> / <c-string 1..16 with-low>
Ende des Bereichs durch Angabe der letzten Satznummer oder Satzkennung.
Anweisungs-Returncode
(SC2) | SC1 | Maincode | Bedeutung |
0 | CMD0001 | Ohne Fehler | |
1 | CMD0230 | Syntaxfehler |