Skip to main content

ObjectScript シェルのカスタマイズ

ここでは、ObjectScript シェルをカスタマイズする方法を説明します。

シェル内でのルーチンの定義

外部エディタを使用せずに、ルーチンを定義 (およびそれを実行) できます。以下のトピックを参照してください。

開始ネームスペースの変更

ObjectScript シェルを開始する際、そのユーザは、特定のネームスペースへのアクセス権を持ち、そのネームスペースでコードを実行することができます。このオプションは、ユーザ定義の [開始ネームスペース] オプションで制御されます。"ユーザ・アカウント" を参照してください。

プロンプトのカスタマイズ

既定のプロンプトをカスタマイズするには、管理ポータルを使用して、構成オプション TerminalPrompt を設定します。これを見つけるには、[システム管理][構成][追加設定][開始] を選択します。例えば、プロンプトには、使用するシステムの構成名を含めることができます。

^ZWELCOME ルーチン

ObjectScript シェルが起動すると、コードは、%SYS ネームスペースに ^ZWELCOME という名前のルーチンが存在するかどうかをチェックします。該当するルーチンが見つかると、シェルのログイン・シーケンスがある場合は、その直前にそのルーチンを呼び出します。このルーチンは、その名前が意図するように、カスタムな識別情報やようこそメッセージをユーザに表示する目的で使用されます。

以下はその簡単な例です。

^ZWELCOME() PUBLIC ;
    ; Example
    Write !
    
    Set ME = ##class(%SYS.ProcessQuery).%OpenId($JOB)
    
    Write "Now: ", $ZDATETIME($HOROLOG, 3, 1), !
    Write "Pid/JobNo: ", ME.Pid, "/", ME.JobNumber, !
    Write "Priority: ", ME.Priority, !
    
    Quit

^ZWELCOME ルーチン (%SYS ネームスペースに配置する必要あり) を作成するには、管理者特権と IRISSYS データベースへの書き込み権限が必要です。

Caution:

^ZWELCOME ルーチンは、空の $USERNAME および %ALL に設定した $ROLES を指定して、%SYS ネームスペースで実行します。使用の際は、^ZWELCOME が失敗した場合でも影響が出ないようにする必要があります。また、このルーチンで $ROLES 変数を変更しないでください。

FeedbackOpens in a new tab