SAP ユーザパラメータの管理について考察
SAPシステムのユーザパラメータの概要と運用についてちょっとした考察をしてみたいと思います。
ユーザパラメータとは、SAPシステムにおいて、画面を操作する際に初期値の提案するための機能です。(画面上に見える初期値のようにわかりやすいものでないケースもありますが、原則としては画面の初期値だと思ってください。)
1. ユーザパラメータの基本的な確認方法
ユーザパラメータを確認するには、以下のトランザクションコードから確認できます。
・SU01(ユーザID属性値の登録・変更・照会)
・SU01D (ユーザID 属性値の照会)
SU01はユーザID管理者にのみ利用させるるのが一般的です。この機能はユーザIDの登録・削除が可能であるのに加え、自分以外のユーザIDに関連する属性値を変更できてしまいます。一方、SU01DはID情報の照会のみが可能であるため、こちらは一般ユーザも利用することもあります(それでも、自分以外のユーザの情報が確認可能であるため、利用範囲は限定的とすべきではあると考えます)。
2.トランザクションコードSU3について(意外と穴場な機能)
SU3の機能についてご紹介します。意外と知らない人が多い穴場なトランザクションであると個人的には思っています。この画面では、自分自身のユーザパラメータ情報に限定して設定値を変更することができます。具体的には、以下のような設定値を変更できます。
・SAP画面に表示される日付形式
・金額や数量といった数値表記における、小数点の表示書式。(カンマ区切りやピリオド区切りなど)
・画面に初期設定される組織コード(会社コードやプラント等)
SU01/SU01Dの権限を与えてしまう=他のユーザの属性値も照会可能としてしまう結果となります。従って一般ユーザに自分自身のユーザパラメータを制御させる権限を付与する際には、SU3を付与する方が無難な運用であると言えます。
3. そもそも、パラメータをユーザ自身に更新させることの功罪
しかし、SU3の権限を与えるとしても以下のような問題が生じます。
・日付や小数点の書式を好きに変更できる
→ アドオン機能に問題が発生する可能性がある。ユーザパラメータの初期値に依存せずアドオン機能側でべきフォーマット制御されてプログラミングされていれば問題は発生しない。しかし見落とされることも多いです。ベンダーによる開発時に、コーディング規約に明記されて開発されていない限りは。
→ Excelとの連携ツールにおいても問題を発生させる可能性がある。いわゆる以下に挙げるようなツール類において。
●ユアソフト
●Winshuttle
●GUI Scripting
●Process Runner
これらのツールは、ユーザパラメータの日付・小数点の形式に依存して動作します。つまりユーザ毎のパラメータ値差異が、ツールの運用において実行環境差異となる可能性があります。
・ユーザパラメータの中には、エンドユーザにとっては何を意味するのかわからないパラメータもあります。こうしたパラメータを変更することで、ユーザ自身が気付かないままに実行環境差異(=障害の原因)を作ってしまうリスクがあります。
従って、SU3実行権限をユーザに付与するか否かは、権限デザイン時によく検討することをお勧めします。ユーザ個人別の差異としてどのレベルまで許容するのかを確認しておくべきです。
4. まとめ
ユーザパラメータの運用にあたっては、以下の点に注意することをお勧めします。
・アドオンプログラムの開発規約で日付、小数点形式を制御する。
・ユーザパラメータはユーザIDの申請時に管理者が設定する。運用で管理者が制御し、なるべくユーザ個人で触ることのないように運用することをお勧めします。
・日付や小数点形式は、環境で統一した設定値を採用するのが望ましい。グローバルプロジェクトにおいては揉めます! YYYYMMDD形式を望む日本人 vs MMDDYYYYを形式を望むアメリカ人。データソート観点から日本式が1番だと押し切ることをお勧めします(笑)。
個人的な原因として、ユーザパラメータが原因で障害が発生する事は意外と多いと感じてます。設定値と運用に気をつけて、皆さんどうぞ幸せなSAPライフを。
リアクションを追加