PR

【ABAP】DELETE DATASET命令を1分で解説

ABAP

CLOSE DATASET命令の使い方を1分で解説します。書き方は簡単で以下のようにコーディングするだけ。

DELETE DATASET (ファイル名).

構文や処理内容自体は非常に簡単なので、このページではDELETE DATASET命令のサンプルコードや使いどころを中心に解説します。

このページで学べる内容
  • DELETE DATASET命令の使い方
    • DELETE DATASET命令を用いたサンプルコード
    • DELETE DATASET命令の注意点・使いどころ

ABAPerであれば、知っておいて損はない基本知識の1つです。是非最後までご覧ください。

スポンサーリンク

DELETE DATASET命令

DELETE DATASET (ファイル名).

DELETE DATASET命令は、指定したファイルを削除する命令です。

サーバー上に存在するファイルのみが削除できます。

ユーザのローカルに存在するようなファイルを削除するような処理ではありませんので注意が必要です。

file = '/usr/sap/sample.txt'.

DELETE DATASET file.

ファイルは開いていても閉じていても削除可能

CLOSE DATASET命令READ DATASET命令の場合、ファイル操作を行う場合には必ずOPEN DATASET命令を用いてファイルを開いておく必要がありましたが、DELETE DATASET命令の場合はその必要がありません。

今開いているファイルでも、閉じられているファイルでも削除することが可能です。

file1 = '/usr/sap/sample1.txt'.
DELETE DATASET file1.

WRITE SY-SUBRC. ⇒ 0
file2 = '/usr/sap/sample2.txt'.

* ファイルオープン「sample2.txt」
OPEN DATASET file.

DELETE DATASET file1.
WRITE SY-SUBRC. ⇒ 0
OPEN DATASET命令とは?

OPEN DATASET命令は、サーバー上のファイルを開く(オープンする / 掴む)命令です。

ABAPでファイルにレコードを書き込んだり読み取りを行う場合は、必ず最初にファイルオープンが必要です。

OPEN DATASET (ファイル) FOR (アクセスタイプ) IN (格納タイプ).
OPEN DATASET命令の基本
  • 開くファイルを指定
  • アクセスタイプの指定(読み取りモード?上書きモード?)
  • 格納タイプの指定(バイナリで開く?テキストで開く?)
OPEN DATASET FILE_PATH
  FOR INPUT
  IN TEXT MODE .

詳しい構文ルールや使い方は下記のページで解説しております。

リターンコード(SY-SUBRC)

DELETE DATASET命令で返されるSY-SUBRCの値は0か4のどちらかです。

リターンコード
  • 0・・・ファイル削除に成功
  • 4・・・ファイル削除に失敗

例えば、指定したファイルが存在しない、ファイルを削除する権限が存在しない、などの場合にSY-SUBRCが4となります。

DELETE DATASET命令の難点の1つですが、仮にファイル削除に失敗したとしてもその理由を知るすべがないという点に注意しましょう。

SY-SUBRCが4で返ってきたとしても、ファイルがなかったから削除できなかったのか?それとも、それ以外の理由で削除できなかったのか?という点をDELETE DATASET命令単独では知る術がありません。

一部例外として、ファイルの処理権限がない場合のみ「OPEN_DATASET _NO_AUTHORITY」という例外がトリガーされます。

そのため、ファイルの削除等は外部コマンドの仕組みを活用する方が件名な場合がありますので、よく検討するようにしましょう。

外部コマンド

外部コマンドとは、その名の通りSAP上からOSコマンド(LinuxやAIXなど)やバッチやシェルを動かすときに利用する機能です。

サーバー上に配置されているファイル名称を取得したい!(Linuxのlsコマンド)場合や、ABAPからFTP連携できる仕組みを実現したい!といった場合に外部コマンドが活躍します。

SAP / ABAPを1から学習したい方は

初めてABAPを勉強するのは結構難しいですよね。

でもその悩みを抱えているのは一人じゃありません。全てのABAP使いが同じ道を進んできました。

ABAPをはじめとするプログラミングスキルを武器に、時間と場所に捉われない自由な生き方を目指してみませんか?

あなたの技術、もっと価値ある場所で活かしませんか?
SAPエンジニアのキャリア支援はこちらから↓

No.1 > 外資系・IT業界などハイクラスの転職なら【アクシスコンサルティング】blank
4人に1人のコンサルタントが選ぶパートナー!
ビッグ4やアクセンチュアへの転職を実現し年収1000万へ。

No.2 > IT・Web転職特化エージェント【レバテックキャリアblank
blank
サービス利用者数20万人突破。

平均年収アップ率77%であなたの転職成功を保証します。

No.3 > blankリクルートエージェント
blank
\転職支援実績NO.1/

応募が殺到しすぎるが故に・・・非公開にせざるを得ない魅力的な求人が多数!

読者料典 【完全無料】ABAP:学習カリキュラム ←こちらから!

このWebサイトは現役のエンジニアが以下3点を目的として運営しています。

  1. 勉強:一度理解した内容を忘れないように。
    → アウトプットは「最強のインプット」である! 
  2. 備忘:忘れたとしても後から見返せるように。
    → 未来の自分への「お手紙」を書いています。 
  3. 共有:〇〇ってこうだったんだ!の感動をシェアできるように。
    → あなたの知識は誰かにとっての「価値ある情報」です。 

副業ブログの始め方はこちらから

スポンサーリンク
ABAPSAP
シェアする
ビズドットオンラインをフォローする
タイトルとURLをコピーしました