ValenceはURLパラメータを指定することで、ログイン画面をスキップして直接アプリケーションを起動することができます。
直接アプリケーションを起動する際に、任意のパラメータを渡したい場合には、URL引数 appParams を使用して、エンコードしたJSONを渡します。TipsではURLパラメータを使用して任意のパラメータを渡す手順についてご紹介します。
ValenceでのURLパラメータ
ログインのスキップ
ValenceではURL引数にパラメータを設定することで、ログイン認証をスキップして特定のアプリを起動することができます。
例えば、IBMiのIPアドレスが「192.168.1.2」でポート番号が7060の場合、URLパラメータにuserとpasswordを指定することでログインをスキップすることができます。
例) ユーザー:smpuser , パスワード smppw の場合
http://192.168.1.2:7060?user=smpuser&password=smppw
ログインの環境、アプリの指定

ログイン時に「環境」を指定したり、起動する「アプリケーション」を指定することも可能です。
環境はenvironment , アプリケーションはappのURLパラメータで指定ができます。
指定する値は、環境、アプリのID番号を指定して実行します。

例) 環境(Valence デモ環境 ID:1001) 、アプリ(Nitro iAdmin ID:114) を起動する場合
http://192.168.1.2:7060?user=smpuser&password=smppw&environment=1001&app=114
URLパラメータ一覧
URLパラメータ | 説明 |
---|---|
user | Valenceにログインする際のログインユーザー名 |
password | &userで設定したログインユーザー名のパスワード |
environment | セッションの環境を指定 環境ID(数値)を指定 |
customSid | 事前に生成されたSIDを設定 |
app | ValenceのアプリID(数値)を指定 |
portal | true / falseを指定 ポータル機能にアクセスする場合はtrue |
autoStart | true / falseを指定 自動起動アプリを起動する場合はtrue |
autoLogout | true / falseを指定 ポータル管理 > 設定 の「アンロード後にログアウト」の設定を上書きします。 falseを設定すると、アプリ終了後にログアウトが実行されずセッションが残ります。 |
forcePrompt | true / falseを指定 ログインセッションが存在する場合でも、ログイン画面での入力を必須にする場合はtrue |
lockTimeout | セッションタイムアウトになるまでの待機時間(分)を指定 |
appParams | アプリケーションに任意のパラメータを渡したい場合に指定 |
customSidの生成方法
ログイン時にURLパラメータへユーザー、パスワードを渡す代わりにValenceのIBMiプログラムVVLOGINを使用してValenceのSID(セッションID 64桁)を事前に生成して、URLパラメータに指定することでValenceにログインすることができます。
VVLOGINプログラムのパラメータは以下を設定します。
パラメータ | 説明 |
---|---|
Session ID (64A) | *CUSTOMを引数に設定 |
User ID (15p5) | Valenceの数値ユーザーID (VVUSERSファイルのVVUSRID)を設定 |
Environment ID (15p5) | セッションを作成する Valence環境ID (VVENVSファイルのVVENVID)を設定 |
Language ID (10A) | セッションに関連づける言語 JA を設定 |
appParamsを使用して任意のパラメータを渡す方法
URLパラメータのappParamsを使用することで、任意のパラメータをアプリケーションに直接渡すことも可能です。
例えば、ログインをスキップして起動するアプリケーションにURLPARM01=ILを渡したい場合、以下コードの実行結果をappParamsのパラメータとして設定することで、アプリケーションにURL引数を渡して起動することが可能です。
var appParams = {
URLPARM01 : 'IL'
},
paramsEncoded = encodeURI(JSON.stringify(appParams));
console.log('appParams value: ', paramsEncoded);
実行結果は、%7B%22URLPARM01%22:%22IL%22%7D になります。
URL引数には、以下例のように設定します。
http://192.168.1.2:7060?user=smpuser&password=smppw&app=114&appParams=%7B%22URLPARM01%22:%22IL%22%7D

アプリケーションのアプリ変数では、Pull from URL Parameterに「URLPARM01」を設定することで値 IL をアプリ変数PARM01に設定することが可能です。