内部テーブルを自分の PC にダウンロードしようとしましたが、ダウンロードには変換出口を使用する必要があります。
例: テーブルT002
には、1 文字 (T0002-SPRAS) の言語キーが含まれています。
WRITE T0002-SPRAS.
変換ルーチンをISOLA
使用して 2 文字の言語キーを取得すると ( EがENに...)、この変換ルーチンをエクスポートに使用する必要があります。
私のテストレポート:
REPORT Y_MY_DOWNLOAD_TEST.
CONSTANTS: c_filename type string VALUE 'C:\temp\test.txt'.
data: it_table type table of t002.
start-of-selection.
SELECT * from t002 into table it_table.
* Start file download
CALL METHOD cl_gui_frontend_services=>gui_download
EXPORTING
filename = c_filename
filetype = 'ASC' "or DAT
WRITE_FIELD_SEPARATOR = 'X'
WRITE_LF = 'X'
* DAT_MODE = SPACE
codepage = '4110' "UNICODE
SHOW_TRANSFER_STATUS = 'X'
WRITE_LF_AFTER_LAST_LINE = 'X'
CHANGING
data_tab = it_table
EXCEPTIONS
OTHERS = 99.
write: 'end'.
結果は、変換出口を使用しないファイルです (英語はEを保持します)。
SAPのドキュメントには、次のパラメーターが記載されていますdat_mode
。
このフラグが設定されている場合 .... 変換出口は実行されません。
フラグを設定していないので、変換が完了していると思います。dat_mode
さまざまな組み合わせ (オン/オフ、filetype
ASC および DAT)を試しましたが、変換が見つかりませんでした。
備考:
- SAP リリース 7.01、サポート パッケージ SAPKB70107 を使用しています。ユニコードシステムです。
- T002 は一例です。私の実際のデータは、言語キーを含む他のデータです。
gui_download
(または別の標準メソッド/関数モジュール)を使用したソリューションを探しています。
次のような独自のエクスポート ファイルを作成したくありません。
data:
tmp type string,
targetline type string,
targettable type table of string.
loop at it_table into sourceline.
"This could be done dynamic with field symbols and ASSIGN COMPONENT
write sourceline-field1 to tmp.
CONCATENATE targetline ';' tmp into targetline.
"...
APPEND targetline to targettable.
endloop.
これは可能な解決策ですが、この場合、エクスポート ファイルのコンシューマーを適応させる方が簡単です。