#NFLNKについて

10:Re:#NFLNKについて
EXCHANGE 03/13 15:56
* グローバルという用語について私のほうで少し認識違いしていたようですので訂正しておきたいと思います。
説明は単純化していますので、細かい点は省かれています。

* まずカンパニIDですが、これはファイルやライブラリのグルーピングに使うものなので
  カンパニIDなし(=カンパニIDがスペース2桁、CID=^^)が、カンパニありの上位にあるわけではありません。
A−VXの論理ボリューム(MSDXXX)の直下には
例えば、カンパニコードAAのファイル群と、カンパニコードBBを持つファイル群と、それからカンパニコードなしのファイル群がある、といった具合です。

* それから、ファイル、ライブラリ、ライブラリのメンバはそれぞれ(英字1桁+数字1桁)からなる権限(セキュリティコード)を定義できます。(例:A3)

* A−VXにおけるオペレータとはWindowsで言うところの「ユーザ」、AS/400のユーザプロフィールです。
オペレータにはそれぞれ、カンパニID、セキュリティコード、を付与できます。

* 例えば、U01というオペレータがカンパニID=CC、セキュリティコード=S3である場合を考えると、 
U01は、 
カンパニーコードCCのグループに属するファイルと
カンパニーコードなしのグループに属するファイルが見えている状態になります(つまり、この範囲のファイルを探索できる)

また、U01が探索して見つけたファイル、メンバ(実行プログラムも含む)を使用できるかどうかはS3というセキュリティコードと照合して判定されることになります。ここでは照合の規則についてはこれ以上立ち入りません。

* U01は libpath=msd , libpath=msdcc の状態です。
  MSDはMSD000を含むすべての論理ボリュームです

* もし、U01に付与されたカンパニIDがなし(空白)の場は、カンパニIDなしのファイルのみが探索の対象となります。

* 以上の説明の中で出てきたカンパニIDなしのファイルというのがA−VXで言うところのグローバルファイル(こちらはファイル!!)と呼んでいる物かと思います。

* グローバルオペレータというのは、また別の概念で、
カンパニIDがなし(=空白)で、かつセキュリティコードがZ9(管理権限)をもつオペレータのことです。
このオペレータはユーティリティなどを使った場合、カンパニIDを指定することによって(その都度、絶対パスを指定することによって)あらゆるファイルにアクセス出来ます。

しかしグローバルオペレータにカンパニー配下のディレクトリにたいしてライブラリパスが追加されているわけではありませんので、
 (1)ユーティリティに於いては常にカンパニIDの入力が求められる(絶対パスの指定が必要)
 (2)RUN=^^^^(コマンドプロンプト?)においてはカンパニIDなしの領域のメンバしか起動できない。(注1)
 (3)カンパニIDありの領域の実行形式メンバ(=プログラム)をカンパニなしの領域へ移動してきても、プログラムの内部で使われているデータファイルの定義が相対パスなのでデータもカンパニなし領域へ移動し、プログラムでのファイル定義、またはデータベースでの表定義を変更(主にカンパニIDというパスを変更)しなければ「ファイルが見つからない」というエラーになるでしょう。


* 以上まとめですが、
グローバルファイル(カンパニIDなし)のファイルは、カンパニをまたいでのファイルの受渡などに使うケースが多いようです。
これは別々のカンパニIDをもつオペレータが起動したプログラムから共通でアクセスできる領域だからです。
個々のカンパニコードを持ってA−VXにログインしているユーザからは空白以外の別のカンパニ配下にある領域のファイルは見えませんし、絶対パスを指定してアクセスすることも出来ません。

* それからだいぶほいほいさんの質問から遠ざかってしまいましたが、#NFLNKは前述グローバルオペレータ(オペレータのほうです)でないと起動できないみたいなので、カンパニIDが空白でかつ、Z9(管理権限)をもつユーザを捜す(もしくはシステムを構築したベンダに問い合わせる)ことが必要でしょうね。

(追記) (注1)の部分は例外というか指定方法があって起動が可能かもしれません。自信がありません。だれか確実な方がおられましたらお教え下さい。

(さらに追記) カンパニと言う用語はちょっと不適切な用語かな、と思います。リコーのRICOMのOS「COMPOSS」で使っていたGID(グループID)のほうが適切な用語でしょうね。(最もこの考え方はNECからのパクリですけどね)

リコーの場合は、オペレータという考え方がなく、セキュリティの考え方はありませんでした。単にPASSの設定です。メニューの定義の中にGIDが記述できて、操作員がジョブメニューから、起動したいプログラムまたは子メニューを番号で選んだ時点で呼び出し側のメニューに定義されたGID(グループID)が付与される、つまりファイルの探索範囲が付与される=PASSが設定される、というやり方でした。 従って子メニュー、孫メニューと伝っていく毎にGIDを変更することも出来ました。
その点NECのは堅い(融通がきかない)なあ。。と思います。

なお、カンパニという用語はNECも後日不適切と思ったのでしょうね。いつの間にかログイン画面では「部門コード」という名称に変わっています。



1-

BluesBB ©Sting_Band