スクリプトエディタで作成されたサーバスクリプトプロジェクトで、ユーザカスタマイズのコードからシナリオを操作することができます。
シナリオからはDspemu変数を通してScenarioオブジェクトを呼び出すことができます。
Scenarioオブジェクトで使用可能なメソッドとプロパティの一覧を示します。
メソッド | 機能 |
---|---|
SetValue | 変数に値を設定 |
GetKeyMap | 出力属性の変数リストを取得 |
GetString | string型の変数の値を取得 |
GetList | list型の変数の値を取得 |
GetTable | table型の変数の値を取得 |
ForwardScreen | 指定のシナリオ画面へ移動 |
OutputLog | ログへ文字列を出力 |
Stop | シナリオを終了 |
プロパティ | 設定 | 参照 | 機能 |
---|---|---|---|
ErrorCode | - | ○ | 各メソッドの実行結果コードを保存 |
ErrorMessage | - | ○ | 実行結果コードに対応したメッセージを保存 |
変数に値を設定
シナリオ内の変数に値を設定します。
●呼び出し形式
SetValue(key, value)
●パラメータ
パラメータ | 説明 | 省略時の初期値 |
---|---|---|
key | 変数名 | 省略できません |
value | 入力値 | 省略できません |
●リターン値
関数の呼び出しに成功するとtrueを返します。エラーが発生した場合はfalseを返します。
エラーの詳細は、GetErrorメソッドまたはErrorCode、ErrorMessageプロパティにより取得できます。
●C#を用いて記述した例
Dspemu.Scenario.SetValue("変数1","USER1");
出力属性の変数リストを取得
シナリオ内の出力属性の変数リストを取得します。
●呼び出し形式
GetKeyMap()
●パラメータ
ありません
●リターン値
関数の呼び出しに成功すると変数名と値を保持したKevValuePairのリストを返します。
エラーの詳細は、GetErrorメソッドまたはErrorCode、ErrorMessageプロパティにより取得できます。
●C#を用いて記述した例
List<KeyValuePair<string, object>> keyMap = Dspemu.Scenario.GetKeyMap(); if (Dspemu.Scenario.ErrorCode != 0) { return; } foreach (KeyValuePair<string, object> kvPair in keyMap) { if (kvPair.Value is string) { // 文字列処理 } if (kvPair.Value is string[]) { // リスト処理 } if (kvPair.Value is string[][]) { // テーブル処理 } }
注意
V9.1以前のバージョンのスクリプトエディタで作成されたシナリオからGetKeyMapを呼び出しする場合は、シナリオの「グローバル領域の設定:」の「参照アセンブリ」指定項目に「System.Core.dll」を追加してください。
string型の変数の値を取得
シナリオ内のstring型の変数の値を取得します。
●呼び出し形式
GetString(key)
●パラメータ
パラメータ | 説明 | 省略時の初期値 |
---|---|---|
key | 値を取得する変数名 | 省略できません |
●リターン値
関数の呼び出しに成功するとstring型の値を返します。エラーが発生した場合はnullを返します。
エラーの詳細は、GetErrorメソッドまたはErrorCode、ErrorMessageプロパティにより取得できます。
●C#を用いて記述した例
string value = Dspemu.Scenario.GetString("変数1");
list型の変数の値を取得
シナリオ内のlist型の変数の値を取得します。
●呼び出し形式
GetList(key)
●パラメータ
パラメータ | 説明 | 省略時の初期値 |
---|---|---|
key | 値を取得する変数名 | 省略できません |
●リターン値
関数の呼び出しに成功するとstring型の配列の値を返します。エラーが発生した場合はnullを返します。
エラーの詳細は、GetErrorメソッドまたはErrorCode、ErrorMessageプロパティにより取得できます。
●C#を用いて記述した例
string[] value = Dspemu.Scenario.GetList("変数1");
table型の変数の値を取得
シナリオ内のtable型の変数の値を取得します。
●呼び出し形式
GetTable(key)
●パラメータ
パラメータ | 説明 | 省略時の初期値 |
---|---|---|
key | 値を取得する変数名 | 省略できません |
●リターン値
関数の呼び出しに成功するとstring型の2次元配列の値を返します。エラーが発生した場合はnullを返します。
エラーの詳細は、GetErrorメソッドまたはErrorCode、ErrorMessageプロパティにより取得できます。
●C#を用いて記述した例
string[][] value = Dspemu.Scenario.GetTable("変数1");
指定のシナリオ画面へ移動
現在の画面から、指定のシナリオ画面へ移動します。
●呼び出し形式
ForwardScreen(screenName)
●パラメータ
パラメータ | 説明 | 省略時の初期値 |
---|---|---|
screenName | 移動先の画面名 | 省略できません |
●リターン値
関数の呼び出しに成功するとtrueを返します。エラーが発生した場合はfalseを返します。
エラーの詳細は、GetErrorメソッドまたはErrorCode、ErrorMessageプロパティにより取得できます。
●C#を用いて記述した例
Dspemu.Scenario.ForwardScreen("画面3");
注意
ForwardScreenは非同期メソッドのため画面の移動開始直後に、正常復帰します。
画面の移動途中で異常が発生した場合は、シナリオの実行が停止され、要求中のWeb APIはエラー復帰します。
ログへ文字列を出力
ログファイルへ指定の文字列を出力します。
●呼び出し形式
OutputLog(text, addReturn)
●パラメータ
パラメータ | 説明 | 省略時の初期値 |
---|---|---|
text | 出力文字列 | 省略できません |
addReturn | true:文字列出力後に空行を挿入する false:文字列出力後に空行を挿入しない | false |
●リターン値
関数の呼び出しに成功するとtrueを返します。エラーが発生した場合はfalseを返します。
エラーの詳細は、GetErrorメソッドまたはErrorCode、ErrorMessageプロパティにより取得できます。
●C#を用いて記述した例
Dspemu.Scenario.OutputLog("画面3 一致", false);
シナリオを終了
シナリオの実行を停止しシナリオを終了します。
●呼び出し形式
Stop()
●パラメータ
ありません
●リターン値
関数の呼び出しに成功するとtrueを返します。エラーが発生した場合はfalseを返します。
エラーの詳細は、GetErrorメソッドまたはErrorCode、ErrorMessageプロパティにより取得できます。
●C#を用いて記述した例
Dspemu.Scenario.Stop();
シナリオを操作するメソッド呼び出し時にエラーが発生した場合に、GetErrorメソッドまたはErrorCodeプロパティで取得されるエラーコード、およびErrorMessageプロパティに設定されるメッセージの一覧を示します。
コード | メッセージ | 対処方法 |
0 | 要求が正常に処理されました。 | なし |
1204 | 指定の変数が見つかりません。 | 変数名が正しいか確認してください。 |
1209 | 画面の遷移に失敗しました。 | ログを確認してエラーが記録されている場合、シナリオの内容を確認してください。 |
1211 | 実行エンジンが初期化されていません。 | サーバで異常が発生してないかログを確認してください。 |