6

これは明らかだと思うかもしれませんが、ドキュメント、SAP フォーラム、Google などを検索しても、私は見事に失敗しました。次のコードを使用して、solaris ファイルシステムで ABAP にファイルを作成しています。

OPEN DATASET p_file FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.

結果のファイルは、事前定義された管理者ユーザーに従って所有およびグループ化されます。これは問題ありませんが、厄介な問題は、アクセス許可が 660/rw-rw---- に設定されていることです。つまり、結果を調べることができません。方法はありますか (おそらく、あいまいに定義された TYPE 追加を使用しますか?) 新しいファイルに結果のアクセス許可を指定できますか?

ありがとう!

4

3 に答える 3

4

SM69 に移動し、論理システム コマンドを作成します。ZCHMOD と呼ぶことができます。

そのコマンドを にマップしてからchmod、適切なパラメーターを指定して呼び出します (man chmodコマンド ラインではあなたの友達です)。

CALL FUNCTION 'SXPG_COMMAND_EXECUTE'
  EXPORTING
    commandname                   = 'ZCHMOD'
    additional_parameters         = l_par
    operatingsystem               = l_os
  TABLES
    exec_protocol                 = it_log
  EXCEPTIONS
    no_permission                 = 1
    command_not_found             = 2
    parameters_too_long           = 3
    security_risk                 = 4
    wrong_check_call_interface    = 5
    program_start_error           = 6
    program_termination_error     = 7
    x_error                       = 8
    parameter_expected            = 9
    too_many_parameters           = 10
    illegal_command               = 11
    wrong_asynchronous_parameters = 12
    cant_enq_tbtco_entry          = 13
    jobcount_generation_error     = 14
    OTHERS                        = 15.

明らかに、それは2段階のプロセスになりますが、うまくいきます。

于 2008-11-19T19:54:55.867 に答える
3

これは 4.6B で動作します:

        CONCATENATE 'chmod ugo=rw ' lc_filename
          INTO lc_chmod SEPARATED BY space.
        CALL 'SYSTEM' ID 'COMMAND' FIELD lc_chmod.

お役に立てれば。

乾杯、ヘイコ

于 2008-12-01T09:23:12.943 に答える
1

RZ10で、パラメーターinstall/umaskを追加します。デフォルト値は007で、次のように変更できます:000、002 ...したがって、作成されるファイルは-rw-rw-rw-、-rw-rw-r--..になります。

于 2008-12-24T15:14:06.103 に答える