11

SAP内のサーバー側ディレクトリのリストを取得する必要があります。ABAPでこれを達成するにはどうすればよいですか?呼び出すことができる組み込みのSAP関数はありますか?

理想的には、パスを入力として渡すことができ、内部テーブルのファイル名のリストを返す関数が必要です。

4

5 に答える 5

7

EPS2_GET_DIRECTORY_LISTINGと同じことを行いますが、最大200EPS_GET_DIRECTORY_LISTING文字のファイル名を返します!

于 2011-11-24T09:57:31.790 に答える
5

関数 RZL_READ_DIR_LOCAL を呼び出します。

FUNCTION RZL_READ_DIR_LOCAL.
*"----------------------------------------------------------------------
*"Lokale Schnittstelle:
*"       IMPORTING
*"             NAME LIKE SALFILE-LONGNAME
*"       TABLES
*"             FILE_TBL STRUCTURE SALFLDIR
*"       EXCEPTIONS
*"             ARGUMENT_ERROR
*"             NOT_FOUND
*"----------------------------------------------------------------------

パスを NAME インポート パラメータに配置し、返された後に FILE_TBL からディレクトリ リストを読み取ります。

RZL_READ_DIR_LOCAL は、通常のローカル パスと UNC パスを処理できます。

唯一の欠点は、各ファイル名の最初の 32 文字にしかアクセスできないことです。ただし、RZL_READ_DIR_LOCAL コードに基づいて新しい関数を簡単に作成し、C プログラム出力の読み取り方法を変更できます。これは、各ファイル名の最初の 187 文字が実際に使用可能であるためです。

于 2008-10-03T00:59:12.103 に答える
3

答えは汎用モジュール EPS_GET_DIRECTORY_LISTING を呼び出すことです。DIR_NAME -> ディレクトリの名前 FILE_MASK -> '*' を渡してすべてのファイルを取得します。

注: これは、非常に大きなファイル名 (80 文字以上) を処理しないため、名前が切り捨てられます。

于 2008-10-02T14:49:26.267 に答える
3

Chris Carrthers と tomdemuyt の回答を読んだ後、次のように言います。

1) ファイル名の単純なリストが必要な場合は、RZL_READ_DIR_LOCAL を使用します。

2) EPS_GET_DIRECTORY_LISTING はより強力です。サブディレクトリも一覧表示できます。

ありがとうございます!

宜しくお願いします ニキ・ガラノフ

于 2009-05-14T08:13:56.373 に答える
1

トランザクション AL11 ソース コードを見てください: RSWATCH0 フォームfill_file_list ファイルに関するすべての情報を取得できます。

お役に立てれば!

于 2008-10-09T14:48:05.457 に答える