RFC (Remote Function Call)

GuiXTはあるファンクションを呼び出す際にSAPシステムへのRFC接続(Remote Function Call)を使用します。システムにログオンするためRFC接続ではユーザー名とパスワードが必要になります。GuiXTはGuiXTプロファイルの中に格納されたログオンの値を使用します。GuiXTプロファイルのユーザーの初期値として”SAPCPIC”が含まれていますが、このユーザーを本番システムで使用するとロックがかかることがあるため、適切な権限が付与されたGuiXT用のRFCユーザーを作成していただくことをお勧めしています。検証目的では独自のユーザー名とパスワードをGuiXTプロファイルに入力することが可能です。

 

以下の表には、RFC接続を使用するGuiXTのアクション、呼び出されたファンクション名、ログオンが行われるクライアント、必要なユーザー権限を含んでいます。

 

プロファイルオプションでGuiXTがクライアント000にログオンしているのではなく常にカレントクライアントを使用しているということが確認できます。これは、クライアント000でRFCユーザーが作成されることはない、というアドバンテージを持っています。その一方、多くのクライアントがある場合、それぞれのクライアントでRFCユーザーを作成しなければなりません。

 

RFCユーザーを作成するには、SAPシステムでトランザクション SU01, SU02, SU03を使用します。下記の例は、Web リポジトリへのアクセスに必要なユーザー権限の作成方法です。

 

アクション Client
ファンクション
必要なRFC ユーザー権限
トランザクションバリアントのスクリプトを読む 000
RS_HDSYS_GET_GUIXT_SCRIPT
S_RFC: RFC_TYPE=FUGR, RFC_NAME=SHD0, ACTVT=16
Webリポジトリオブジェクトを読む
オブジェクト”SAPWR:…”
000
WWW_DISPATCH_REQUEST
S_RFC: RFC_TYPE=FUGR, RFC_NAME=SURL, ACTVT=16
mimeリポジトリオブジェクトを読む

オブジェクト”SAPMR:…”

000
SKWF_NMSPC_IO_FIND_BY_ADDRESS
SKWF_LOIO_ALL_PHIOS_GET
SKWF_PHIO_LOAD_CONTENT
S_RFC: RFC_TYPE=FUGR, RFC_NAME=SKWF_NAMESPACE, ACTVT=16
S_RFC
: RFC_TYPE=FUGR, RFC_NAME=SKWF_IO, ACTVT=16
S_RFC
: RFC_TYPE=FUGR, RFC_NAME=SKWF_CONTENT, ACTVT=16
データディクショナリを読む(変数のシンボリックオフセット、テキスト) 000
RPY_TABLE_READ
S_RFC: RFC_TYPE=FUGR, RFC_NAME=SIFD, ACTVT=16
S_DEVELOP
: DEVCLASS=*,OBJTYPE=TABL,OBJNAME=*,ACTVT=03
GuiXT Scriptの “Call” ステートメント current client
(function is specified in script)
S_RFC: RFC_TYPE=FUGR, RFC_NAME=xxxx, ACTVT=16

here xxxx is the function group of the called function

if Q[Role=…] and if Q[Profile=…] current client
BAPI_USER_GET_DETAIL
S_RFC: RFC_TYPE=FUGR, RFC_NAME=SU_USER, ACTVT=16

S_USER_GRP: CLASS=*,ACTVT=03
S_USER_SYS: CLASS=*,ACTVT=90 (if central user administration)

“SAPDB:…”
から画像を読み込む
000
RS_HDSYS_GET_GUIXT_IMAGE
S_RFC: RFC_TYPE=FUGR, RFC_NAME=RSIMG, ACTVT=16
“SAPIM:…”
(ビジネスドキュメントサーバー)
から画像を読み込む
000
RS_HDSYS_GET_BDS_IMAGE
S_RFC: RFC_TYPE=FUGR, RFC_NAME=RSIMG, ACTVT=16
S_BDS_DS: CLASSNAME=cccc, CLASSTYP=OT, ACTVT=30here cccc is the class name of the BDS image file
SAP Netweaver RFC
000
RFC_GET_FUNCTION_INTERFACE

DDIF_FIELDINFO_GET

RFC_METADATA_GET

S_RFC
RFC_TYPE=FUGR, RFC_NAME=RFC1, ACTVT=16

RFC_TYPE=FUGR, RFC_NAME=SDIFRUNTIME, ACTVT=16

RFC_TYPE=FUGR,RFC_NAME=RFC_METADATA, ACTVT=16

UI Log current client
/GUIXT/ADD_LOG_ENTRIES
S_RFC
RFC_TYPE=FUGR, RFC_NAME=/GUIXT/LOGG
ACTVT=16

 

SAPシステムでのトレースとテスト

 

  • トランザクションST01:RFCの間、ユーザー権限をチェックする
  • トランザクションST05:RFCs
  • ディレクトリ sapgui/rfcsdk/bin のプログラムsapinfo: RFC接続パラメーターのテスト

 

適切な権限のあるユーザーを作成する

図1:トランザクションSU01からスタート

図2:別のプロファイルを作成する

図3:上記テーブルに従って、Webリポジトリアクセス用の権限を付与する

図4:ユーザーの権限を表示する

前の記事

テーブル操作

次の記事

多言語のサポート