Code: Alles auswählen.
START-OF-SELECTION.
OPEN DATASET dateinam FOR INPUT IN TEXT MODE.
IF sy-subrc = 0.
* WRITE: / 'Datei', dateinam, 'erfolgreich geöffnet'.
ELSE.
WRITE: / 'Datei', dateinam, 'konnte nicht geöffnet werden - Fehlercode',sy-subrc.
skip.
ENDIF.
SKIP.
DO.
READ DATASET dateinam INTO SATZ.
IF sy-subrc = 0.
...... Coding
ELSE.
EXIT.
ENDIF.
ENDDO.
CLOSE DATASET dateinam.
IF sy-subrc = 0.
* skip.
* WRITE: / 'Datei', dateinam, 'erfolgreich gelöscht'.
ELSE.
WRITE: / 'Datei', dateinam, 'konnte nicht geschlossen werden - Fehlercode',sy-subrc.
skip.
ENDIF.
DELETE DATASET dateinam.
IF sy-subrc = 0.
skip.
WRITE: / 'Datei', dateinam, 'erfolgreich gelöscht'.
ELSE.
WRITE: / 'Datei', dateinam, 'konnte nicht gelöscht werden - Fehlercode',sy-subrc.
skip.
ENDIF.
END-OF-SELECTION.
Code: Alles auswählen.
SY-SUBRC = 4:
File does not exist or could not be deleted.
Possible reasons:
1) The file does not exist.
2) The file is a directory.
3) The R/3 System has no search authorization
for a component of the file name.
4) The R/3 System has no search authorization
for the directory which contains the file.
5) A component of the search path is not a
directory.
6) The file is a symbolic link which cannot be
resolved (endless loop ?).
7) The file is a program which is currently
running.
http://linuxwiki.de/DateiRechteBesonderheiten
Dateien erstellen/löschen
Um eine Datei erstellen oder löschen zu können, muss man Schreibberechtigung auf das Verzeichnis haben.
Hintergrund: Eine Datei ist nichts anderes als ein Verzeichniseintrag, und um in einem Verzeichnis etwas einzutragen (oder auszutragen), muss man hineinschreiben können.
(!) Wenn auf dem Verzeichnis das sticky-Bit gesetzt ist, muss man immer der Eigentümer der Datei sein, um sie zu löschen.